自制yum源离线安装ansible

Posted wholj

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了自制yum源离线安装ansible相关的知识,希望对你有一定的参考价值。

适应场景

在实际生产环境中,服务器往往是不能访问互联网,如果简单的下载ansible源码安装,会碰到缺少各种依赖包的问题,因此,推荐制作yum源,然后使用yum安装ansible。

实验环境

  • 模拟可以通互联网的主机A
    • hostname:zabbix
    • IP:192.168.101.201
    • OS:CentOS 7.5
    • 下载包目录:/data/ansible_packages
  • 模拟生产环境不通互联网的主机B
    • hostname:kvm
    • IP:192.168.101.222
    • OS:CentOS 7.5
    • 存放包目录:/data/ansible_packages

关键工具(命令)

  • yumdownloader:只下载指定软件的所有依赖包和安装包到指定目录,不安装
  • createrepo:用于创建repodata

主机zabbix的操作

在主机zabbix上安装yumdownloader

yumdownloader命令在yum-utils软件包中,首先安装yum-utils

yum -y install yum-utils

获取ansible依赖包和安装包

  • 安装epel源
    对于CentOS的官方yum源中没有ansible安装包,这就需要先安装支持第三方的yum仓库组件,这里选择安装epel源;执行下边命令从互联网安装epel源:
yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
  • 获取ansible依赖包和安装包
yumdownloader --resolve --destdir /data/ansible_packages ansible

获取createrepo的依赖包和安装包

yumdownloader --resolve --destdir /data/ansible_packages createrepo

成功执行上边几条命令后,查看/data/ansible_packages下文件列表如下:
技术图片

打包/data/ansible_packages目录下的所有包并上传到主机kvm

cd /data/ansible_packages/
tar -zcvf ansible.tar.gz ./*
scp ./ansible.tar.gz [email protected]:/data/ansible_packages/

注意:主机kvm上的/data/ansible_packages/要存在!

主机kvm上的操作

解压压缩包

cd /data/ansible_packages
tar -zxvf ansible.tar.gz

安装createrepo

cd /data/ansible_packages
rpm -ivh deltarpm-3.6-3.el7.x86_64.rpm 
rpm -ivh python-deltarpm-3.6-3.el7.x86_64.rpm
rpm -ivh createrepo-0.9.9-28.el7.noarch.rpm 

技术图片

制作离线源

createrepo /data/ansible_packages

成功执行后能在/data/ansible_packages看到新增了一个repodata目录:
技术图片

新增yum文件/etc/yum.repos.d/ansible.repo

[ansible]
name=ansible
baseurl=file:///data/ansible_packages
gpgcheck=0
enabled=1

测试安装ansible

yum install ansible

技术图片

验证

ansible --version

技术图片

以上是关于自制yum源离线安装ansible的主要内容,如果未能解决你的问题,请参考以下文章

CentOS7离线安装ansible的方法

ansible-playbookansible服务端的在线和离线安装

ansible-playbookansible服务端的在线和离线安装

ansible-playbookansible服务端的在线和离线安装

CentOS6.5中ansible的离线编译安装

Ansible 学习总结—— Ansible 常用模块与 playbook 实例讲解