Puppet apply — как сделать простой модуль для поднятия веб-сервера?

Привет

Помогите понять, как сконфигурировать Puppet (или как правильно оформить модуль) для удобной работы в отрыве от его клиент-серверной ориентации.

Точнее, мне просто иногда нужно подымать сервера с одинаковой конфигурацией (PHP, Nginx, MySQL и т.д.) и чтобы не делать механическую работу много раз - задумал написать манифест и применять его с "puppet apply"

Начал разбираться на Puppet 2* - всё вроде работало - прописал в puppet.conf modulepath - путь к папке в которой разрабатывал модуль, создал папочную структуру модуля, несколько классов, из файла init.pp удалось сделать include другого класса и тот отрабатывал.

Затем я обратил внимание что версия то старая, и есть 3.6 - поставил её и всё поломалось :)

- modulepath в puppet.conf стал deprecated - пришлось убрать его оттуда, вместо этого предлагается использовать Directory Environments. Как - понять не могу. Всё что мне нужно - чтобы модуль работал в директории отличной от /etc/puppet/modules/
- Include классов перестал работать - тот же код что работал на версии 2 теперь выдаёт "Error: Could not find class kp::testfile for precise32.mynet.lan on node precise32.mynet.lan"

Пример - Модуль с двумя манифестами: init.pp и используемый в нём testfile.pp (просто создаёт файл с контентом из шаблона во папке /tmp)

Вызываю из папки manifests, где лежит init.pp
puppet apply init.pp

В Puppet 3.6 Вываливается с ошибкой
"Error: Could not find class kp::testfile for precise32.mynet.lan on node precise32.mynet.lan"

Подскажите, как это можно победить?
  • Вопрос задан
  • 3275 просмотров
Пригласить эксперта
Ответы на вопрос 1
@baskoy
Ну так понятно же -Could not find class kp::testfile.
По идее puppet apply testfile.pp --debug должно выполнится без проблем. По крайней мере на свежепроставленном паппете я в логе дебага ошибок не увидел.

UPD www.devco.net/archives/2009/08/19/tips_and_tricks_...
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы