果冻想
认真玩技术的地方

CentOS 7离线安装Ansible

前言

我一直都想成为自动化运维界最亮的仔,奈何自己实力不允许。不过,我一直都在奋斗的路上;这不,最近就在学习自动化运维界的神器——Ansible。

要系统的学习一下Ansible,那就是要先搭建学习环境了,为了更切合我的实际工作环境,所以我需要在内网环境下搭建整套Ansible的学习环境,对于公网环境的搭建,我想说那个比较简单,几个命令就搞定了。对于内网环境的搭建,的确是非常麻烦的,所以这篇文章就对这个麻烦的事情进行一番总结,也希望我趟过的坑对你的学习有一点帮助。

离线安装

我们去Ansible的官网下载到最新的源代码,在源代码包中有一个requirements.txt文件,里面记录了安装Ansible需要依赖的包,在实际安装这些依赖包中,我们会发现这些依赖包又会依赖一些其它的包,所以当你看到这篇文章时,我想你是幸福的,因为我这里都整理好了,以及安装的顺序我都整理好了。来吧!

去PyPi下载这些依赖包的源码包

yum -y install python-devel openssl-devel

# 安装 setuptools
unzip setuptools-41.0.1.zip
cd setuptools-41.0.1
python3 setup.py install

# 安装pycrypto
tar -xzf pycrypto-2.6.1.tar.gz 
cd pycrypto-2.6.1
python3 setup.py install

# 安装 PyYAML
tar -xzf PyYAML-5.1.tar.gz 
cd PyYAML-5.1
python3 setup.py install

# 安装MarkupSafe
tar -xzf MarkupSafe-1.1.1.tar.gz 
cd MarkupSafe-1.1.1
python3 setup.py  install

# 安装Jinja2
tar -xzf Jinja2-2.10.1.tar.gz 
cd Jinja2-2.10.1
python3 setup.py  install

# 安装ecdsa
tar -xzf ecdsa-0.13.2.tar.gz 
cd ecdsa-0.13.2
python3 setup.py install

# 安装simplejson
tar -xzf simplejson-3.16.0.tar.gz 
cd simplejson-3.16.0
python3 setup.py install

# 安装libffi-devel
yum -y install libffi-devel-3.0.5-3.2.el6.x86_64.rpm 

# 安装pycparser
tar -xzf pycparser-2.19.tar.gz
cd pycparser-2.19
python3 setup.py install

# 安装cffi
tar -xzf cffi-1.12.3.tar.gz 
cd cffi-1.12.3
python3 setup.py install

# 安装ipaddress
tar -xzf ipaddress-1.0.22.tar.gz 
cd ipaddress-1.0.22
python3 setup.py install

# 安装six
tar -xzf six-1.12.0.tar.gz 
cd six-1.12.0
python3 setup.py install

# 安装asn1crypto
tar -xzf asn1crypto-0.24.0.tar.gz 
cd asn1crypto-0.24.0
python3 setup.py install

# 安装idna
tar -xzf idna-2.8.tar.gz 
cd idna-2.8
python3 setup.py install

# 安装pyasn1
tar -xzf pyasn1-0.4.5.tar.gz 
cd pyasn1-0.4.5
python3 setup.py install

# 安装PyNaCl
tar -xzf PyNaCl-1.3.0.tar.gz 
cd PyNaCl-1.3.0
python3 setup.py install

# 安装cryptography
tar -xzf cryptography-2.6.1.tar.gz 
cd cryptography-2.6.1
python3 setup.py install

# 安装bcrypt
tar -xzf bcrypt-3.1.6.tar.gz 
cd bcrypt-3.1.6
python3 setup.py install

# 安装paramiko
tar -xzf paramiko-2.4.2.tar.gz 
cd paramiko-2.4.2
python3 setup.py install

# 安装ansible
tar -xzf ansible-latest.tar.gz 
cd ansible-2.7.10/
python3 setup.py install

对于上面的安装,大家的疑惑点进行说明一下:
Q1:为什么是Python3?
A1:因为我的内网服务器是Python 2的版本,而我更喜欢玩Python 3版本,对于Python 2版本不感冒,而这个内网服务器又有很多应用使用的Python 2,所以,我只能编译一个Python 3安装到这个服务器了,让Python 2和Python 3共存。

Q2:对于从源码安装Python第三方模块不是很明白。
A2:如果对源码安装Python依赖包还要疑惑的话,我想这篇《Python安装第三方模块总结》可以解答你的疑惑。

按照上面的顺序,挨个安装吧,就可以顺利的完成Ansible的安装。安装完成后,在用户环境变量中添加以下代码:

export PATH=/home/jelly/Python/bin:$PATH

这样就可以将Ansible的相关命令就添加到环境变量中,我们就可以直接使用了。执行ansible --version命令来查看是否安装正确。

总结

我想我的这篇文章应该是大家需要的,根据这篇文章的指导,你一定可以正确的完成Ansible的安装。好了,一篇简单而实用的文章完成了。如果觉的还不错,可以点击下方的“打赏”哦。

果冻想,认真玩技术的地方。

2019年5月18日,于内蒙古呼和浩特。

修改记录

赞(7) 打赏
未经允许不得转载:果冻想 » CentOS 7离线安装Ansible
关注微信公众号
关注微信公众号和果冻一起分享你的疑惑与心得。
分享到: 更多 (0)

评论 1

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. #-49

    您好,我在安装 PyYAML时,提示【ext/_yaml.h:2:18: 致命错误:yaml.h:没有那个文件或目录】。这个错误是中间报出来的。全部组件安装完、环境变量配置完成后,输入【ansible】,最下方会提示【ansible: error: too few arguments】,请问这样的问题如何解决呢?

    浮云游子25分钟前回复

玩技术,我们是认真的

联系我们关于果冻

感谢支持果冻想

支付宝扫一扫打赏

微信扫一扫打赏