Настройка обработки событий через Salt-Reactor

SaltStack включает механизм Reactor, позволяющий автоматически выполнять последовательность действий при возникновении определенного события. Чтобы настроить эти действия, cоздайте конфигурационный файл /etc/salt/master.d/reactor.conf.

Пример файла:

reactor:
  - 'salt/auth':
    - salt://_reactors/remove-denied-minions-keys.sls
  - 'salt/minion/*/start':
    - salt://_reactors/sync-modules.sls

Где:

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

    • salt/auth — подписка на событие, которое генерируется, когда сервер управления (master) получает запрос на аутентификацию от агента (minion);

      • salt://_reactors/remove-denied-minions-keys.sls — путь к файлу состояния (SLS-файлу), который будет выполнен в ответ на событие salt/auth;

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

      • salt://_reactors/sync-modules.sls — путь к файлу состояния (.sls), отвечающего за синхронизацию модулей (state, grain, execution) между агентом (minion) и сервером управления (master), который будет выполнен при этом событии.