redhat – 使用Puppet安装软件“捆绑”

我们正在研究配置/系统管理实现,我们已经完成了很多Puppet的演示. Puppet似乎很擅长一些简单的“确保安装此软件包,此配置文件存在,并且此服务正在运行.”

我似乎无法找到一个很好的现实世界的例子来管理那些不能很好地运行的软件.一些例子:

> IBM DB2(通过tarball与安装程序分发,“fixpacks”类似)
> Simpana CommVault(使用带有ncurses接口的安装程序,但如果被哄骗则接受“回答”文件)
> AccuRev(二进制安装程序,具有“回答”文件支持)
> VMWare工具(二进制安装程序)

Puppet用户采用什么方法将这样的软件集成到他们的环境中?

解决方法

我维护一个包含本地创建文件的服务器,并自己为这些软件制作.deb或.rpm软件包.

在一些我没有费心去做任何事情的情况下,我做一个exec wget来下载文件,一个带有提取方法的exec,无论它是什么,使用指向主二进制文件的creates属性.但是,它不会处理更新.

要处理更新,请使安装exec为refreshonly =>是的,并在exec上为wget发出通知.

样品:

exec { "/usr/bin/wget http://fileserver.domain/jboss/jboss-${version}.prd.tar.gz -O /tmp/jboss.tgz":
    creates => '/tmp/jboss.tgz',require => Package['wget'],alias   => 'wget_jboss',}

exec { '/bin/tar xzvf /tmp/jboss.tgz':
    cwd     => '/opt',creates => "/opt/jboss-${version}/bin",user    => 'jboss',group   => 'jboss',require => [ User['jboss'],Exec['wget_jboss'],File["/opt/jboss-${version}"],],before  => Service['jboss'],alias   => 'untar_jboss',}

相关文章

insmod和modprobe加-f参数导致Invalid module format错误 这...
将ArchLinux安装到U盘 几个月前入门Arch的时候上网搜了不少安...
1、安装Apache。 1)执行如下命令,安装Apache服务及其扩展包...
一、先说一下用ansible批量采集机器信息的实现办法: 1、先把...
安装配置 1. 安装vsftpd 检查是否安装了vsftpd # rpm -qa | ...
如何抑制stable_secret读取关键的“net.ipv6.conf.all.stabl...