1

我是 Puppet 的新手。我正在尝试安装一个 shell 脚本并使用 Puppet 执行它。运行后的 shell 脚本会创建另一个 conf 文件并放置在特定位置 /usr/local/conf/app.conf 中。如何编写木偶代码来执行此脚本,然后获取输出文件并将其 scp 到另一台服务器(在我的情况下是网络服务器)。有人可以帮忙吗。

4

1 回答 1

1

假设您已经开发了一个名为webconfig的模块,并且您的 puppet 配置目录是 /etc/puppet。

您需要将您的 shell 脚本存储为 /etc/puppet/modules/webconfig/files/script.sh

您的 puppet 代码部分如下所示:

file { '/path/to/script.sh':
  ensure   => present,
  source   => 'puppet:///modules/webconfig/script.sh',
  mode     => '0644',
  owner    => 'root',
  group    => 'root',
}
->
exec { 'Generate the config':
  command  => '/path/to/script.sh',
  cwd      => '/path/to',
  user     => 'root',
}
->
exec { 'SCP the config':
  command  => 'scp /usr/local/conf/app.conf user@remote-server:',
  cwd      => '/path/to',
  user     => 'root',
}
于 2016-02-16T15:27:41.190 回答