Ansible工作机制
ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet、cfengine、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。
ansible是基于模块工作的,本身没有批量部署的能力。真正具有批量部署的是ansible所运行的模块,ansible只是提供一种框架。
Ansible架构
Ansible工作原理
Ansible工作机制
ansible分为以下几个部份:
1> Control Node:控制机器
2> Inventory:主机清单,配置管理主机列表
3> Playbooks:剧本、任务编排。根据规则定义多个任务,模块组织结构清晰,由ansible自动执行。
4> Modules(Core | Custom):模块,用于执行某个具体的任务
5> connection plugin(连接插件):Ansible通过不同的协议连接到远程主机上,执行指定的命令。默认采用ssh协议连接远程主机。
安装Ansible
一台控制主机:172.25.53.11
两台管理主机:172.25.53.1
172.25.53.2
安装要求:
控制服务器:需要安装 Python2.6/2.7
管理服务器:需要安装 Python2.4 以上版本,若低于 Python2.5 需要安装 pythonsimplejson; 若启用了 selinux,则需要安装 libselinux-python。
管理服务器为2.6.6
1.首先安装python模块,7.3版本虚拟机有自带python版本为2.7,所以我跳过了这一步
2.setuptools模块安装
[root@vm1 ~]# tar xvzf setuptools-7.0.tar.gz
[root@vm1 ~]# cd setuptools-7.0
[root@vm1 setuptools-7.0]# python setup.py install
3.pycrypto模块安装
[root@vm1 ~]# tar xvzf pycrypto-2.6.1.tar.gz
[root@vm1 ~]# cd pycrypto-2.6.1
[root@vm1 pycrypto-2.6.1]# python setup.py install
4.PyYAML模块安装
[root@vm1 ~]# tar xvzf yaml-0.1.3.tar.gz.tar.gz
[root@vm1 yaml-0.1.3]# ./configure --prefix=/usr/local/
报错如下
checking for gcc... no
checking for cc... no
checking for cl.exe... no
configure: error: in `/root/yaml-0.1.3':
configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details.
解决办法
[root@vm1 yaml-0.1.3]# yum install -y gcc c++
再次编译
[root@vm1 yaml-0.1.3]# ./configure --prefix=/usr/local/
无报错