1.客户端Agent没有权限解析/etc/puppet/manifests/site.pp
# 现象
[root@glusterfs01 ~]# puppet agent --test
Info: Retrieving pluginfacts
Info: Retrieving plugin
Error: Could not retrieve catalog from remote server: Error 400 on SERVER: Could not parse for environment production: Permission denied - /etc/puppet/manifests/site.pp on node glusterfs01.example.com
Warning: Not using cache on failed catalog
Error: Could not retrieve catalog; skipping run
#解决方案 /etc/puppet/manifests/site.pp的权限为755
chmod 755 /etc/puppet/manifests/site.pp
2.Agent端不能发现定义在modules下的模块,原因模块目录的权限问题。
# 现象
Could not retrieve catalog from remote server: Error 400 on SERVER: Could not find class '[module_name]' for '[agent_host]' on node '[agent_host]'
puppet-agent[30143]: Not using cache on failed catalog
puppet-agent[30143]: Could not retrieve catalog; skipping run
# 解决方案。修改模块的权限为755
cd /etc/puppet/modules
chmod -R ./{module}
3.Agent不能提取自定义模块下files目录下的配置文件
# 原模块配置文件资源source属性配置
source => "puppet:///test/test.txt"
[test] 为自定义模块名称
[test.txt]为自定义模块'test'下files路径下的文件
# 现象
Error: /Stage[main]/Test/File[/tmp/test.txt]: Could not evaluate: Could not retrieve file metadata for puppet:///test/test.txt: Error 400 on SERVER: Not authorized to call find on /file_metadata/test/test.txt with {:links=>"manage", :source_permissions=>"use"}
#原因 文件资源属性source => 值配置有误,路径不对
#解决方案:修改文件资源的source属性
source => "puppet:///modules/test/test.txt"
参考文档:http://docs.puppetlabs.com/guides/file_serving.html#