ansible自动化部署(一)
ansible自動化部署
最近因為工作需要學習了ansible,把這幾天所學的東西做了個總結,和大家分享一下:
1、什么是ansible?ansible能干什么?
ansible是新出現的自動化運維工具,基于Python開發,集合了眾多運維工具(puppet、cfengine、chef、func、fabric)的優點,實現了批量系統配置、批量程序部署、批量運行命令等功能。
ansible是基于模塊工作的,本身沒有批量部署的能力。真正具有批量部署的是ansible所運行的模塊,ansible只是提供一種框架。主要包括:
- 連接插件connection plugins:負責和被監控端實現通信;
- host inventory:指定操作的主機,是一個配置文件里面定義監控的主機;
- 各種模塊核心模塊、command模塊、自定義模塊;
- 借助于插件完成記錄日志郵件等功能;
- playbook:劇本執行多個任務時,非必需可以讓節點一次性運行多個任務。
2、ansible的基本安裝與配置
了解了ansible的基本概念以及它的用途,下來,我們開始部署ansible(本次部署實在Redhat7上進行的),讓ansible在自己的機器上跑起來。
為了能使用yum安裝,首先我們得配置本地yum源,具體配置參考我的另一篇文章
RHEL7配置本地yum源
安裝ansible
1、安裝python-devel
yum install python-devel
2、setuptools模塊安裝
3、pycrypto模塊安裝
4、PyYAML模塊安裝
5、Jinja2模塊安裝
6、paramiko模塊安裝
7、simplejson模塊安裝
8、ansible安裝
在網上下載以上模塊以及ansiblede的.tar.gz包
分別執行tar xvzf ***解壓后 再執行python setup.py install --record log.txt 命令安裝
ansible安裝成功之后,接下來進行Ansible的配置
1、SSH免密鑰登錄設置
2、將信任文件分發到指定服務器上
ssh-copy-id -i /root/.ssh/id_rsa.pub 172.28.159.103
3、配置ansible.cfg
4、主機組定義
[root@localhost ~]# vim /etc/ansible/hosts [test] localhost 192.168.56.1035、簡單測試
[root@localhost ~]# ansible test -m ping 192.168.56.103 | SUCCESS => {"changed": false, "ping": "pong" } localhost | SUCCESS => {"changed": false, "ping": "pong" }總結
以上是生活随笔為你收集整理的ansible自动化部署(一)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: RHEL7配置本地yum源
- 下一篇: UML图系列——UML模型图的构成