今天我已经将 Puppet 客户端和 Puppet Master 更新到了 Wheezy。
由于某种原因,Puppet 客户端已更新至版本 3.1,但主服务器仍为 2.7。因此,我直接从 Puppetlabs 为主服务器安装了最新的稳定版本,现在两者都是 3.1。
root@efikamx-5fb019 ~ # puppet --version
3.1.1
botmaster /etc/puppet # puppet --version
3.1.1
然而,我注意到它开始产生错误并随后失败:
root@efikamx-5fb019 ~ # puppet agent --test
Info: Retrieving plugin
Info: Caching catalog for efikamx-5fb019.botnet.corp.yeri.be
Info: Applying configuration version '1367772083'
Notice: /Stage[essential]/Repository/Apt::Key[[email protected]]/Exec[apt-key present [email protected]]/returns: executed successfully
Error: /Stage[essential]/Repository/File[/etc/apt/sources.list.d/flatturtle.list]: Could not evaluate: Error 400 on SERVER: Not authorized to call find on /file_metadata/files/etc/apt/sources.list.d/flatturtle.list Could not retrieve file metadata for puppet://puppet.corp.yeri.be/files/etc/apt/sources.list.d/flatturtle.list: Error 400 on SERVER: Not authorized to call find on /file_metadata/files/etc/apt/sources.list.d/flatturtle.list
这是我的 auth.conf:http://pastebin.com/GGCyck95
这是我的fileserver.conf:http://pastebin.com/XeeTX2a5
这是来自 site.pp 的片段:
file { '/etc/apt/sources.list.d/flatturtle.list' :
owner => 'root',
group => 'root',
mode => '0644',
source => 'puppet://puppet.corp.yeri.be/files/etc/apt/sources.list.d/flatturtle.list',
notify => Exec['update'],
}
我缺少什么来授予文件访问权限?
答案1
解决方法是修改 fileserver.conf,并设置:
allow *
代替
allow fqdn
allow_ip ip
像这样:
[files]
path /srv/puppet
allow *
# allow *.botnet.corp.yeri.be
# allow_ip 172.27.0.0/18
[plugins]
allow *
# allow *.botnet.corp.yeri.be
# allow_ip 172.27.0.0/18