Кукольный манифест не работает. Сообщение об ошибке необъяснимо и бесполезно
Я пытаюсь скомпилировать (в каталог) манифест для запуска на конкретном узле агента-марионетки. Я использую Puppet 3.4 на серверах Puppet Master и Agent. Я использую Ubuntu на AWS. Вот команда, которую я запускаю на кукловоде: puppet apply june1.pp
Вот вывод:
Error: Could not find default node or by name with 'puppet.us-west-1.compute.internal, puppet.us-west-1.compute, puppet.us-west-1, puppet' on node puppet.us-west-1.compute.internal
Error: Could not find default node or by name with 'puppet.us-west-1.compute.internal, puppet.us-west-1.compute, puppet.us-west-1, puppet' on node puppet.us-west-1.compute.internal
Вывод неожиданный. Полное доменное имя в выводе выше для главного сервера марионеток. Манифест june1.pp настроен исключительно для сервера агентов Puppet (за исключением исходного файла). Источник файла, который будет скопирован в манифест, относится к главному серверу марионеток. Я попытался извлечь ссылку на сам главный сервер puppet (что могло бы сделать манифест неисправным) и посмотреть, какое сообщение выдаст команда apply puppet. Конечно же, я получаю такой же вывод. Я не понимаю, почему манифест создает выходные данные, связанные с главным сервером puppet, когда в манифесте не упоминается сам главный сервер puppet.
Что я должен сделать, чтобы скомпилировать манифест в каталог для агента puppet, чтобы в конечном итоге получить требуемые изменения конфигурации состояния в моем манифесте с именем june1.pp?
1 ответ
Если вы работаете puppet apply filename.pp
в вашем мастере, вы должны объявить хозяина кукол как узел или объявить default node
,
как вы можете видеть в своих выходных данных, проблема очень ясна, для объявления узла по умолчанию вам нужно что-то вроде следующего.
/etc/puppet/manifests/nodes/default.pp
node default {
include sshcon, motdclass, virtualhost
}
вам не нужно что-то включать.