最近在研究一套自动化运维方向的框架,在想到远程安装软件包的时候,觉得有yum支持会更方便一些。主要思路是把程序员写的代码或程序打包成rpm,然后提交到自建yum源,并实现按组安装,本地yum源实现步骤:
1.建本地yum源包涵base以及epel源,此源的搭建不再赘述。
2.建本地专有应用yum源。
创建rpm目录mkdir -p /psoft/6/x86_64/Packages/,然后把所有涉及到的rpm包拷贝到该目录。
如果只简单的实现yum install 安装,直接执行createrepo -v /psoft/6/x86_64/,然后编写一个repo文件,放到对面服务器上就可以用了。
repo文件:名称为comp.xml
[psoft]
name=CentOS-psoft
baseurl=http://mirrors.pppppp.com/psoft/$releasever/$basearch
enabled=1
gpgcheck=0
3.实现yum groupinstall 来整体安装一个应用的所有包。
需要在x86_64的目录下创建一个xml文件,格式如下:
<comps>
<group>
<id>psoft</id>
<name>psoft tools</name>
<name xml:lang="zh_CN">中文名称</name>
<description>tvmstream tools packges</description>
<description xml:lang="zh_CN">中文说明</description>
<default>false</default>
<uservisible>true</uservisible>
<packagelist>
<packagereq type="default">nginx</packagereq>
<packagereq type="default">php</packagereq>
<packagereq type="default">php-cli</packagereq>
<packagereq type="default">php-common</packagereq>
<packagereq type="default">php-fpm</packagereq>
<packagereq type="default">php-pdo</packagereq>
<packagereq type="default">php-xml</packagereq>
<packagereq type="default">psoft</packagereq>
<packagereq type="default">mysoft</packagereq>
</packagelist>
</group>
</comps>
然后执行:
createrepo -g comp.xml /psoft/6/x86_64
生成repodate信息。
在对面服务器执行yum groupinstall 'psoft tools'即可。