知識瞭解:
Ansible 是給 Linux 系統管理員使用的出色自動化工具。它是一種開源配置工具,能讓系統管理員可以從一箇中心節點(即 Ansible 服務器)管理數百臺服務器。將 Ansible 與 Puppet、Chef 和 Salt 等類似工具進行比較時,它是首選的配置工具,因爲它不需要任何代理,並且可以工作在 SSH 和 python 上。
在本教程中,我們將學習如何在 CentOS 8 系統上安裝 Ansible。
一、安裝ansible
1.Ansible 包不在 CentOS 8 默認的軟件包倉庫中。因此,我們需要執行以下命令啓用 EPEL倉庫
dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm -y
2.啓用 epel 倉庫後,執行以下 dnf命令安裝 Ansible
dnf -y install ansible
3.查看ansible版本
ansible --version
安裝完成
2.免密登錄
1.當我們使用 yum 或 dnf 命令安裝 Ansible 時,它的配置文件、清單文件和角色目錄會自動在/etc/ansible 文件夾下創建。
添加一個名稱爲 webserver的組,並在/etc/ansible/hosts 文件中給該組添加上述的centos8系統的 IP 地址(主192.168.137.134、從192.168.137.135)
vim /etc/ansible/hosts
vim /etc/ansible/ansible.cfg
打開註釋
host_key_checking = False
log_path = /var/log/ansible.log
module_name = shell
2.將用戶的 ssh 公鑰放到屬於 webservers 組的遠程系統。
首先使用 ssh-keygen命令生成本地用戶的公鑰和私鑰,一直回車
ssh-keygen
公鑰和私鑰都在/root/.ssh/下面
在134主機上覆制一份公鑰,命名爲authorized_keys
cd ~/.ssh
cp id_rsa.pub authorized_keys
複製一份公鑰到135從機上
ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]
測試驗證ssh
ssh 192.168.137.135
退出遠程登錄
exit
三、ansible驗證
Ansible命令格式 ansible <hosts> [options]
控制檯輸出hello world
ansible all -a “/bin/echo hello world”
ping 用來測試主機的連通性
ansibe all -m ping