准备一台能连接互联网的服务器,制作ansible离线包,我们需要使用到yumdownloader及createrepo工具。
首先安装yumdownloader:
yumdownloader 命令在软件包 yum-utils 里面。先安装 yum-utils :
yum install yum-utils -y
查看 yum-utils 软件包有没有 yumdownloader,如果有输出代表可用:
rpm -ql yum-utils |grep yumdownloader
然后拉取带有ansible的网络镜像源:
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum clean all
yum makecache
yum list |grep ansible
单纯的使用yumdownloader 只会下载给定名称的既定RPM包,安装时候所需要的一些依赖不会被下载。如果要下载依赖加上"--resolve"参数,如果要指定下载目录。加上"--destdir"参数
yumdownloader ansible --resolve --destdir=/home/ansible #拉取ansible所有关联包到/home/ansible中
yumdownloader createrepo --resolve --destdir=/home/ansible #顺便把createrepo也一起,一会一起打包
查看下载的所有rpm包:
把所有包打包拷贝到企业环境的服务器上,放到/home下
首先安装createrepo,因为createrepo依赖 deltarpm和python-deltarpm 这两个包,需要先安装这两个包:
rpm -ivh deltarpm-3.6-3.el7.x86_64.rpm
rpm -ivh python-deltarpm-3.6-3.el7.x86_64.rpm
再安装createrepo:
rpm -ivh createrepo-0.9.9-28.el7.noarch.rpm
然后使用createrepo生成符合要求的yum仓库,执行:
createrepo /home/ansible #执行成功后会在/home/ansible生成一个repodata目录
接下来配置本地yum源
vi /etc/yum.repos.d/ansible.repo
[ansible]
name=ansible
baseurl=file:///home/ansible
gpgcheck=0
enabled=1
保存退出,然后执行:
yum clean all
yum repolist
最后使用yum安装ansible
yum install ansible