天天看点

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包,也可以这样设定

  source => '/tmp/httpd-2.2.15-45.el6.centos.i686.rpm',

  provider => 'rpm',

# puppet apply package.pp 

notice: /Stage[main]//Package[httpd]/ensure: created

notice: Finished catalog run in 1.91 seconds

案例2

上面讲述的是安装一个软件包,如果我们安装的软件包较多可以这样设定

package { ["httpd",

          "puppet",

          "nginx",

          "openssl"]:

    ensure => installed,

     本文转自 wzlinux 51CTO博客,原文链接:http://blog.51cto.com/wzlinux/1685642,如需转载请自行联系原作者

继续阅读