LINUX.ORG.RU

2
Всего сообщений: 38

Создание отказоустойчивой системы на cluster'e

Всем добрый вечер!

Столкнулся со следующей проблемой: дали задачу построить кластерную отказоустойчивую систему, на базе кластера. Есть 2 компа:

  • node1 (192.168.0.101)
  • node2 (192.168.0.102)

Нужно как-то сделать виртуальный ip-адресс, например 192.168.0.100, на который будет настроено приложение. В мастер-компом будет node1, вспомогательным - node2. В случае когда node1 будет не доступен, то автоматически должна выполнится маршрутизация на node2.

Уважаемые форумчане и огромные специалисты, прошу помощи в этом деле, т.к. не совсем понимаю откуда может взяться этот виртуальный ip=192.168.0.100. Все рекомендуют использовать corosync и Pacemaker, но как это сделать не понимаю

Дали виртуалку посмотреть как пример, но куда смотреть тоже не понятно. Помогите кто может и чем может..огромное всем спасибо

 , , ,

userman ()

crmsh в gentoo

А кто-нибудь успешно юзает сабж? Были ли грабли с тем, что кодят crmsh с оглядкой на suse?

 ,

macumazan ()

Автостартовать кластер на ноде после её перезагрузки

Есть какой то цивилизованный способ провернуть это, или надо как то вручную мутить сабж?

 ,

pon4ik ()

HA сервер «для бедных»

Возникла необходимость настроить HA сервер «для бедных» на основе drbd. Cтоит ли в качестве блочного устройства для drbd использовать soft raid? Смущает ненулевая вероятность гашения одной из нод через нештатное выключение питания.

 ,

EM ()

High Availability setup for Zabbix

Приветствую, уважаемое комюнити!

Прошу помощи разобраться в чем проблема с построением отказоустойчивого Zabbix'a.
Делаю вот по этому мануалу:


https://www.zabbix.org/wiki/Docs/howto/high_availability#High_Availability_se...


crm configure show


node $id=«1» dus-zabbix-1.nmedia.local
node $id=«2» dus-zabbix-2.nmedia.local
primitive failover-ip ocf:heartbeat:IPaddr \
params ip=«192.168.5.235» \
op monitor interval=«2s»
primitive failover-zabbix_server lsb:zabbix-server \
op monitor interval=«5s»
group zabbix_server-cluster failover-ip failover-zabbix_server
property $id=«cib-bootstrap-options» \
dc-version=«1.1.10-42f2063» \
cluster-infrastructure=«corosync» \
stonith-enabled=«false» \
default-resource-stickiness=«100» \
expected-quorum-votes=«2»


Дошел до пункта Setting up actual failover, делаю настройку, но при попытке запуска теста:

crm_mon --one-shot


Last updated: Thu Apr 23 16:19:35 2015
Last change: Thu Apr 23 16:11:13 2015 via cibadmin on dus-zabbix-2.nmedia.local
Stack: corosync
Current DC: dus-zabbix-2.nmedia.local (2) - partition with quorum
Version: 1.1.10-42f2063
2 Nodes configured
2 Resources configured


Online: [ dus-zabbix-1.nmedia.local dus-zabbix-2.nmedia.local ]

Resource Group: zabbix_server-cluster
failover-ip (ocf::heartbeat:IPaddr): Started dus-zabbix-2.nmedia.local
failover-zabbix_server (lsb:zabbix-server): Started dus-zabbix-2.nmedia.local FAILED

Failed actions:
failover-ip_start_0 (node=dus-zabbix-1.nmedia.local, call=13, rc=1, status=complete, last-rc-change=Thu Apr 23 16:16:22 2015
, queued=48ms, exec=0ms
): unknown error
failover-zabbix_server_monitor_5000 (node=dus-zabbix-2.nmedia.local, call=118, rc=7, status=complete, last-rc-change=Thu Apr 23 16:19:34 2015
, queued=2ms, exec=1ms
): not running




конфиг corosync:


# Please read the openais.conf.5 manual page
totem {
version: 2
# How long before declaring a token lost (ms)
token: 3000
# How many token retransmits before forming a new configuration
token_retransmits_before_loss_const: 10
# How long to wait for join messages in the membership protocol (ms)
join: 60
# How long to wait for consensus to be achieved before starting a new round of membership configuration (ms)
consensus: 3600
# Turn off the virtual synchrony filter
vsftype: none
# Number of messages that may be sent by one processor on receipt of the token
max_messages: 20
# Limit generated nodeids to 31-bits (positive signed integers)
clear_node_high_bit: yes
# Disable encryption
secauth: off
# How many threads to use for encryption/decryption
threads: 0
# Optionally assign a fixed node id (integer)
nodeid: 1
# This specifies the mode of redundant ring, which may be none, active, or passive.
rrp_mode: none
interface {
# The following values need to be set based on your environment
ringnumber: 0
bindnetaddr: 192.168.5.0
mcastaddr: 239.255.1.1
mcastport: 5405
}
}
amf {
mode: disabled
}


Прошу подсказать, что я делаю не так?

Спасибо!

 , ,

kbu ()

Вот это кластер!

Может и баян, не знаю, но все же оставлю это здесь.

 ,

w1nner ()

pacemaker сделать ресурс стартующий на всех нодах сразу

Можно ли как то заставить, сиё поделие запустить ресурс на всех нодах, кроме той которая держит виртуальный IP?

 , ,

pon4ik ()

Zimbra cluster

Добрый день. Настраивал ли кто то zimbra почту как кластер? Если да то поделитесь рецептом. Все что предлагали на офф. сайте мне показалось слегка костыльным.

Требуется зеркальный сервер который содержал бы полную копию почты и способен был принимать и отправлять письма в случае отказа основного сервера.

 ,

snaf ()

MariaDB Galera cluster - боль

В общем, жило у меня 3 ноды на методе rsync. Но у него есть недостаток - он лочит таблицы, если что. Решил его заменить на xtrabackup. И оно вообще нормально не может синхронизировать текущий стейт. Только если с нуля. ПОтому что синхронизированные базы потом не могут взлететь. Т.е. в случае split-brain идёт синхронизация, при этом только с одной ноды на другую один процесс максимум. И перекачивает заново всё и после этого не может запуститься. Это я что-то не так делаю или это программа такая и только смириться остаётся?

 ,

turtle_bazon ()

Хитрая конфигурация Pacemaker/Corosync

А, по сути, только Corosync.

У меня есть два сервера, которые подключены к свичам некоторыми портами, а другими - напрямую друг к другу.

Эти два соединения образуют кольца Corosync.

Ещё я хочу третий сервер снаружи всего этого дела прикрутить чтобы создавал кворум в кластере (да, я в курсе что можно и два, но так надёжнее).

Так вот, этот сервер может общаться с другими двумя только по кольцу через коммутаторы, второе кольцо (кроссовер между серверами) ему, ессесно, недоступно.

Так вот, когда я запускаю Corosync на третьем сервере (в его конфиге только 1 кольцо), то второе кольцо на других двух серверах падает, т.к. Corosync не может найти IP первого сервера в этом кольце (ибо его нет) и передать ему пакеты.

Внимание, вопрос - как можно обойти эту проблему? Чтобы сервера 1 и 2 общались друг с другом по двум кольцам, а с сервером 3 только по одному?

 , , ,

blind_oracle ()

Настройка кластера с высокой доступностью и максимальной производительностью

Здравстуйте. Необходимо организовать кластер, отвечающий требованию высокой доступности, который позволял бы использовать все доступные в данный момент времени ресурсы для вычислений. Нашел статьи по организации кластера с «максимальной» производительностью, где задача распараллеливается между узлами. Куча статей про heartbeat и реализацию отказоустойчивого кластера. А есть ли возможность совместить эти два плюса подобных систем в одном кластере?
То есть предположим я запускаю задачу на кластере, а она распараллеливается между доступными в данный момент хостами и продолжает выполняться вплоть до тех пор, пока доступен хотя бы один узел?

 , ,

Gi ()

ElasticSearch кластер в 3 ДЦ

Добрый день! Появилась задача организовать кластер из 3 инстансов ES в разных ДЦ. Схема примерно вот такая:

  _______________________
 |                       |
DC1--------DC2----------DC3
 |          |            | 
ES         ES           ES------Kibana
 |          |            |
LSsrv     LSsrv         LSserv
 |          |            |
Redis     Redis         Redis
 |          |            |
LSagents   LSagents     LSagents

ES - ElasticSearch
LSsrv -Logstash server
LSagents -Logstash agents

Сейчас думаю поднять VPN сервер на одном из DC или прокинуть тунелли между ними. Еще читал, что при такой конфигурации из-за лагов в сети могут быть проблемы.

Но мне кажется что так не правильно,а лучше пока не придумал.

Как лучше будет организвоать такой кластер? Что еще продумать?

 , , ,

Funny_sailor ()

Pacemaker - перезапуск ресурсов в группе после fail

Имеем следующий глюк с Pacemaker. Есть master/slave set. Есть группа ресурсов которая привязана к мастеру. В группе несколько ресурсов. Если я убиваю ресурс (kill -9) процесс, то перезапускается он и все кто идет за ним в описании. Хотелось бы чтобы перезапускался только он.

 , ,

vromanov ()

ext4 и кластер

Всем привет. Есть volume на SAN'е, форматированный в ext4 и подключенный по fc к двум серверам в rw. Сервера в кластере, на них крутится софтина для бекапа. Нормальных доков/requirements для софтины нет. Вопрос: закоруптится ли фс в таком случае (при одновременной записи/чтении ext4 с нескольких серверов.)

 , , ,

istzp77 ()

Дабл-initiator в tgtd

Ставлю Oracle Clusterware.
Хосты в KVM(машина тестовая), tgtd на другой машине.
При запуске root.sh-скртита на втором хосте:

CRS-4402: The CSS daemon was started in exclusive mode but found an active CSS daemon on node rac1, number 1, and is terminating
An active cluster was found during exclusive startup, restarting to join the cluster
Start of resource "ora.asm" failed
CRS-2672: Attempting to start 'ora.asm' on 'rac2'
CRS-5017: The resource action "ora.asm start" encountered the following error: 
ORA-48189: OS command to create directory failed
Linux-x86_64 Error: 13: Permission denied
Additional information: 2
. For details refer to "(:CLSN00107:)" in "/u01/app/grid/11.2.0/log/rac2/agent/ohasd/oraagent_grid/oraagent_grid.log".
CRS-2674: Start of 'ora.asm' on 'rac2' failed
CRS-2679: Attempting to clean 'ora.asm' on 'rac2'
CRS-2681: Clean of 'ora.asm' on 'rac2' succeeded
CRS-4000: Command Start failed, or completed with errors.
Failed to start Oracle Grid Infrastructure stack
Failed to start ASM at /u01/app/grid/11.2.0/crs/install/crsconfig_lib.pm line 1339.
/u01/app/grid/11.2.0/perl/bin/perl -I/u01/app/grid/11.2.0/perl/lib -I/u01/app/grid/11.2.0/crs/install /u01/app/grid/11.2.0/crs/install/rootcrs.pl execution failed
ASM-диск подключен через iscsi, в логах иницатора:
 connection1:0: detected conn error (1020)
каждые несколько секунд. Конфиг таргета:
<target iqn.2008-09.com.example:S500Gb>
    backing-store /dev/vg_iscsi_test/lv_S500Gb
    write-cache off
    allow-in-use yes
    MaxConnections 2
    incominguser init1 pass
    initiator-address 192.168.1.101
    incominguser init2 ssap
    initiator-address 192.168.1.102
</target>

Вопрос: если проблема в ASM вызвана iSCSI, как прописать что бы инициаторы друг другу не мешали?
Если нет - приветствуются соображения на тему.

Спасибо за внимание.

 , , , ,

Yustas ()

Проблемы c clvmd при разворачивании RHEV Cluster

Настраиваем HA-LVM Failover (CLVM). Успешно проходим все стадии:


1. vgchange -cy RHEVMVolGroup

2. lvmconf --enable-cluster

3. dracut...

4. reboot

Однако служба clvmd не стартует:

5. service clvmd restart

Вот что сыпется в /var/log/messages:

clvmd could not connect to cluster manager
Can't open cluster manager socket: No such file or directory

Команда strace -f clvmd показывает, что служба не может подцепить какие-то сокеты:

connect(.../var/run/cman_client...) (No such file or directory)
corosync.ipc (Connection refused)

Наконец, pvs выдаёт следующее:

connect () failed on local socket:
internal cluster lockage initialization failed

Никто с подобным не сталкивался? Спасибо

 , ,

vitalyisaev2 ()

предлагаю новый стандарт отказоустойчивости

короче добавить в днс новую категорию записи, не А, а А-PHAIL, например, и другие соответственно. и чтоб клиент обращался по этой записи в случае, если основная недоступна. профит очевиден. куда можно предложить свою идею и у кого брать деньги за патент?

 , , ,

xsektorx ()

Распределенные около-реалтайм системы

Добрый день, ЛОР. Заинтересовала тема распределения нагрузки в хайлоад проектах, а мое гугл-фу подводит меня (единственное, что нашел - слайды лицокниги).

Например, я хочу сделать аналог IRC с блекджеком, который сможет держать много миллионов пользователей. Какие проблемы я вижу:

  • хранение и синхронизация присутствия (presence) пользователей
  • хранение и синхронизация логов чата (чтобы при входе на канал клиент получал последние N сообщений)

Собственно, как умные дядьки это делают и что почитать о проектировании таких систем?

 , ,

nisdevi ()

Нарушение коммуникации в SLURM

Наш кластер из ~60 узлов внезапно стал ронять задачи и тупить, потом сказал, что не видит демоны SLURN на вычислительных узлах. При копании в логах выяснилось, что там присутствует такая ошибка:

[2013-07-31T13:05:03] error: Node n0308 appears to have a different slurm.conf than the slurmctld.  This could cause issues with communication and functionality.  Please review both files and make sure they are the same.  If this is expected ignore, and set DebugFlags=NO_CONF_HASH in your slurm.conf.               

Перезапустил инит-скрипт slurm на всех узлах - вроде помогло. Странно, что это было-то? Ошибка светится в логах с самого 2011 года, когда нам этот кластер собрали, но проблема такая возникла только сейчас. Странно..

 , ,

pianolender ()

Целостность данных при централизованной авторизации и общем /home

Есть вычислительный кластер, для доступа на который используются несколько фронт-машин. Пользовательские домашние каталоги хранятся в сетевой шаре, которая монтируется на все машины в /home. Авторизация централизованная - данные о пользователях хранятся во внешней базе данных (AD, mysql, неважно).

Не возникнет ли в такой ситуации конфликтов между действиями одного и того же пользователя с разных фронт-машин? Как с этим можно бороться?

Логично было бы не пускать одного пользователя более, чем с одной фронт-машины, одновременно, но эти фронт-машины могут нести разные функции: одна выполняет вычисления вида «много итераций на разностной сетке», а вторая служит для построения в визуальных средах тех самых сеток, то есть вполне возможна ситуация, когда один пользователь будет сидеть и там, и там, и выполнять разные задачи.

У кого-нибудь возникали такие проблемы?

 , ,

pianolender ()