fdgre 发表于 2015-8-19 09:32:45

puppet进阶指南——package资源详解

package资源
package资源可以借助本地包管理系统帮助我们安装软件,也可以通过参数指定软件包来安装。



1、package资源常用属性


package {'资源标题':
   allowcdrom
   description
   ensure
   provider
   source
}

◆ allowcdrom:通知apt允许使用cdrom作为软件源,可以设置false或者true。
◆ description:描述软件包。
◆ ensure:设置软件包的安装状态,可以设定的值有present|installed|absent|latest|purged|"version" 。
=> present|installed, 检查文件是否存在,不存在则新建之
=> absent, 无其他软件依赖,可删除,否则会报错。
=> latest, 检查文件是否为最新版本,否则升级为最新版本
=> purged, 删除该包包括所有依赖的包,有风险慎用
=> "2.7.21-1", 指定某一个版本处于安装状态
◆ provider:不同的平台有不同软件包的提供着。
◆ source:指定软件包的安装源。

案例1
通过package资源安装httpd的rpm软件包
编辑/etc/puppet/manifests/package.pp,新增如下内容
package {'httpd':
ensure => installed,
provider => 'yum',
}

如果是rpm包,也可以这样设定
package {'httpd':
ensure => installed,
source => '/tmp/httpd-2.2.15-45.el6.centos.i686.rpm',
provider => 'rpm',
}

# puppet apply package.pp

notice: /Stage//Package/ensure: created
notice: Finished catalog run in 1.91 seconds

案例2
上面讲述的是安装一个软件包,如果我们安装的软件包较多可以这样设定
package { ["httpd",
          "puppet",
          "nginx",
          "openssl"]:
    ensure => installed,
}

页: [1]
查看完整版本: puppet进阶指南——package资源详解