Сетевой протокол Puppet

Сетевой протокол Puppet

Я хочу знать, как masterпроцесс puppet и agentпроцесс взаимодействуют друг с другом с помощью сети. Я имею в виду, что именно происходит, когда masterпроцесс посылает команды из манифеста в agentпроцесс и аналогично из agentв masterс кодами ошибок? Они создают собственные пакеты с командами, такими как

`exec {"command"}`

или, может быть, создать пакеты с полным манифестом, а затем отправить их?

решение1

Процесс, грубо говоря:

  • Агент запускается, запрашивает свой каталог у главного устройства через вызов HTTPS API (аутентификация выполняется с помощью клиентского сертификата).
  • Мастер компилирует каталог для этого узла из локальных манифестов и модулей на мастере и использует данные, отправленные узлом. Мастер отправляет каталог узлу в ответ на запрос.
  • Агент применяет каталог

Каталог содержит все ресурсы конфигурации, которые может применить узел, поэтому для их предоставления используется именно этот механизм.

Связанный контент