Ansible – 如何 Grep (ps -few) 並殺死遠程主機上運行的任何 linux 進程?

已發表: 2022-02-24

Ansible – 如何 Grep (ps -few) 和殺死遠程主機上運行的任何 linux 進程

Ansible 是一個非常了不起的系統管理工具。 過去幾週,我們在 Ansible 上發表了許多文章,內容涉及如何在遠程主機上複製文件、如何在遠程主機上執行命令、如何在遠程主機上安裝 Java、Python 等等。

在本教程中,我們將介紹如何 grep 在遠程主機上運行的 java 進程並使用簡單的 ansible playbook 殺死該遠程進程。

以下是我們將在本教程中執行的步驟:

  • 在遠程主機上,運行 CrunchifyAlwaysRunningProgram.java
    • 遵循如何在 Java 中永遠運行程序的教程
    • 使用nohup java CrunchifyAlwaysRunningProgram &運行 java 程序

如何檢查進程是否在遠程主機上啟動並運行?

Ansible - 如何在遠程主機上運行 Grep (ps -few) 和終止進程?

簽出進程ID 18174

  • 創建具有遠程主機 IP 的文件crunchify-hosts文件
  • 創建文件crunchify-grep-kill-process.yml具有用於 grep 和殺死 java 進程的 ansible 任務
  • 運行命令:ansible-playbook -i ./crunchify-hosts crunchify-grep-kill-process.yml
  • 在 macOS 終端控制台上檢查結果

crunchify-hosts 文件

文件包含遠程 IP 地址和憑據,這將有助於 ansible 無需密碼即可登錄。

crunchify-grep-kill-process.yml 文件

這裡 ansible playbook 文件正在獲取所有 java 進程,使用簡單的kill -9命令將其殺死。

執行 Ansible 劇本:

如何驗證?

只需嘗試在遠程主機上再次 grep 進程。

如您所見,您不會在列表中看到process ID 18174 ,並且沒有任何 Java 進程正在運行。

而已。

這是使用 Ansible grep Java 進程和殺死的最簡單方法。 如果您在運行此Ansible playbook時遇到任何問題,請告訴我。