У меня следующая установка:
Я настроил высокую доступность между двумя балансировщиками нагрузки (HAProxy), так что если HAProxy1 выйдет из строя, плавающий IP-адрес будет передан другому балансировщику нагрузки HAProxy2, поэтому все клиенты получат ответ от HAProxy2, который на сервере выполняет LB среди двух веб-серверов. Это для устранения единой точки отказа в случае только одного HAProxy.
Всякий раз, когда я останавливаю биение в HAProxy1, плавающий IP переходит к HAProxy2. Но я хочу настроить так, чтобы каждый раз process haproxy
отключается, плавающий IP-адрес должен быть назначен HAProxy2. Может кто подскажет, как это реализовать?
Я много пробовал использовать команду crm ... Я добавил плавающий IP-адрес с помощью команды crm ... но не смог добавить с ее помощью haproxy ... Я много пробовал, но не мог этого сделать, так как нет ocf с именем haproxy .. Вы можете сказать мне точную команду
Вы можете скачать агент haproxy ocf с русский репо:
sudo wget -O /usr/lib/ocf/resource.d/heartbeat/haproxy http://github.com/russki/cluster-agents/raw/master/haproxy
затем измените разрешение файла:
sudo chmod 755 /usr/lib/ocf/resource.d/heartbeat/haproxy
и настройте свой ресурс следующим образом:
# crm configure show
node node1
node node2
primitive failover-ip ocf:heartbeat:IPaddr2 \
params ip="v.i.p.a" cidr_netmask="32" \
op monitor interval="5s" \
meta is-managed="true"
primitive haproxy ocf:heartbeat:haproxy \
params conffile="/etc/haproxy/haproxy.cfg" \
op monitor interval="30s" \
meta is-managed="true"
colocation haproxy-with-failover-ip inf: haproxy failover-ip
order haproxy-after-failover-ip inf: failover-ip haproxy
property $id="cib-bootstrap-options" \
dc-version="1.0.12-unknown" \
cluster-infrastructure="openais" \
no-quorum-policy="ignore" \
expected-quorum-votes="2" \
stonith-enabled="false" \
last-lrm-refresh="1342783084"
Похоже, вы правильно настроили сердцебиение, но не настроили кардиостимулятор.
Pacemaker - это часть решения, которая отслеживает такие вещи, как запущенные службы, и принимает решение, нужно ли вам переключиться на другой сервер или нет.
http://itand.me/41901523 есть руководство по настройке для haproxy. Вы найдете гораздо больше, если погуглите «кардиостимулятор haproxy». Не забудьте также прочитать всю документацию по кардиостимулятору. Там есть много важных лакомых кусочков, чтобы все работало гладко.
в OCF вы не получите HAProxy, вам нужно использовать класс LSB. Запустите команду ниже, чтобы увидеть haproxy в классе lsb
crm ra list lsb
затем
crm configure primitive haproxy lsb:haproxy
и все готово.
Вам необходимо настроить Pacemaker для мониторинга службы и сделать ее доступной в случае сбоя главного (HAProxy1). Вы можете настроить его с помощью команды crm и добавить плавающий IP-адрес, а также службу haproxy для кардиостимулятора.