Пошаговая инструкция по установке keepalived в Ubuntu. При установке keepalived в Ubuntu есть свои особенности, которые могут сильно повлиять на надежность системы.
keepalived - позволяет обеспечить отказоустойчивость в инфраструктуре, за счет создания дублирующих серверов, работающих за одним виртуальным IP адресом.
Официальный веб сайт: https://keepalived.readthedocs.io/en/latest/
Подготовка установке
Добавление дополнительного репозитория:
1 | add-apt-repository ppa:hnakamur/keepalived |
Keepalived есть в стандартных репозиториях, но не последней версии, при использовании которой, в какой-то момент вся сеть keepalived, может прекратить работать, без объяснения причин. Дополнительный репозиторий содержит более свежую версию, которая работает более стабильно.
После чего необходимо обновить список доступных пакетов.
1 | apt-get update |
Настройка Linux
Для корректной работы keepalived необходимо в файл /etc/sysctl.conf добавить следующие опции
1 2 | echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf echo "net.ipv4.ip_nonlocal_bind = 1" >> /etc/sysctl.conf |
Позволяющие системе обрабатывать пакеты с виртуального IP адреса.
Применить настройки:
1 | sysctl -p |
Создаем в системе пользователя и группу для запуска скриптов
1 2 | groupadd -r keepalived_script useradd -r -s /sbin/nologin -g keepalived_script -M keepalived_script |
Настройка межсетевого экрана для работы keepalived в Ubuntu
Для обеспечения взаимодействия, необходимо разрешить vrrp трафик на мультикаст адреса.
1 2 3 | iptables -I INPUT -i $EXTIF -d 224.0.0.0/8 -p vrrp -j ACCEPT iptables -I OUTPUT -o $EXTIF -d 224.0.0.0/8 -p vrrp -j ACCEPT service iptables save |
Где $EXTIF - Подсеть для взаимодействия, примеру EXTIP='10.0.4.0/24'.
Запись в форме переменной позволит автоматизировать настройки серверов с помощью скрипта.
Установка keepalived в Ubuntu
Устанавливаем keepalived как обычный APT пакет:
1 | apt-get install keepalived |
далее необходимо активировать и запустить службу
1 2 | systemctl enable keepalived systemctl start keepalived |