Ansible是一个综合的强大的管理工具,他能够对多台主机安装操做系统,并为这些主机安装不一样的应用程序,也能够通知指挥这些主机完成不一样的任务.查看多台主机的各类信息的状态等,ansible均可以经过模块的方式来完成。python
一、Ansible特性git
No agents:不须要再被管理节点上安装客户端,只要有sshd便可github
No server:在服务端不须要启动任何服务,只须要执行命令就行babel
No additional PKI:因为不基于ssl,因此也不基于PKI工做ssh
Modules in any language:基于模块工做,ansible拥有众多的模块ide
YAML:支持YAML语法工具
SSH by default:默认使用ssh控制各节点ui
二、Ansible的基本组件spa
核心:ansible操作系统
核心模块(Core Modules):这些都是ansible自带的模块
扩展模块(Custom Modules):若是核心模块不足以完成某种功能,能够添加扩展模块
插件(Plugins):完成模块功能的补充
剧本(Playbooks):把须要完成的多个任务定义在剧本中
链接插件(Connectior Plugins):ansible基于链接插件链接到各个主机上,虽然ansible是使用ssh链接到各个主机的,可是它还支持其余的链接方法,因此须要有链接插件
主机群(Host Inventory):ansible在管理多台主机时,能够选择只对其中的一部分执行某些操做
三、Ansible工做机制
Ansible 在管理节点将 Ansible 模块经过 SSH 协议(或者 Kerberos、LDAP)推送到被管理端执 行,执行完以后自动删除,可使用 SVN 等来管理自定义模块及编排。
四、Ansible的安装
Ansible的安装方式有不少种,经常使用的安装方法是基于yum或者源码,若是是基于yum安装,须要配置epel源,而后直接执行yum -y install ansible便可。源码安装配置以下:
解决依赖关系:
yum -y install python-jinja2 PyYAML python-paramiko python-babel python-crypto
下载ansible:
wget https://github.com/ansible/ansible/archive/release1.6.1.zip
解压安装
unzip release1.6.1
cd ansible-release1.6.1
python setup.py build
python setup.py install
mkdir /etc/ansible
cp -r examples/* /etc/ansible
本文出自 “无名小卒” 博客,请务必保留此出处http://breezey.blog.51cto.com/2400275/1757645