1. 程式人生 > >自動化運維之詳細部署安裝Ansible服務(超簡單)

自動化運維之詳細部署安裝Ansible服務(超簡單)

信息 ges 圖片 安裝epel源 python開發 epel源 登陸 監控 系統配置

簡介:

ansible是新出現的自動化運維工具,基於Python開發,集合了眾多運維工具(puppet、cfengine、chef、func、fabric)的優點,實現了批量系統配置、批量程序部署、批量運行命令等功能。

ansible是基於模塊工作的,本身沒有批量部署的能力。真正具有批量部署的是ansible所運行的模塊,ansible只是提供一種框架。主要包括:

1. 連接插件connection plugins:負責和被監控端實現通信;
2. host inventory:指定操作的主機,是一個配置文件裏面定義監控的主機;
3. 各種模塊核心模塊、command模塊、自定義模塊;
4. 借助於插件完成記錄日誌郵件等功能;
5. playbook:劇本執行多個任務時,非必需可以讓節點一次性運行多個任務。

Ansible自動化運維環境有控制主機與管理主機組成,由於ansible是基於SSH協議進行通信的,所以控制主機安裝Ansible軟件後不需要重啟或運行任何程序,被管理主機也不需要安裝和運行任何代理程序。

環境部署:

角色 主機名 IP地址 安裝軟件
控制主機 node1 192.168.92.145 ansible
被管理主機 node2 192.168.92.156
被管理主機 node3 192.168.92.157

準備工作:

關閉三臺節點的防火墻和selinux

systemctl stop firewalld.service
systemctl disable firewalld.service
setenforce 0

開始部署:

1.安裝ansible(以下內容只在控制主機上操作)

# yum install epel-release -y //安裝epel源
# yum instlal ansible -y  //安裝ansible 軟件包
# ansible --version //查看ansible 版本信息
# yum install tree -y  
# tree /etc/ansible  //樹狀結構展示目錄
    /etc/ansible  
├── ansible.cfg  //ansible的配置文件
├── hosts  //ansible的主倉庫,用於存儲需要管理的遠程主機的相關信息
└── roles  //角色

2.配置主機清單

# vim /etc/ansible/hosts  //配置主機清單
[node2]           //被管理主機分類
192.168.92.156
[node3]            //被管理主機分類
192.168.92.157

3.設置SSH無密碼登陸

# ssh-keygen -t rsa  //生成密匙
# ssh-copy-id [email protected] // 配置密匙對驗證
# ssh-copy-id [email protected] //配置密匙對驗證

技術分享圖片
技術分享圖片
技術分享圖片

設置免交互代理
# ssh-agent bash
# ssh-add 

技術分享圖片

到此Ansible的環境部署就完成了。

模塊會在下一節介紹。

自動化運維之詳細部署安裝Ansible服務(超簡單)