puppet之package管理

简介:

本文系统Centos6.0

主机信息:

master:master.lansgg.com 192.168.182.143

client1 :client1.lansgg.com 192.168.182.142

client2: client2.lansgg.com 192.168.182.149

相关安装请看 http://lansgg.blog.51cto.com/5675165/1299604

package 资源属性:

1
2
3
4
5
6
7
8
package  { "package name" :
         ensure => present/absent/latest/{version}/purged,
         present 只有存在即可,不存在的话,会安装当前yum源的version
         absent 无依赖可删除
         latest 会升级到最新版本
         version 指定安装具体那个版本
         purged 删除该包包括有依赖性的包
     }

下面我们来操作:

案例1、将client1的上安装vim-common

master:

1
2
3
4
5
6
[root@master manifests]# vim node.pp
node  'client1.lansgg.com'  {
package  { "vim-common" :
         ensure => present,
         }
}

Client1:

214040409.jpg

案例2、将client1的vim-enhanced包删除

master:

1
2
3
4
5
6
[root@master manifests]# vim node.pp
node  'client1.lansgg.com'  {
package  { "vim-enhanced" :
         ensure => absent,
         }
}

client1:

214906710.jpg

案例3、将client1上的httpd进行更新

master:

1
2
3
4
5
6
[root@master manifests]# vim node.pp
node  'client1.lansgg.com'  {
package  { "httpd" :
         ensure => latest,
         }
}

client1:

220121861.jpg

可以看到更新到了yum源上的最新版本;

案例4、使用purged强制卸载client2上的vim-common(他依赖vim-enhanced)

master:

1
2
3
4
5
6
[root@master manifests]# vim node.pp
node  'client2.lansgg.com'  {
package  { "vim-common" :
         ensure => purged,
         }
}

client2:

220455723.jpg

大家可以看到效果了;

案例5、安装指定版本的package(本例主要是教大家怎么写version)

1
2
3
4
5
6
[root@master manifests]# vim node.pp
node  'client1.lansgg.com'  {
package  { "httpd" :
         ensure =>  '2.2.15-29.el6.centos' ,
         }
}

client1:

223912614.jpg

version怎么看呢?可以使用yum list

223957998.jpg

至此就结束了;ths



本文转自 西索oO 51CTO博客,原文链接:http://blog.51cto.com/lansgg/1300273

相关文章
|
测试技术 应用服务中间件 nginx
|
算法 Shell 测试技术
|
测试技术 网络安全

推荐镜像

更多