6、puppet资源类型详解-包管理

puppet包管理

package


例子:安装vim/vsftpd/mysql三个软件包,卸载bind

package {

["vim","vsftpd","mysql"]:

ensure => installed,

"bind":

    ensure => absent,

}



参数详解

allowcdrom 可以允许使用cdrom作为软件源,可以设置为false/true

description 描述

ensure installed,present   安装软件

absent             卸载软件

pureged             干净的移除该软件

latest             安装最新版本


namevar 软件名字

source 指定rpm包地址,必须是本地地址或者URL


provider 指定软件管理者

apt 通过apt-get安装

                                支持特性:installable, purgeable, uninstallable, upgradeable, versionable

yum 通过yum安装

                                支持特性:installable, purgeable, uninstallable, upgradeable, versionable

rpm 通过rpm方式安装

等等


实例:


指定使用rpm方式安装

package {"install_nginx":

provider  => rpm,

ensure    => present,

source    => "/usr/local/src/$nginx_name",

}



针对不同平台:

class ssh::params { 

case $operatingsystem {

Solaris:{

$package_name = 'openssh'

}

/(Ubuntu|Debian)/: {

$package_name = 'openssh-server'

}

}

}



数组方式安装多个包

package {"multi_install":

name => ["vsftpd","ssh","httpd"],

ensure => present,

}



默认值方式安装多个包

Package {

ensure => present,

}

package {["vsftpd","ssh","httpd"]:}



评论

© 91ziyuan | Powered by LOFTER