我最近将我的ubuntu 12.04
VM实例(在OpenStack中)更新为ubuntu 14.04
,其中单独安装了puppet master和puppet代理。
在进行操作系统升级时,我的puppet master和agent都从2.7.11
升级到3.4.3
。
我运行了一个示例测试puppet目录,只需在agent&#t; / tmp目录中创建一个文件就可以了。
但是当我尝试将文件从我的主节点移动到代理节点时,我收到以下错误[在木偶升级之前工作正常]。 我在/ etc / puppet / modules /里面有几个模块,它们与puppet 2.7.11一起工作正常。
root@appserver-mgr:~# puppet agent --test
Info: Retrieving plugin
Info: Loading facts in /var/lib/puppet/lib/facter/java_home.rb
Info: Caching catalog for appserver-mgr.openstacklocal
Info: Applying configuration version '1416908414'
Notice: /Stage[main]/Appserver::Config_mgr/Exec[Stop_process_and_remove_CARBON_HOME]/returns: executed successfully
Notice: /Stage[main]/Appserver::Config_mgr/Exec[remove_java_dirs]/returns: executed successfully
Error: /Stage[main]/Appserver::Config_mgr/File[/opt/wso2as-5.2.1.zip]: Could not evaluate: Error 400 on SERVER: Not authorized to call find on /file_metadata/appserver/wso2as-5.2.1.zip with {:links=>"manage"} Could not retrieve file metadata for puppet:///appserver/wso2as-5.2.1.zip: Error 400 on SERVER: Not authorized to call find on /file_metadata/appserver/wso2as-5.2.1.zip with {:links=>"manage"}
Error: /Stage[main]/Appserver::Config_mgr/File[/opt/jdk1.6.0_24.tar.gz]: Could not evaluate: Error 400 on SERVER: Not authorized to call find on /file_metadata/packs/jdk1.6.0_24.tar.gz with {:links=>"manage"} Could not retrieve file metadata for puppet:///packs/jdk1.6.0_24.tar.gz: Error 400 on SERVER: Not authorized to call find on /file_metadata/packs/jdk1.6.0_24.tar.gz with {:links=>"manage"}`
puppet类文件内容:
file { '/opt/wso2as-5.2.1.zip':
replace => "no",
ensure => present,
source => "puppet:///appserver/wso2as-5.2.1.zip",
}
file { '/opt/jdk1.6.0_24.tar.gz':
replace => "no",
ensure => present,
source => "puppet:///packs/jdk1.6.0_24.tar.gz",
}
我的档案位置也没有改变。
如果有人能提供从这里开始的指示,我很高兴。
答案 0 :(得分:1)
找到答案。
file { '/opt/wso2as-5.2.1.zip':
replace => "no",
ensure => present,
source => "puppet:///modules/appserver/wso2as-5.2.1.zip",
}
file { '/opt/jdk1.6.0_24.tar.gz':
replace => "no",
ensure => present,
source => "puppet:///modules/packs/jdk1.6.0_24.tar.gz",
}
在木偶升级之后,我不得不通过在///
之后添加/ modules /部分来重命名文件路径早期版本在没有模块/部分的情况下工作,尽管自Puppet v 0.25以来它已被弃用。详情请见http://docs.puppetlabs.com/puppet/3/reference/release_notes.html#break-puppet-urls-pointing-to-module-files-must-contain-modules
然后新版本的木偶目录运行成功。