使用Virtualenv隔离安装Ansible

因为ansible本身由python编写而成, 所以我们可以使用python下的virtualenv模块对我们所需的ansible发行版进行隔离安装, 这样既能保证我们原有的job还可以正常在stable version下safe running, 而且又不影响我们new job在新版本下适配新的模块.

一.安装virtualenv

1.保证系统默认YUM源

2.安装easy_install

# whoami

root

# yum install python-setuptools python-setuptools-devel

3.安装pip

# easy_install pip

4.安装virtualenv

# pip install virtualenv

二.配置系统非root用户使用新版本ansible.

Tip: 我们正常部署过程中建议使用一个普通用户来跑我们日常的ansible job

1.创建用户
# useradd deploy

2.切换到该用户进行初始配置.
# su - deploy

##创建virtualenv 隔离环境,环境名 : .virtualenv (可以自定义名称)
$ virtualenv .virtualenv

$ cd .virtualenv

$ ls

bin  include  lib  lib64  pip-selfcheck.json

3.使用git下载ansible最新发行版.

$ git clone git://github.com/ansible/ansible.git

4.进入virtualenv环境

$ source /home/deploy/.virtualenv/bin/activate

(.virtualenv) [deploy@www .virtualenv]$

5.安装必要的ansible依赖包

(.virtualenv) [deploy@www .virtualenv]$  pip install paramiko PyYAML jinja2

(.virtualenv) [deploy@www .virtualenv]$  cd ansible

(.virtualenv) [deploy@www ansible]$ git submodule update --init lib/ansible/modules/core

(.virtualenv) [deploy@www ansible]$ git submodule update --init lib/ansible/modules/extras

6. 加载ansible2.3

Tip: env-setup 是 ansible 为 hacker 准备的一个脚本,用来设置一些ansible所需的环境变量,且必须按如下完整路径执行

(.virtualenv) [deploy@www ansible]$ . /home/deploy/.virtualenv/ansible/hacking/env-setup -q

(.virtualenv) [deploy@www ansible]$ ansible --version
ansible 2.3.0 (devel 333f6d447b) last updated 2016/11/02 18:04:28 (GMT +800)
  lib/ansible/modules/core: (detached HEAD d2106f1c92) last updated 2016/11/02 19:32:48 (GMT +800)
  lib/ansible/modules/extras: (detached HEAD 9a01d01f78) last updated 2016/11/02 19:33:45 (GMT +800)
  config file =configured module search path = Default w/o overrides

7. 退出virtualenv

(.virtualenv) [deploy@www ansible]$ deactive 

配置完毕

以后若想使用新版本ansible则直接执行下面两行命令即可.

# source /home/deploy/.virtualenv/bin/activate

# . /home/deploy/.virtualenv/ansible/hacking/env-setup -q

转载于:https://my.oschina.net/oliverlin/blog/780083

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值