5 個 Ansible 運維任務
在這個 DevOps 世界中,看起來開發(Dev)這一半成為了關注的焦點,而運維(Ops)則是這個關系中被遺忘的另一半。這幾乎就好像是領頭的開發告訴尾隨的運維做什么,幾乎所有的“運維”都是開發說要做的。因此,運維被拋到后面,降級到了替補席上。
我想看到更多的 OpsDev。因此,讓我們來看看 Ansible 在日常的運維中可以幫助你什么。

Job templates
我選擇在 Ansible Tower 中展示這些方案,因為我認為用戶界面 (UI) 可以增色大多數的任務。如果你想模擬測試,你可以在 Tower 的上游開源版本 AWX 中測試它。
管理用戶
在大規模環境中,你的用戶將集中在活動目錄或 LDAP 等系統中。但我敢打賭,仍然存在許多包含大量的靜態用戶的全負荷環境。Ansible 可以幫助你將這些分散的環境集中到一起。社區已為我們解決了這個問題。看看 Ansible Galaxy 中的 users 角色。
這個角色的聰明之處在于它允許我們通過數據管理用戶,而無需更改運行邏輯。

User data
通過簡單的數據結構,我們可以在系統上添加、刪除和修改靜態用戶。這很有用。
管理 sudo
提權有 多種形式 ,但最流行的是 sudo 。通過每個 user、group 等離散文件來管理 sudo 相對容易。但一些人對給予特權感到緊張,并傾向于有時限地給予提權。因此 下面是一種方案 ,它使用簡單的 at 命令對授權訪問設置時間限制。

Managing sudo
管理服務
給入門級運維團隊提供 菜單 以便他們可以重啟某些服務不是很好嗎?看下面!

Managing services
管理磁盤空間
這有 一個簡單的角色 ,可在特定目錄中查找字節大于某個大小的文件。在 Tower 中這么做時,啟用 回調 有額外的好處。想象一下,你的監控方案發現文件系統已超過 X% 并觸發 Tower 中的任務以找出是什么文件導致的。

Managing disk space
調試系統性能問題
這個角色 相當簡單:它運行一些命令并打印輸出。細節在最后輸出,讓你 —— 系統管理員快速瀏覽一眼。另外可以使用 正則表達式 在輸出中找到某些條件(比如說 CPU 占用率超過 80%)。

Debugging system performance
總結
我已經錄制了這五個任務的簡短視頻。你也可以在 Github 上找到 所有代碼 !