自動化運維工具ansible的安裝部署及其命令列模塊
文章目錄
- 自動化運維工具ansible的安裝部署及其命令列模塊
- 一、ansible簡介
- 二、為什么選擇ansible
- 1、puppet、saltstack和ansible的對比
- 2、ansible 的特點
- 三、ansible的安裝部署
- 1、yum安裝epel源和ansible并查看其結構
- 2、修改ansible的倉庫檔案
- 3、配置公私鑰
- 4、主機連通性測驗
一、ansible簡介
1.Ansible可以同時管理Redhat系的Linux,Debian系的Linux,以及Windows主機,管理節點只在執行腳本時與遠程主機連接,沒有特別的同步機制,所以斷電等例外一般不會影響ansbile,
2.ansible是新出現的自動化運維工具,基于Python開發,集合了眾多運維工具(puppet、cfengine、chef、func、fabric)的優點,實作了批量系統配置、批量程式部署、批量運行命令等功能,ansible是基于模塊作業的,本身沒有批量部署的能力,真正具有批量部署的是ansible所運行的模塊,ansible只是提供一種框架,主要包括:
(1)、連接插件connection plugins:負責和被監控端實作通信;
(2)、host inventory:指定操作的主機,是一個組態檔里面定義監控的主機;
(3)、各種模塊核心模塊、command模塊、自定義模塊;
(4)、借助于插件完成記錄日志郵件等功能;
(5)、playbook:劇本執行多個任務時,非必需可以讓節點一次性運行多個任務,
3.ansible的架構:連接其他主機默認使用ssh協議

Ansible:Ansible核心程式,
Host Inventory:記錄由Ansible管理的主機資訊,包括埠、密碼、ip等,
Playbooks:“劇本”YAML格式檔案,多個任務定義在一個檔案中,定義主機需要呼叫哪些模塊來完成的功能,
CoreModules:核心模塊,主要操作是通過呼叫核心模塊來完成管理任務,
CustomModules:自定義模塊,完成核心模塊無法完成的功能,支持多種語言,
ConnectionPlugins:連接插件,Ansible和Host通信使用
二、為什么選擇ansible
1、puppet、saltstack和ansible的對比

2、ansible 的特點
-
部署簡單,只需在主控端部署Ansible環境,被控端無需做任何操作;
-
默認使用SSH協議對設備進行管理;
-
有大量常規運維操作模塊,可實作日常絕大部分操作;
-
配置簡單、功能強大、擴展性強;
-
支持API及自定義模塊,可通過Python輕松擴展;
-
通過Playbooks來定制強大的配置、狀態管理;
-
輕量級,無需在客戶端安裝agent,更新時,只需在操作機上進行一次更新即可;
-
提供一個功能強大、操作性強的Web管理界面和REST API介面——AWX平臺,
三、ansible的安裝部署
這里的安裝全都在ansible主機上操作
環境準備
| 主機 | 作業系統 | IP地址 | 主要軟體 |
|---|---|---|---|
| ansible | centos7 | 192.168.2.3 | ansible |
| webserver | centos7 | 192.168.2.4 | httpd |
| mysql | centos7 | 192.168.2.5 | mysql |
修改主機名及關閉防火墻,以ansible主機為例

ansible:192.168.2.3
1、yum安裝epel源和ansible并查看其結構
yum install -y epel-release
yum install ansible -y
//查看ansible的版本
ansible --version
yum install -y tree
tree /etc/ansible/


2、修改ansible的倉庫檔案
vim /etc/ansible/hosts
[webserver]
192.168.2.4
[mysql]
192.168.2.5

3、配置公私鑰
ansible 是基于 ssh 協議實作的,所以其配置公私鑰的方式與 ssh 協議的方式相同
生成公私鑰
ssh-keygen -t rsa

向主機分發公鑰
ssh-copy-id root@192.168.2.4
ssh-copy-id root@192.168.2.5



設定免互動
ssh-agent bash
ssh-add

4、主機連通性測驗
ansible webserver -m ping
ansible mysql -m ping
或者
ansible 192.168.2.4 -m ping
ansible 192.168.2.5 -m ping

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/274186.html
標籤:其他
