Настройка режима мульти-мастер с автоматическим переключением (failover)

Настройка является опциональной и используется для организации подключения в отказоустойчивом режиме мульти-мастер с автоматическим переключением (failover).
  1. Скопируйте открытый ключ (по умолчанию master_sign.pub) с сервера управления (master) в каталог /etc/salt/pki/minion/master_sign.pub на агенте (minion).

    Для проверки подписи агент (minion) должен иметь доступ только к открытому ключу. Нельзя копировать файл master_sign.pem. Он должен храниться только на сервере управления (master).
  2. В конфигурационном файле /etc/salt/minion.d/master.conf задайте следующие настройки:

    master:
      - <адрес 1-ого сервера управления (master)>
      - <адрес 2-ого сервера управления (master)>
      - ...
      - <адрес N-ого сервера управления (master)>
    
    random_master: True
    master_type: failover
    master_alive_interval: 30
    verify_master_pubkey_sign: True
    master_failback: False
    master_failback_interval: 0
    ping_interval: 10
    request_channel_timeout: 60
    retry_dns: 0

    Где:

    • random_master — сценарий выбора сервера управления (master) из списка; значение True указывает, что будет выбираться случайный сервер из списка;

    • master_type — используемый способ подключения к серверам управления (master): режим failover;

    • master_alive_interval — таймаут проверки серверов на предмет доступности, используемый для переключения между серверами;

    • verify_master_pubkey_sign — параметр, который отвечает за проверку подписи публичного ключа сервера управления (master); значение True указывает, что система будет проверять подлинность публичного ключа перед установлением соединения с сервером управления (master);

    • master_failback — сценарий повторного подключения к серверам при их недоступности; значение True позволяет выполнить попытку подключения к серверам, которые были ранее недоступны;

    • master_failback_interval — таймаут проверки серверов при их повторной недоступности;

    • ping_interval — интервал в минутах, через который агент будет отправлять ping-запрос на сервер управления (master). Рекомендуемое значение — 10 минут;

    • request_channel_timeout — таймаут для запросов, отправляемых через канал запросов (request channel) от агента (minions) к серверу управления (master). Значение по умолчанию: 30 секунд. Увеличение значения до 60 секунд позволяет избежать прерывания соединения из-за превышения времени ожидания при получении больших объемов данных;

    • retry_dns — время ожидания в секундах перед повторной попыткой агента (minion) получить IP-адрес сервера управления (master) при проблемах с сетью или из-за недоступности DNS-сервера. Значение 0 указывает, что агент не будет подключаться повторно и перейдет к следующему серверу управления (master) в списке, заданном в параметре master.