如何在 CentOS 8/RHEL 8 上安裝 Ansible(自動化工具)
Ansible 是給 Linux 系統管理員使用的出色自動化工具。它是一種開源配置工具,能讓系統管理員可以從一箇中心節點(即 Ansible 伺服器)管理數百臺伺服器。將 Ansible 與 Puppet、Chef 和 Salt 等類似工具進行比較時,它是首選的配置工具,因為它不需要任何代理,並且可以工作在 SSH 和 python 上。
在本教程中,我們將學習如何在 CentOS 8 和 RHEL 8 系統上安裝和使用 Ansble。
Ansible 實驗環境資訊:
- 最小化安裝的 CentOS 8 / RHEL 8 伺服器(192.168.1.10),且有網際網路連線
- 兩個 Ansible 節點 - Ubuntu 18.04 LTS (192.168.1.20) 和 CentOS 7 (192.168.1.30)
CentOS 8 上的 Ansible 安裝步驟
Ansible 包不在 CentOS 8 預設的軟體包倉庫中。因此,我們需要執行以下命令啟用 EPEL 倉庫:
[root@linuxtechi ~]$ sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm -y
啟用 epel 倉庫後,執行以下 dnf
命令安裝 Ansible:
[root@linuxtechi ~]$ sudo dnf install ansible
上面命令的輸出:
成功安裝 Ansible 後,執行以下命令驗證它的版本:
[root@linuxtechi ~]$ sudo ansible --version
上面的輸出確認在 CentOS 8 上安裝完成。
讓我們看下 RHEL 8 系統。
RHEL 8 上的 Ansible 安裝步驟
如果你有有效的 RHEL 8 訂閱,請使用以下訂閱管理器命令啟用 Ansble 倉庫:
[root@linuxtechi ~]$ sudo subscription-manager repos --enable ansible-2.8-for-rhel-8-x86_64-rpms
啟用倉庫後,執行以下 dnf
命令安裝 Ansible:
[root@linuxtechi ~]$ sudo dnf install ansible -y
安裝 Ansible 及其依賴包後,執行以下命令來驗證它的版本:
[root@linuxtechi ~]$ sudo ansible --version
在 CentOS 8 / RHEL 8 上通過 pip3 安裝 Ansible 的可選方法
如果你希望使用 pip
(Python 的包管理器)安裝 Ansible,請首先使用以下命令安裝 pyhton3 和 python3-pip 包:
[root@linuxtechi ~]$ sudo dnf install python3 python3-pip -y
安裝 python3 後,執行以下命令來驗證它的版本:
[root@linuxtechi ~]$ python3 -V
Python 3.6.8
[root@linuxtechi ~]$
用下面的 pip3
命令安裝 Ansible:
[root@linuxtechi ~]$ pip3 install ansible --user
輸出:
上面的輸出確認 Ansible 已成功使用 pip3
安裝。讓我們看下如何使用 Ansible。
如何使用 Ansible 自動化工具?
當我們使用 yum
或 dnf
命令安裝 Ansible 時,它的配置檔案、清單檔案和角色目錄會自動在 /etc/ansible
資料夾下建立。
讓我們新增一個名稱為 labservers
的組,並在 /etc/ansible/hosts
檔案中給該組新增上述的 Ubuntu 18.04 和 CentOS 7 系統的 IP 地址:
[root@linuxtechi ~]$ sudo vi /etc/ansible/hosts
…
[labservers]
192.168.1.20
192.168.1.30
…
儲存並退出檔案。
更新清單檔案(/etc/ansible/hosts
)後,將使用者的 ssh 公鑰放到屬於 labservers
組的遠端系統。
讓我們首先使用 ssh-keygen
命令生成本地使用者的公鑰和私鑰:
[root@linuxtechi ~]$ ssh-keygen
現在使用以下命令在 Ansible 伺服器及其客戶端之間交換公鑰:
[root@linuxtechi ~]$ ssh-copy-id root@linuxtechi
[root@linuxtechi ~]$ ssh-copy-id root@linuxtechi
現在,讓我們嘗試幾個 Ansible 命令,首先使用 ping
模組驗證 Ansible 伺服器與客戶端的連線:
[root@linuxtechi ~]$ ansible -m ping "labservers"
注意: 如果我們沒有在上面的命令中指定清單檔案,那麼它將引用預設主機檔案(即 /etc/ansible/hosts
)。
輸出:
讓我們使用 Ansible shell 命令檢查每個客戶端的核心版本:
[root@linuxtechi ~]$ ansible -m command -a "uname -r" "labservers"
192.168.1.30 | CHANGED | rc=0 >>
4.15.0-20-generic
192.168.1.20 | CHANGED | rc=0 >>
3.10.0-327.el7.x86_64
[root@linuxtechi ~]$
使用以下命令列出清單檔案中的所有主機:
[root@linuxtechi ~]$ ansible all -i /etc/ansible/hosts --list-hosts
hosts (4):
192.168.100.1
192.168.100.10
192.168.1.20
192.168.1.30
[root@linuxtechi ~]$
使用以下 Ansible 命令僅列出 labservers
組中的主機:
root@linuxtechi ~]$ ansible labservers -i /etc/ansible/hosts --list-hosts
hosts (2):
192.168.1.20
192.168.1.30
[root@linuxtechi ~]$
本文就是這些了,我們成功演示瞭如何在 CentOS 8 和 RHEL 8 系統中安裝和使用 Ansible。請分享你的反饋和意見。
via: https://www.linuxtechi.com/install-ansible-centos-8-rhel-8/
作者:Pradeep Kumar 選題:lujun9972 譯者:geekpi 校對:wxy
訂閱“Linux 中國”官方小程式來檢視
相關文章
- 如何在 CentOS 8 和 RHEL 8 系統上安裝和使用 AnsibleCentOS
- 如何在 CentOS 8 / RHEL 8 上安裝 VirtualBox 6.0CentOS
- 如何在 CentOS 8/RHEL 8 上安裝和使用 CockpitCentOSKPI
- 如何在 CentOS 8/RHEL 8 上安裝和配置 Nagios CoreCentOSiOS
- 如何在 Centos 8 / RHEL 8 上安裝和配置 VNC 伺服器CentOSVNC伺服器
- CentOS 8/RHEL 8 REMI 倉庫安裝教程CentOSREM
- Centos8 安裝並使用Ansible(二)CentOS
- Centos8 安裝並使用Ansible(一)CentOS
- 如何在 CentOS 8 和 RHEL 8 伺服器上啟用 EPEL 倉庫CentOS伺服器
- 如何在 Centos8 中安裝 Lynis審計工具CentOS
- 如何在 RHEL8 /CentOS8 上建立多節點 Elastic stack 叢集CentOSAST
- 如何在 CentOS、RHEL 和 Fedora 上安裝 DHCP 服務CentOS
- 如何在 CentOS8/RHEL8 中配置 Rsyslog 伺服器CentOS伺服器
- CentOS8 安裝adb除錯工具CentOS除錯
- 如何在 CentOS 8 上安裝和配置 Postfix 郵件伺服器CentOS伺服器
- 如何在Centos8中安裝GitLab-CECentOSGitlab
- 如何在 CentOS 7 / RHEL 7 終端伺服器上安裝 KVMCentOS伺服器
- centos 安裝 jdk 8CentOSJDK
- PXE 基於網路自動安裝CentOS 6/7/8CentOS
- Centos8 中安裝 Lynis審計工具CentOS
- CentOS 8 和 RHEL 8 伺服器上啟用 EPEL 倉庫方法CentOS伺服器
- RHEL8&CentOS8配置IP地址和DNSCentOSDNS
- 教你如何在Centos8-stream安裝PostgreSQL13CentOSSQL
- 如何在CentOS 8中安裝OpenLiteSpeed Web伺服器CentOSWeb伺服器
- 在Centos8上安裝和使用curlCentOS
- RHEL/CentOS/Oracle Linux7/8版本安裝Openonload驅動問題處理CentOSOracleLinux
- Ansible自動化部署工具-role模式安裝filebeat實際案例分析模式
- centos安裝java8CentOSJava
- centos安裝jdk8CentOSJDK
- centos 8定製安裝CentOS
- CentOS 8 安裝圖解CentOS圖解
- 安裝Centos8 LinuxCentOSLinux
- centos8 安裝zabbixCentOS
- CentOS8安裝HTopCentOS
- 在 Centos/RHEL 6.X 上安裝 WettyCentOS
- Ansible自動化運維工具運維
- Centos8安裝k8s1.23.9CentOSK8S
- centos8 中安裝texinfoCentOS