加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

Puppet可以运行一个shell脚本(它从主服务器下载)而不保存吗?

发布时间:2020-12-15 18:38:26 所属栏目:安全 来源:网络整理
导读:我在Puppet模块中有一个步骤,大致执行以下操作来设置一些应用程序键: file { '/root/setup_app_keys.sh': ensure = file,owner = 'root',group = 'root',mode = '0700',source = 'puppet:///modules/app_module/setup_app_keys.sh',}exec { 'setup_app_keys
我在Puppet模块中有一个步骤,大致执行以下操作来设置一些应用程序键:
file { '/root/setup_app_keys.sh':
  ensure => file,owner  => 'root',group  => 'root',mode   => '0700',source => 'puppet:///modules/app_module/setup_app_keys.sh',}

exec { 'setup_app_keys':
  unless  => '/etc/pki/tls/private/app-foo.key',command => '/root/setup_app_keys.sh',user    => 'root',group   => 'root',}

setup_app_keys.sh脚本有点太长,无法制作成(可读)单行,因此我将其保存到机器的文件系统并从那里执行.它在/ etc / pki中创建它的文件……它运行得很好.

令人讨厌的是,shell脚本基本上是一次性使用的东西.它不应该在机器的生命周期中再次运行,但它必须保留在Puppet存储它的文件系统上.如果它被删除,Puppet会再次帮助重新创建它.

我认为必须有一种方法可以使用exec专门重写它,这将允许我在需要时从puppetmaster下载脚本,执行一次,然后丢弃脚本(或者不首先存储它).但我尝试的一切都是以下形式:

command => 'puppet:///modules/app_module/setup_app_keys.sh',

要么

command => 'curl http://__[various puppetmaster URLs]__ | sh',

这两种方法似乎都不起作用.我问的太多了,还是这种方法有缺陷?

您可以在执行之前尝试将文件存入 transitional state.最终状态将是
ensure => absent

这是在撰写本文时削减年龄材料.你的旅费可能会改变.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读