5 個 Ansible 運維任務
在這個 DevOps 世界中,看起來開發(Dev)這一半成為了關注的焦點,而運維(Ops)則是這個關係中被遺忘的另一半。這幾乎就好像是領頭的開發告訴尾隨的運維做什麼,幾乎所有的「運維」都是開發說要做的。因此,運維被拋到後面,降級到了替補席上。
我想看到更多的 OpsDev。因此,讓我們來看看 Ansible 在日常的運維中可以幫助你什麼。
![Job templates](/data/attachment/album/201909/06/134315p4j9rj85j2ricztj.png "Job templates")
我選擇在 Ansible Tower 中展示這些方案,因為我認為用戶界面 (UI) 可以增色大多數的任務。如果你想模擬測試,你可以在 Tower 的上游開源版本 AWX 中測試它。
管理用戶
在大規模環境中,你的用戶將集中在活動目錄或 LDAP 等系統中。但我敢打賭,仍然存在許多包含大量的靜態用戶的全負荷環境。Ansible 可以幫助你將這些分散的環境集中到一起。社區已為我們解決了這個問題。看看 Ansible Galaxy 中的 users 角色。
這個角色的聰明之處在於它允許我們通過數據管理用戶,而無需更改運行邏輯。
![User data](/data/attachment/album/201909/06/134319qgx28xmh42kkxd4m.png "User data")
通過簡單的數據結構,我們可以在系統上添加、刪除和修改靜態用戶。這很有用。
管理 sudo
提權有多種形式,但最流行的是 sudo。通過每個 user
、group
等離散文件來管理 sudo 相對容易。但一些人對給予特權感到緊張,並傾向於有時限地給予提權。因此下面是一種方案,它使用簡單的 at
命令對授權訪問設置時間限制。
![Managing sudo](/data/attachment/album/201909/06/134321mazkpfkpyk8kvhta.png "Managing sudo")
管理服務
給入門級運維團隊提供菜單以便他們可以重啟某些服務不是很好嗎?看下面!
![Managing services](/data/attachment/album/201909/06/134323pz2hh6vhugia6v63.png "Managing services")
管理磁碟空間
這有一個簡單的角色,可在特定目錄中查找位元組大於某個大小的文件。在 Tower 中這麼做時,啟用回調有額外的好處。想像一下,你的監控方案發現文件系統已超過 X% 並觸發 Tower 中的任務以找出是什麼文件導致的。
![Managing disk space](/data/attachment/album/201909/06/134325ss6usssysszws6uy.png "Managing disk space")
調試系統性能問題
這個角色相當簡單:它運行一些命令並列印輸出。細節在最後輸出,讓你 —— 系統管理員快速瀏覽一眼。另外可以使用 正則表達式 在輸出中找到某些條件(比如說 CPU 佔用率超過 80%)。
![Debugging system performance](/data/attachment/album/201909/06/134332pxb8i0jm0hvjibcb.png "Debugging system performance")
總結
我已經錄製了這五個任務的簡短視頻。你也可以在 Github 上找到所有代碼!
via: https://opensource.com/article/19/8/ops-tasks-ansible
作者:Mark Phillips 選題:lujun9972 譯者:geekpi 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive