Ansible 搭建 (配置安裝)

在這裏插入圖片描述

ansible是個什麼東西呢?官方的title是“Ansible is Simple IT Automation”——簡單的運維自動化工具,基於Python開發,集合了衆多運維工具(puppet、cfengine、chef、func、fabric)的優點,實現了批量系統配置、批量程序部署、批量運行命令等功能。只需要使用ssh協議連接就可以來進行系統管理,自動化執行命令,部署等任務。

ansible是基於模塊工作的,本身沒有批量部署的能力。真正具有批量部署的是ansible所運行的模塊,ansible只是提供一種框架。主要包括:
(1)、連接插件connection plugins:負責和被監控端實現通信;
(2)、host inventory:指定操作的主機,是一個配置文件裏面定義監控的主機;
(3)、各種模塊核心模塊、command模塊、自定義模塊;
(4)、藉助於插件完成記錄日誌郵件等功能;
(5)、playbook:劇本執行多個任務時,非必需可以讓節點一次性運行多個任務。

Ansible組成結構:
1)Ansible
是Ansible的命令工具,核心執行工具;一次性或臨時執行的操作都是通過該命令執行。
2)Ansible Playbook
任務劇本(又稱任務集),編排定義Ansible任務集的配置文件,由Ansible順序依次執行,yaml格式。
3)Inventory
Ansible管理主機的清單,默認是/etc/ansible/hosts文件。Inventory文件通常用於定義要管理的主機的認證信息,例如ssh登錄用戶名、密碼以及key相關信息。可以同時操作一個組的多臺主機,組與主機組之間的關係都是通過inventory文件配置。配置文件路徑爲:/etc/ansible/hosts
Inventory內置參數
在這裏插入圖片描述
4)Modules
Ansible執行命令的功能模塊,Ansible2.3版本爲止,共有1039個模塊。還可以自定義模塊。
5)Plugins
插件,模塊功能的補充,常有連接類型插件,循環插件,變量插件,過濾插件,插件功能用的較少。
6)API
提供給第三方程序調用的應用程序編程接口。

Ansible的特點:
1、ansible不需要單獨安裝客戶端,也不需要啓動任何服務
2、ansible是python中的一套完整的自動化執行任務模塊
3、ansible playbook 採用yaml配置,對於自動化任務執行過一目瞭然
4、輕量級,無需在客戶端安裝agent,更新時,只需在操作機上進行一次更新即可;
5、批量任務執行可以寫成腳本,而且不用分發到遠程就可以執行;
6、支持sudo。

Ansible 配置

環境:
準備兩個服務機
服務機 192.168.110.117
客戶機 192.168.110.164

服務機中:
1.安裝ansible
[root@localhost ~]# yum install ansible -y
在這裏插入圖片描述
在這裏插入圖片描述
2.生成公鑰私鑰 ssh-keygen 一直按回車
在這裏插入圖片描述
3.進入到.ssh下
cd .ssh
在這裏插入圖片描述
4.將公鑰上傳到被管理機
ssh-copy-id -i [email protected](被管理機IP)
在這裏插入圖片描述
4.此時在被管理機的.ssh目錄下會自動生成一個 authorized_keys,ls查看
在這裏插入圖片描述

5.編輯配置文件, vim /etc/ansible/hosts,在末端添加一個模塊
(被管理IP地址)
在這裏插入圖片描述
5.測試連接 ansible -m ping ‘test-servers’
在這裏插入圖片描述

6.再cd到家目錄,創建一個文件夾爲了方便驗證使用,必須用touch創建。
在這裏插入圖片描述
7.傳到被管理機的/tmp下 再cd到 .ssh 下 如下圖
在這裏插入圖片描述

8.此時在被管理機的/tmp目錄下會接收到管理機傳輸的文件 去客戶機裏去查看
在這裏插入圖片描述
此時這裏出現自己創建的xxx.txt 文件
Ansible 成功

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章