Linux
如何解決 puppet 拒絕啟動並要求“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,它不理解 master 子命令,而是嘗試將其作為清單執行。在 0.25 左右的某個地方引入了新的命令語法。
仔細檢查您正在執行的版本。目前版本應該是 2.7。我經常發現發行版會打包舊版本。例如,Ubuntu 10.04LTS 安裝了 0.25.4,這是相當古老的。
要找出 puppet 包的版本,請執行:
sudo apt-cache policy puppet