• 16、编译安装ansible


    16.1、python版本说明:

    Ansible是一种批量部署工具,现在运维人员用的最多的三种开源集中化管理工具有:puppet,saltstack,ansible,各有各的优缺点,

    其中saltstack和ansible都是用python开发的。ansible其实准确的说只提供了一个框架,它要基于很多其他的python模块才能工

    作的,所以在安装ansible的时候你要再装很多其他的依赖包的。ansible的好处之一是使用者可以开发自己的模块,放在里面使用;

    第二个好处是无需在客户端安装agent,更新时,只需在操作机上进行一次更新即可;第三个好处是批量任务执行可以写成脚本,

    而且不用分发到远程就可以执行。强烈建议升级python版本到2.6以上,不然运行会出错或者有些功能会没有,在编译安装其他包的

    时候也会因为兼容问题报错。


    16.2、centos7下python版本是2.7.5,符合ansible的安装需求,直接进行编译安装即可。centos6下的python版本为Python 2.6.6,

    需要升级python版本到2.7,升级步骤如下:

    1、提前安装依赖包:

    yum install zlib zlib-devel openssl openssl-devel gcc -y


    2、编译安装:

    wget https://www.python.org/ftp/python/2.7.12/Python-2.7.12.tgz

    tar zxf Python-2.7.12.tgz

    cd Python-2.7.12

    ./configure --prefix=/usr/local/python2.7.12

    make

    make install


    3、修改环境变量:

    echo "export PATH=$PATH:/usr/local/python2.7.12/bin" >>/etc/profile

    source /etc/profile


    4、修改python默认版本:

    mv /usr/bin/python /usr/bin/python.old

    ln -s /usr/local/python2.7.12/bin/python2.7 /usr/bin/python


    5、为防止yum执行异常,修改yum使用的python版本:

    vim /usr/bin/yum

    #将文件头#!/usr/bin/python修改为#!/usr/bin/python2.6


    16.3、编译安装ansible:

    1、安装setuptools:

    wget https://files.pythonhosted.org/packages/37/1b/b25507861991beeade31473868463dad0e58b1978c209de27384ae541b0b/setuptools-40.6.3.zip

    unzip setuptools-40.6.3.zip 1>/dev/null

    cd setuptools-40.6.3

    python setup.py install


    2、安装pip:

    (1)方法一:

    easy_install-2.7 pip

    (2)方法二(推荐):

    wget https://files.pythonhosted.org/packages/45/ae/8a0ad77defb7cc903f09e551d88b443304a9bd6e6f124e75c0fbbf6de8f7/pip-18.1.tar.gz

    tar xzf pip-18.1.tar.gz

    cd pip-18.1

    python setup.py install


    3、通过pip安装常用模块:

    pip2.7 install paramiko PyYAML Jinja2 httplib2 six pycrypto markupsafe ecdsa simplejson


    模块功能介绍:

    paramiko:用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接。

    PyYAML:一个Python的YAML解析器。

    Jinja2:基于python的模板引擎。

    httplib2:一个使用python写的支持的非常全面的http特性的库。

    six:提供了一些简单的工具用来封装 Python 2 和 Python 3 之间的差异性。

    pycrypto:是一个免费的加密算法库,支持常见的DES、AES加密以及MD5、SHA各种HASH运算。

    markupsafe:为Python实现 XML/HTML/XHTML 标记安全字符串。

    ecdsa:椭圆曲线数字签名算法( ECDSA)是非对称加密技术的一种。

    simplejson:方便完成json的生成和解析。


    4、安装ansible:

    wget https://releases.ansible.com/ansible/ansible-2.9.5.tar.gz

    tar xzf ansible-2.9.5.tar.gz

    cd ansible-2.9.5

    python setup.py install


    5、查看ansible的版本:

    ansible --version


    6、创建Ansible配置文件,并开启Ansible日志(Ansible默认不启用日志):

    mkdir /etc/ansible

    cp -a /tools/ansible-2.9.5/examples/ansible.cfg /etc/ansible/

    sed -i.bak 's/#log_path/log_path/' /etc/ansible/ansible.cfg





  • 相关阅读:
    【HTML5】增强的表单
    10-okHttp的同步与异步
    9-安卓神奇的返回值
    8-安卓弹窗
    7-OKHttp使用详解,步骤挺详细的,适合初学者使用!
    34-ssm 最简洁的模板
    6-完美解决Error:SSL peer shut down incorrectly
    7- 基础练习 十六进制转八进制
    6-我的算法能力倒退了多少???
    5-java 排序, sort, collections.sort()
  • 原文地址:https://www.cnblogs.com/LiuChang-blog/p/12397292.html
Copyright © 2020-2023  润新知