監控 VM 上的程序數量

本文說明如何使用 Google Cloud 控制台建立快訊政策,監控虛擬機器 (VM) 上符合指定條件的執行中程序數量。這類快訊政策有時也稱為「程序健康狀態」快訊政策。舉例來說,您可以計算根使用者啟動的程序數量。 您也可以計算呼叫指令包含特定字串的程序數量。快訊政策會在程序數量超過或低於門檻時通知您。如要瞭解可監控的程序,請參閱「受監控的程序」。

這項內容不適用於以記錄檔為準的快訊政策。 如要瞭解記錄警告政策 (當記錄中出現特定訊息時,系統會通知您),請參閱「監控記錄」。

事前準備

  1. 如要取得必要權限,以便使用 Google Cloud 控制台建立及修改警報政策,請要求管理員授予您專案的 Monitoring 編輯者 (roles/monitoring.editor) 身分與存取權管理角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。

    您或許還可透過自訂角色或其他預先定義的角色取得必要權限。

    如要進一步瞭解 Cloud Monitoring 角色,請參閱「使用 Identity and Access Management 控制存取權」。

  2. 請務必熟悉快訊政策的一般概念。如要瞭解這些主題,請參閱「快訊總覽」。

  3. 設定要用來接收任何快訊的通知管道。為確保備援,我們也建議您建立多種通知管道。如需這些步驟的相關資訊,請參閱「建立及管理通知管道」。

  4. 確認您已在要監控的 VM 上安裝作業套件代理程式。詳情請參閱 Google Cloud Observability 代理程式

建立快訊政策

如要使用 Cloud Monitoring API 建立快訊政策,監控 VM 上執行的程序數量,篩選器運算式必須指定時間序列選取器。如需指定這個選取器的 JSON 檔案範例,請參閱「程序健康狀態政策」。

如要建立快訊政策,監控 VM 上執行的程序數量,請按照下列步驟操作:

  1. 前往 Google Cloud 控制台的 「Alerting」(警告) 頁面

    前往「Alerting」(快訊)

    如果您是使用搜尋列尋找這個頁面,請選取子標題為「Monitoring」的結果

  2. 選取「建立政策」
  3. 選取「?」「選取指標」部分標題,然後在工具提示中選取「直接篩選器模式」

  4. 輸入 Monitoring 篩選條件。

    舉例來說,如要計算名稱包含 nginx 的 Compute Engine VM 執行個體上執行的程序數,請輸入下列內容:

    select_process_count("monitoring.regex.full_match(\".*nginx.*\")")
    resource.type="gce_instance"
    

    如需語法資訊,請參閱下列資源:

  5. 完成警告政策。您必須設定條件觸發、通知、說明文件和政策名稱,然後按一下「建立政策」

    詳情請參閱建立指標閾值快訊政策

受監控的程序

並非系統中執行的所有程序都能透過程序健康狀態條件監控。這項條件會使用套用至叫用程序的指令列的規則運算式,選取要監控的程序。如果無法使用指令列欄位,就無法監控程序。

如要判斷程序是否可透過程序健康狀態條件監控,其中一個方法是查看作用中的程序。舉例來說,在 Linux 系統上,您可以使用 ps 指令:

    ps aux | grep nfs
    USER      PID  %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
    root      1598  0.0  0.0      0     0 ?        S<   Oct25   0:00 [nfsd4]
    root      1639  0.0  0.0      0     0 ?        S    Oct25   2:33 [nfsd]
    root      1640  0.0  0.0      0     0 ?        S    Oct25   2:36 [nfsd]

如果 COMMAND 項目以方括號括住 (例如 [nfsd]),則無法取得該程序的指令列資訊。在這種情況下,您無法使用 Cloud Monitoring 監控程序。