ansible介紹: Ansible是一款基於Python開發的自動化運維工具,主要是實現批量系統配置、批量程式部署、批量運行命令、批量執行任務等等諸多功能。Ansible是一款靈活的開源工具,能夠很大程度簡化運維中的配置管理與流程式控制制方式,它利用推送方式對客戶系統加以配置,這樣所有工作都可在主服務 ...
ansible介紹:
Ansible是一款基於Python開發的自動化運維工具,主要是實現批量系統配置、批量程式部署、批量運行命令、批量執行任務等等諸多功能。Ansible是一款靈活的開源工具,能夠很大程度簡化運維中的配置管理與流程式控制制方式,它利用推送方式對客戶系統加以配置,這樣所有工作都可在主伺服器端完成。Asible是基於模塊工作的,其本身沒有批量部署的能力,Ansible~~~~~一款運維自動化的軟體!
工作特性:
工作機制:
1、特性
(1)、no agents:不需要在被管控主機上安裝任何客戶端;
(2)、no server:無伺服器端,使用時直接運行命令即可;
(3)、modules in any languages:基於模塊工作,可使用任意語言開發模塊;
(4)、yaml,not code:使用yaml語言定製劇本playbook;
(5)、ssh by default:基於SSH工作;
(6)、strong multi-tier solution:可實現多級指揮。
2、優點
(1)、輕量級,無需在客戶端安裝agent,更新時,只需在操作機上進行一次更新即可;
(2)、批量任務執行可以寫成腳本,而且不用分發到遠程就可以執行;
(3)、使用python編寫,維護更簡單,ruby語法過於複雜;
(4)、支持sudo。
安裝epel 源:
rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
安裝ansible 服務端:
yum install ansible -y
ssh-keygen 生成秘鑰文件:
ssh-keygen -t rsa
一直敲回車
cd /root/.ssh/ && ll ./*
配置ansible 的hosts 文件:
vim /etc/ansible/hosts
添加客戶端使用ssh 方式:
如果之前已經存在authorized_keys, 並且有其他主機的秘鑰文件, 該命令會直接追加進去。
ssh-copy-id -i /root/.ssh/id_rsa.pub 10.90.10.31
測試所有連接的客戶端:
ansible all -a 'who'
測試主機
使用ansible查看遠程主機的基本信息
ansible webservers -m setup