Ucarp: продвинуть раба к хозяину

У меня есть ucarp, работающий на моих двух серверах Ubuntu. Apache, Postfix, Dovecot работают в режиме высокой доступности, поэтому, если один хост отключается, другой автоматически вступает во владение.

Моя первая проблема в том, что я не знаю, как я могу вручную продвинуть раб к мастеру?

Второе - что делает ucarp-advskew? Проблема в том, что я не знаю, где я мог бы прочитать что-то еще об Ucarp. Я только прочитал руководство о том, как его настроить, но я не знаю, как им управлять, каковы дополнительные настройки.

РЕДАКТИРОВАТЬ: некоторые опечатки

3 ответа

Решение

Я использую keepalived и мало знаю об ucarp, но я всегда просто отключал мастер-интерфейсы. Это заставляет раба захватить власть. Если я хочу сделать slave ведущим, я перенастраиваю его и перезапускаю сервис. Затем я перенастраиваю старый мастер как подчиненный, перезапускаю сервис и включаю интерфейсы.

Следующий цитируемый текст может помочь объяснить, что делает параметр advskew.

"advskew: Этот необязательный параметр указывает, насколько необходимо исказить базу данных advbase при отправке рекламных объявлений CARP. Управляя advskew, можно выбрать главный хост CARP. Чем больше число, тем менее предпочтительным будет хост при выборе мастера. По умолчанию 0. Допустимые значения: от 0 до 254. " - http://www.openbsd.org/faq/pf/carp.html

"... чтобы рассчитать время, пока узел CARP не сочтет своим хозяином, рассчитайте 3 * (advbase + (advskew / 255))" - http://kerneltrap.org/node/5607

Поэтому, если у вас есть три хоста, один ведущий и два ведомых, а подчиненные настраиваются следующим образом:

slave1 - 3 * 1 + (10/255) = 3,117 секунды

slave2 - 3 * 1 + (20 / 255) = 3,235 секунды

Тогда slave1 всегда будет хозяином перед slave2, так как он будет чаще рекламировать. Если по какой-либо причине slave1 не работает, slave2 станет ведущим.

Моя первая проблема в том, что я не знаю, как я могу вручную продвинуть раб к мастеру?

Вы можете указать одной из машин, чтобы она превратилась из MASTER в SLAVE, выполнив:

 killall -USR2 ucarp

на МАСТЕР.

  • Вы можете перейти по пути к /scripts/network/ucarp на главном / активном сервере и отключить его.
  • это должно позволить рабу взять на себя основную роль.

например:

 /opt/... /scripts/network/ucarp off   

Я не использовал ucarp в Linux, но в BSD это так же просто, как отключить интерфейс carp на Primary, и Backup будет продвигать интерфейс carp к мастеру.

Другие вопросы по тегам