У меня ucarp работает на двух моих серверах ubuntu. Apache, Postfix, Dovecot работают в режиме высокой доступности, поэтому, если один хост выходит из строя, другой автоматически берет на себя управление.
Моя первая проблема в том, что я не знаю, как я могу вручную сделать подчиненное устройство мастером?
Во-вторых, что делает ucarp-advskew? Проблема в том, что я не знаю, где я мог бы прочитать что-нибудь об ucarp. Я только прочитал руководство о том, как его настроить, но я не знаю, как им управлять, каковы дополнительные настройки.
РЕДАКТИРОВАТЬ: некоторые опечатки
Моя первая проблема в том, что я не знаю, как я могу вручную сделать подчиненное устройство мастером?
Вы можете указать одной из машин понизить уровень с МАСТЕРА до ПОДЧИНЕННОГО, выполнив:
killall -USR2 ucarp
на МАСТЕРЕ.
Я использую keepalived и мало что знаю об ucarp, но я всегда просто отключал главные интерфейсы. Это заставляет раба вступить во владение. Если я хочу сделать подчиненное устройство главным, я перенастраиваю его и перезапускаю службу. Затем я перенастраиваю старый ведущий на ведомый, перезапускаю службу и включаю интерфейсы.
Следующий цитируемый текст может помочь объяснить, что делает параметр advskew.
"advskew: этот необязательный параметр указывает, насколько нужно отклонить базу данных advskew при отправке объявлений 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, так как он объявляет чаще. Если по какой-то причине ведомое устройство 1 не работает, ведомое устройство 2 становится ведущим.
Я не использовал ucarp в Linux, но в мире BSD это так же просто, как отключение интерфейса carp на первичном сервере, а резервное копирование продвигает интерфейс carp на уровень master.
например:
/opt/... /scripts/network/ucarp off