Puppet 傀儡执行官/工作组
我正试图将一个文件从远程位置下载到puppet中的一个目录中 .pp文件Puppet 傀儡执行官/工作组,puppet,wget,Puppet,Wget,我正试图将一个文件从远程位置下载到puppet中的一个目录中 .pp文件 class test::test { exec { 'wget http://10.0.0.1/test/test.txt': cwd => '/opt/check', path => ['/usr/bin', '/usr/sbin',], } } 我还尝试了puppet中的wget模块: class test::test { include ::wget
class test::test {
exec { 'wget http://10.0.0.1/test/test.txt':
cwd => '/opt/check',
path => ['/usr/bin', '/usr/sbin',],
}
}
我还尝试了puppet中的wget模块:
class test::test {
include ::wget
wget::fetch { 'http://10.0.0.1/test/test.txt':
destination => '/tmp/',
timeout => 0,
verbose => false,
}
}
我没有下载文件,是我做错了什么还是有更好的方法?
请让我知道 在您的节点上运行
哪个wget
,以确保包含正确的路径,在my centos机器上,它是/bin/wget。
我经常(这可能是一个坏习惯)在Com中包含完整路径,因此我会将/bin/wgethttp://10.0.0.1/test/test.txt
你试过在机器上手动运行那个命令吗?
查看此链接
“creates”停止运行exec如果文件存在,您希望这样做,或者每次puppet运行时(默认每30分钟一次),它都会再次运行该命令
我刚刚在我的机器上运行了一个测试,我创建了一个文件test.pp
,并将其放入其中
exec { 'get-google':
cwd => '/tmp',
command => '/bin/wget http://www.google.com',
path => ['/usr/bin', '/usr/sbin',],
creates => '/tmp/index.html',
}
然后运行puppet apply test.pp
,它成功了,如果您想测试小代码块,这是一种方便的方法
另外,是否存在
/opt/check
目录 我没有看到代码中有任何明显的错误。您是否已将classtest::test
分配给您尝试配置的节点?如果是这样,那么明智的做法是通过在启用--debug
日志记录的情况下运行代理来收集更多信息,以获取有关失败原因的更多信息。手动运行同一命令(以及代理作为同一用户运行,可能是root
)也可能有助于检查命令本身是否存在问题。文件资源还可以使用http
URI检索远程文件,作为一个受良好支持的本机资源可能会更容易。
exec { 'get-google':
cwd => '/tmp',
command => '/bin/wget http://www.google.com',
path => ['/usr/bin', '/usr/sbin',],
creates => '/tmp/index.html',
}