LINUX.ORG.RU

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

Corosync+Pacemaker

Всем привет!

Настраиваю связку Corosync+Pacemaker по ману

http://ninjix.blogspot.de/2011/01/highly-available-zabbix-monitoring.html


Ноды запускаются и работают:


Online: [ dus-zabbixdb-1 dus-zabbixdb-2 ]

Resource Group: zabbix_group
fs_mysql (ocf::heartbeat:Filesystem): Started dus-zabbixdb-1
ip_mysql (ocf::heartbeat:IPaddr2): Started dus-zabbixdb-1
mysqld (lsb:mysql): Started dus-zabbixdb-1
Master/Slave Set: ms_drbd_mysql [drbd_mysql]
Masters: [ dus-zabbixdb-1 ]
Slaves: [ dus-zabbixdb-2 ]
apache (lsb:apache2): Started dus-zabbixdb-2
zabbix (lsb:zabbix-server): Started dus-zabbixdb-2



Меня смущает то, что mysql запускается на первой ноде, а apache и zabbix запускаются на второй ноде. Если остановить вторую ноду, то все берет на себя первая нода, но как только включаешь вторую, apache и zabbix убегают туда. Почему так происходит. Да всех сервисов выделен один адрес 192.168.5.250, таким образом только mysql бывает доступен. Если же выключить вторую ноду, тогда подхватывается apache и zabbix.
Подскажите пожалуйста как поправить.

За ранее спасибо!

 , , , ,

kbu ()

Распределённая фс для бекапов?

Бонжорно

Нужна помощь коллективного разума.

Какая существует относительно простая фс для примерного такого кейса:

  • распределённость
  • снапшоты/за неимением их - высокоуровневая фича вроде rsync
  • не труп, наличие пакетов/ебилдов
  • вменяемый failover

На кластер нужно будет лить множество мелких бекапов файлов и дампы бд, также по мере необходимости забирать их.

 , ,

invokercd ()

Недостатки бездисковой загрузки

Бездисковая загрузка имеет ряд преимуществ. Например, если уже имеются какие-то хранилища, то хотелось бы сэкономить на hdd и raid в новых серверах, они (диски) довольно дорого стоят. Под хранилищами подразумевается всё то, что можно выбрать в установщике CentOS. Или загрузку с помощью PXE нескольких узлов на мастер.

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

Варианты использования - распределенные вычисления и анализ данных. Т.е. использование вычислительных узлов (различных по своему железу) для увеличения вычислительных возможностей.

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

Вопрос только теоретический, хотелось бы понять, почему IRL делают так, а не иначе.

 , , , ,

early_britney_fun ()

Создание отказоустойчивой системы на 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 ()