virtualenv环境下git源码安装Asible

安装epel和方便工具
# yum install epel-release -y && yum install lrzsz -y
 
 
下载python3.6.5
 
安装gcc
# yum -y install gcc
安装git
# yum install git nss curl -y
 
安装openssl-devel,不然virtualenv报错
# yum install openssl-devel -y
安装python3.6
# tar xf Python-3.6.5.tar.xz
# cd Python-3.6.5
修改Setup文件
# vi /root/Python-3.6.5/Modules/Setup.dist
修改结果如下:(去掉最后4行的注释) 否则可能会报错:No module named _ssl
# Socket module helper for socket(2)
_socket socketmodule.c timemodule.c
# Socket module helper for SSL support; you must comment out the other
# socket line above, and possibly edit the SSL variable:
SSL=/usr/local/ssl
_ssl _ssl.c \
-DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
-L$(SSL)/lib -lssl -lcrypto
编译安装
# ./configure --prefix=/usr/local --with-ensurepip=install --enable-shared LDFLAGS="-Wl,-rpath /usr/local/lib"
# yum -y install zlib*
# make && make altinstall
 
安装virtualenv
# which pip3.6
/usr/local/bin/pip3.6
做个软链接,可直接pip触发pip3.6
# ln -s /usr/local/bin/pip3.6 /usr/local/bin/pip
# pip install virtualenv  -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
 
创建ansible系统账号
[root@localhost Python-3.6.5]# useradd deploy
[root@localhost Python-3.6.5]# su - deploy
 
在deploy用户下创建一个python3.6版本的virtualenv
# virtualenv -p /usr/local/bin/python3.6 .py3-a2.5-env
 
加载virtualenv,并在该虚拟环境下安装依赖包
$ source /home/deploy/.py3-a2.5-env/bin/activate
(.py3-a2.5-env) [deploy@localhost ~]$ pip install paramiko PyYAML jinja2
 
下载ansible源码包(这个下来的应该是有各个版本的)
(.py3-a2.5-env)# git clone https://gitee.com/mirrors/ansible.git
 
将ansible源码包移动至虚拟环境下,并进入该目录
(.py3-a2.5-env)# mv ansible .py3-a2.5-env/
(.py3-a2.5-env)$ cd .py3-a2.5-env/ansible/
 
将ansible版本切换至stable-2.5
(.py3-a2.5-env)# git checkout stable-2.5
 
在虚拟环境下加载ansible2.5版本(不用git下载,而是直接下2.5版本,没有hacking文件夹,没法用这个方法安装)
(.py3-a2.5-env)# source /home/deploy/.py3-a2.5-env/ansible/hacking/env-setup -q
查看
(.py3-a2.5-env) [deploy@localhost ansible]$ ansible --version
ansible 2.5.15 (stable-2.5 0d1ecee767) last updated 2020/09/21 15:17:30 (GMT +800)
  config file = None
  configured module search path = ['/home/deploy/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /home/deploy/.py3-a2.5-env/ansible/lib/ansible
  executable location = /home/deploy/.py3-a2.5-env/bin/ansible
  python version = 3.6.5 (default, Sep 19 2020, 15:09:49) [GCC 4.8.5 20150623 (Red Hat 4.8.5-39)]
安装成功!
posted @ 2020-09-22 17:39  Edward_han  阅读(210)  评论(0编辑  收藏  举报