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