在puppet托管节点中创建安装程序repo以用于安装和升级的最佳方法是什么
举个例子,我有一个jboss-4.2.3安装程序作为.tar文件。一般来说,要安装jboss,我将 1.将jboss-4.2.3解压到预先定义的文件夹(opt/server/jbossas/)中,并将其解压到多个服务器中 2.将openjdk解压到首选路径(/opt/software/java)中,并在bash.profile中设置路径 3.在安装jboss的地方创建服务器配置文件 4.启动服务器 假设我必须在16个节点(服务器)中执行此操作。 现在,我应该将jboss和openjdk安装程序存储在一个中心位置,并在第一步开始之前将其传输到节点 我写清单是为了满足表1到表4的要求。但我不确定如何从中央回购自动转移安装程序。我并不担心中央回购的类型。它可以是ftp、傀儡或其他任何东西 请帮帮我。我正在检查文件桶。这会有帮助吗?或者我应该写一个清单来从ftp服务器获取这个文件吗在puppet托管节点中创建安装程序repo以用于安装和升级的最佳方法是什么,puppet,configuration-management,Puppet,Configuration Management,举个例子,我有一个jboss-4.2.3安装程序作为.tar文件。一般来说,要安装jboss,我将 1.将jboss-4.2.3解压到预先定义的文件夹(opt/server/jbossas/)中,并将其解压到多个服务器中 2.将openjdk解压到首选路径(/opt/software/java)中,并在bash.profile中设置路径 3.在安装jboss的地方创建服务器配置文件 4.启动服务器 假设我必须在16个节点(服务器)中执行此操作。 现在,我应该将jboss和openjdk安装程序存
如何创建可在puppet舱单中引用的文件回购?我不确定您的确切问题,但您可以查看一下,了解一下 在大多数情况下,文件从puppetmaster传输到客户端。如果您在一个模块中定义了策略以卸载和安装软件包,例如模块名jboss,那么您可以在puppet master中保持tarball的这种结构,并从puppet client运行puppet agent:
/etc/puppet/module/jboss/files/jboss_pkg.tar
然后,您的客户政策应在
例如
为Puppet提供安装程序的一般解决方案是建立您自己的包存储库(而不仅仅是一个文件repo) 然后,您可以使用Puppet的内置软件包资源轻松安装/升级/卸载 以下项目似乎提供了JBoss的rpm/deb版本,您可以将其发布到存储库中
目前,我正在使用清单中的exec将文件从pupper master scp到一个目录中,然后再执行其他任务。但我们正在寻找更好的方法。
/etc/puppet/modules/jboss/manifests/init.pp
class jboss {
file { '/tmp/installation/jboss_pkg.tar' :
source => "puppet:///modules/jboss/jboss_pkg.tar",
}
#You can then right a small script that will execute all the installation process. You can use 'exec' in puppet to do that.
exec { 'install_jboss' :
command => "/path/to/install_jboss.sh",
require => File["/tmp/installation/jboss_pkg.tar"],
onlyif => "/check/that/it/is/not/installed/already",
}
## and write other execs to start the server or enable services etc...
}
# In site.pp
node 'client.mytest.org' {
include jboss
}