Ansible 內容導航器:Ansible 自動化管理的強大工具

文、猛鬼小紀
Ansible內容導航器簡介
Ansible內容導航器(Ansible Content Navigator)是用來開發與Red Hat Ansible 自動化平台相容的 Ansible 劇本、集合和角色。Ansible內容導航器是一個以命令列與內容創作者為中心的工具,具有文字型使用者介面,使用自動化內容導航器可執行下列工作:
👉 啟動並觀看工作內容和劇本
👉 以 JSON 格式察看已完成的工作內容或是儲存的劇本內容
👉 可瀏覽並檢視自動化執行環境
👉 呈現 Ansible 模組的文件和取出在劇本中使用的範例
👉 在命令列中接受大部分現有的 Ansible 命令和擴充功能
大部份Ansible 核心功能的指令,Ansible 內容導航器也都有相對應的操作模式,方便使用者快速從 Ansible的指令框架,延伸至Ansible 內容導航器。不過這樣方便的工具,只有使用Red Hat Ansible 自動化平台才能直接使用 dnf 安裝工具,從 Red Hat 軟體倉儲進行線上安裝的操作。
本文將介紹如何從Python的pip工具,來安裝Ansible內容導航器。
安裝流程
Ansible 內容導航器的實際運作指令為 ansible-navigator,而裝載這個指令是一個容器,名為 ee-supported-rhel8 或是 ee-minial-rhel8。當使用這個指令時,會將該容器啟動,進行指令的操作。
所以,在安裝 ansible-navigator 之前,需要安裝容器,如下圖所示:
當然也可以使用 Docker 這個容器引擎,其結果相同。
接下來,需要安裝 Python3-pip 這個協助 Python 進行軟體模組安裝的程式。Python3-pip 這個程式可以協助個別的使用者下載容器,也方便個別執行 ansible-navigator指令,安裝方式如下圖:
以上兩個工具都準備好之後,就可以安裝 ansible-navigator 這個主角工具。此時,先切至需要操作 ansible-navigator 的一般使用者帳號,再利用 Python3-pip 進行安裝的工作,如下圖所示:
安裝完成之後,利用echo 與 source指令,進行環境的設定,方便此時與下次登入系統時仍可以使用:
之後,可以利用 ansible-navigator 指令,來查看一下安裝的版本號碼:
查看完成之後,利用 ansible-navigator 指令,下載容器,如下圖所示:
執行後,會進入 ansible-navigator 的互動式操作畫面,利用 :<數字> 可以選擇想要查看的項目,例如:
按下 「:0」,可出現下列項目:
按下 「:1」,可出現下列項目:
此時,就可以看到該項目詳細的資料內容,如果要離開互動式操作介面,可使用 <ESC> 按鈕。
簡易的操作與使用
我們可以先編一個 inventory 檔案,將所要管理的主機,進行分群分類,如下圖所示:
編好之後,利用 ansible-navigator 指令,可以查看一下主機分群分類的內容,如下圖所示:
接下來,編寫一個測試用的 YAML 檔案,名為 ping.yml:
在進行實際的執行之前,可以利用 ansible-navigator 的 --syntax-check進行YAML內容格式的檢測與除錯,減少在真正運行時的錯誤:
之後,亦可以利用 --check 參數,進行假執行:
最後,就拿掉 --syntax-check 與 --check 參數進行真正的執行:
結論
Ansible是管理大量網路作業系統與設備最好的工具,而 Ansible內容導航器更是延伸自 Ansible,進而擴展更多的功能,提供管理工作的效率。
當然,想要更完整的學習Ansible內容,則需要更完整的教學內容與練習的工具,才能達成,推薦大家可以到 Red Hat 官方授權的聯成電腦教育訓練中心,進行專業的學習。聯成電腦教育訓練中心擁有專業的師資與優良的教學環境,將可協助您完成Red Hat 各項專業技能的訓練與考試。
FB粉絲團:https://www.facebook.com/lccnetzone
YouTube頻道:https://www.youtube.com/user/LccnetTaiwan
痞客邦Blog:http://lccnetvip.pixnet.net/blog