Назад | Перейти на главную страницу

Как я могу исправить отказ марионетки запускаться и запрос «master.pp»?

Я использую самую последнюю версию puppet и шаг за шагом следовали руководству Apress "Pro Puppet". Я установил puppet

sudo aptitude install ruby libshadow-ruby1.8
sudo aptitude install puppet puppetmaster facter

Я редактировал /etc/puppet/puppet.conf включить имя сертификата

[master]
certname=puppet.mydomain.com

Я отредактировал / etc / hosts и добавил следующую строку

127.0.0.1 puppet.mydomain.com puppet

Я установил имя хоста сервера

echo "puppet.mydomain.com" > /etc/hostname
hostname -F /etc/hostname

А потом я пытаюсь бежать puppet из командной строки.

puppet master --verbose --no-daemonize

И puppet дает мне эту ошибку:

Could not parse for environment production:
Could not find file /master.pp

Я запускаю все команды с sudo и последняя строка сообщения об ошибке всегда говорит, что он не может найти master.pp и путь до моего текущего рабочего каталога.

Что я делаю не так?

Я также должен упомянуть, что у меня нет DNS-записи для puppet.mydomain.com - Я видел онлайн-документацию, в которой упоминалось, что это может быть проблемой, однако я был почти уверен, что hosts файл позволил бы мне обойти это.

Кажется, что вы используете старую версию Puppet, которая не понимает главную подкоманду и вместо этого пытается запустить ее как манифест. Где-то около 0.25 был введен новый синтаксис команд.

Еще раз проверьте, какая у вас версия. Текущая версия должна быть 2.7. Я часто обнаруживал, что дистрибутивы содержат более старые версии. Например, Ubuntu 10.04LTS устанавливает 0.25.4, что довольно давно.

Чтобы узнать версию пакета марионеток, запустите:

sudo apt-cache policy puppet

Мартейн является право. Ваша версия марионетки определенно старше 2.6. Вы используете старую версию Ubuntu или Debian? Squeeze уже включает 2.6, а Ubuntu 11 включает 2.7. Если вы используете Lenny, вы можете найти более новую версию Puppet на бэкпорте. И, если ничего из этого не помогает, я думаю, что у puppetlabs есть репозиторий для новых версий марионеток, хотя это может вызвать некоторые проблемы с версией ruby.