我需要编写一个清单,install-apache.pp
因为它将安装
apache2
软件包,如果它是基于 Debian 的系统或httpd
如果是基于 RedHat 的系统,则打包
下面是代码;这在 CentOS 中有效,但在 Ubuntu 中无效。
case $facts['os']['name'] {
'Debian': {
package { 'apache2':
ensure => installed,
}
service { 'apache2':
ensure => running,
}
}
'RedHat': {
package { 'httpd' :
ensure => installed,
}
service { 'httpd':
ensure => running,
}
}
}
所以我做了一些如下的改变,但不知道为什么它不起作用。
case $operatingsystem {
'Debian': {
package { 'apache2':
ensure => installed,
} ->
service { 'apache2':
ensure => running,
enable => true,
}
}
'RedHat': {
package { 'httpd' :
ensure => installed,
} ->
service { 'httpd':
ensure => running,
enable => true,
}
}
}
用于执行的命令:
puppet 应用 install-apache.pp --logdest /root/output.log