ansible-1 的安装

该文章摘自:http://my.oschina.net/firxiao/blog/343395,该文章制作笔记使用,不做他用,转载请注明原文链接出处

Ansible 默认是基于SSH协议进行通信的。

管理主机的环境要求:

0.当前windows系统还不能作为管理机

1.python 2.6版本以上

2.paramiko 模块

3.PyYAML

4.Jinja2

5.httplib2

被控制主机的要求:

1.如果被管理节点是Unix系统的话,python版本要求是2.4及其以上。但是如果版本低于2.5的话需要安装python的一个模块python-simplejson

,如果这个模块没有安装,同门还是可以使用Ansible的raw模块和script模块,所以这个时候我们可以通过raw模块来安装python-simplejson,之后

就能使用ansible的所有功能了

语法:

ansible myhost  -m raw -a "yum -y install  python-simplejson"

一、配置epel源

[root@git .ssh]# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo

 

二、安装ansible

yum -y install ansible

 注意还有一些附属模块也要安装

pip install paramiko PyYAML Jinja2 httplib2 six

如果没有安装pip的话,首先安装对应于你的python版本的pip

easy_install pip

二、被管理主机的要求

还有一个要注意的是因为我的被管理主机的系统是centos 5.8的,所以我的python版本都是2.4.3的。

通常我们使用 ssh 与托管节点通信,默认使用 sftp.如果 sftp 不可用,可在 ansible.cfg 配置文件中配置成 scp 的方式. 在托管节点上也需要安装 Python 2.4 或以上的版本.如果版本低于 Python 2.5 ,还需要额外安装一个模块:

  • python-simplejson
  • 我这里是登陆到每一台机器上执行:yum -y install python-simplejson
  • 但是我们可以通过
    ansible all -m raw -a "yum install -y python-simplejson"来安装,但是登陆远程机器的连接用户都是wwwad没有yum的权限,这里我不知道怎么操作。所有我就一台一台机器登陆的去
  • su - root
  • yum install -y python-simplejson
  • 学习不精啊,只有在这里受累了,看看到后面有没有什么方法。

Note

没安装python-simplejson,也可以使用Ansible的”raw”模块和script模块,因此从技术上讲,你可以通过Ansible的”raw”模块安装python-simplejson,之后就可以使用Ansible的所有功能了.

Note

如果托管节点上开启了SElinux,你需要安装libselinux-python,这样才可使用Ansible中与copy/file/template相关的函数.你可以通过Ansible的yum模块在需要的托管节点上安装libselinux-python.

原文地址:https://www.cnblogs.com/smail-bao/p/5563125.html