CentOS7离线安装ansible的方法

在生产网络中正常情况下是无发连接Internet的,那么我们要安装软件只能在可以上互联网的主机上下载所需要的软件,然后拷贝到无Internet的主机上进行安装。这里介绍在Centos7中离线安装Ansible的方法。

这里介绍使用rpm包安装和使用pip安装。

一、先说使用rpm包安装的方法:

1、首先需要配置本地yum源,可以使用光盘挂载到目录的方式来做本地yum源,也可以直接把光盘中的文件拷贝到系统中的某个目录下,我这里已经把光盘中的文件拷贝到mnt目录下的iso中,所以我的yum源配置文件配置如下:

  cat  /etc/yum.repos.d/local.repo 
   [local]
   name=local
   baseurl=file:///mnt/iso
   gpgcheck=0
   enabled=1

2、下载安装Ansible的安装包和所需要的依赖包,然后把依赖包和安装包上传到需要安装的主机上,我下载的包如下,注意环境不一样,依赖包的需要多少也不一样,安装时提示少那个依赖包就下载那个包。
CentOS7离线安装ansible的方法

3、安装包下载完成后,以下命令在下载的软件包目录下执行,这里不使用rpm -ivh安装时因为使用yum localinstall安装可以解决一些依赖关系,开始安装:

   yum localinstall python-jinja2-2.7.2-2.el7.noarch.rpm -y
   yum localinstall python-httplib2-0.7.7-3.el7.noarch.rpm -y
   yum localinstall sshpass-1.06-1.el7.x86_64.rpm  -y
   yum localinstall python-crypto-2.6.1-1.el7.centos.x86_64.rpm -y
   yum localinstall python-ecdsa-0.11-3.el7.centos.noarch.rpm -y 
   yum localinstall python-paramiko-1.12.4-1.el7.centos.noarch.rpm -y 
   yum localinstall python-keyczar-0.71c-2.el7.noarch.rpm -y
   yum localinstall PyYAML-3.10-11.el7.x86_64.rpm -y
   yum localinstall python2-jmespath-0.9.0-5.el7.noarch.rpm  -y 
   yum localinstall python-passlib-1.6.5-2.el7.noarch.rpm -y 
   yum localinstall ansible-2.2.1.0-1.el7.noarch.rpm -y

二、使用pip安装Ansible

先在可以上网的主机上,使用pip下载ansible,下载ansible时也会把安装的依赖包也一起下载了,下载好之后,把下载的所有包拷贝到没有联网的主机上进行安装。

1、在使用pip安装ansible时,需要先安装pip,我的Centos7环境的是最小安装,所以很多软件都没有安装。

(1)、先 从pip官网 https://pypi.python.org/pypi/pip 下载pip的源代码,然后解压源码包,再进行安装pip软件:

    # tar -zxvf pip-9.0.1.tar.gz 
    # cd pip-9.0.1

    解压完成进行安装pip
    # python setup.py install

我安装pip的时候,安装提示报错,说少了setuptools,所以需要先安装setuptools

(2)、 从setuptools官网 https://pypi.python.org/pypi/setuptools下载setuptools源码包,并解压

    # unzip setuptools-38.2.3.zip 
    # cd setuptools-38.2.3

     解压完成进行安装setuptools
    # python setup.py install

再次进入到pip的解压目录下,再次安装pip,执行如下命令:
 # python setup.py install

(3)、安装ansible2.2.1.0版本, 下载ansible,在使用pip下载时,会把ansible的依赖包也会自动一起下载,开始下载:

#  pip download ansible==2.2.1.0

注意: 这样会一个包一个包的自动下载下来到当前的目录下,下载完成后要记录包的下载顺序,因为在安装的时候是从最后下载的一个包往前安装,我们把下载的包打包,然后拷贝到没有连接互联网的主机上进行安装,我的下载顺序如下:
CentOS7离线安装ansible的方法
setuptools在安装第三方包时都需要安装的,所以要先安装,安装这个setuptools包之后,其他要按顺序从最后下载的一个包往前安装 (setuptools包之前已经安装,这里不用理了)

在安装之前也需要安装一些必要的依赖包,所以也需要配置本地yum源,配置本地yum源这里不再说了,直接安装依赖包关系:

 # yum install openssl openssl-devel libffi-devel zlib-devel git gcc python-devel -y

(4)、开始安装Ansible:
安装方法:
如果是 .whl文件 就直接 pip install xxx.whl
如果是 tar.gz 就解压 然后进入目录使用 python setup.py install

 安装顺序如下:
    # tar  zxvf  pycparser-2.18.tar.gz
    # cd pycparser-2.18
    # python setup.py install

   #pip  install  asn1crypto-0.23.0-py2.py3-none-any.whl
   #pip  install  ipaddress-1.0.18-py2-none-any.whl
   #pip  install  enum34-1.1.6-py2-none-any.whl
   #pip  install  idna-2.6-py2.py3-none-any.whl
   #pip  install  cffi-1.11.2-cp27-cp27mu-manylinux1_x86_64.whl
   #pip  install  six-1.11.0-py2.py3-none-any.whl

 # tar zxvf  MarkupSafe-1.0.tar.gz
 # cd MarkupSafe-1.0
 # python setup.py install

#pip  install  PyNaCl-1.2.0-cp27-cp27mu-manylinux1_x86_64.whl
#pip  install  cryptography-2.1.4-cp27-cp27mu-manylinux1_x86_64.whl
#pip  install  bcrypt-3.1.4-cp27-cp27mu-manylinux1_x86_64.whl
#pip  install  pyasn1-0.4.2-py2.py3-none-any.whl

 # tar -zxvf  pycrypto-2.6.1.tar.gz
 # cd pycrypto-2.6.1
 # python setup.py install

 #pip  install  setuptools-38.2.3-py2.py3-none-any.whl

  # tar zxvf PyYAML-3.12.tar.gz
  # cd PyYAML-3.12
  # python setup.py install

 #pip  install  Jinja2-2.8.1-py2.py3-none-any.whl
 #pip  install  paramiko-2.4.0-py2.py3-none-any.whl

    # tar zxvf ansible-2.2.1.0.tar.gz
    # cd ansible-2.2.1.0
    # python setup.py install

到这里安装完成了。

注意:
使用这种pip方式,虽然能自动解决一些依赖问题(不是全部),但是pip安装的在etc目录下没有创建ansible文件夹,所以也就没有ansible.cfg和hosts这两个文件。

但ansible.cfg和hosts这两个文件在解压时的ansible的安装包的压缩文件时会在解压的目录下的examples/下有这两个文件,所以只要把这两个文件ansible.cfg和hosts文件拷到/etc/ansible/就可以了!

转载于:https://blog.51cto.com/75368/2141015

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值