如要監控串流管道健康狀態和資源消耗情形,但不想在 Cloud Monitoring 手動設定政策,可以在 Dataflow 啟用立即可用的警告。Turnkey 警告提供一組預先設定的建議警告政策,您可以在工作啟動時啟用。
這項功能提供以下好處:
- 即時掌握狀況:自動追蹤待處理項目處理時間和 vCPU 成長等重要串流指標,無須手動設定。
- 標準化監控:快速將基準警告政策套用至新的和現有的正式環境工作負載。
- 自訂快訊:調整預設快訊門檻、停用個別政策,或在套件中新增自訂快訊政策。
您隨時可以在 Cloud Monitoring 中自訂這些預設政策,或將自訂警告政策與 Turnkey 警告套件整合。
必要條件
如要使用即時快訊,專案必須符合下列規定:
通知管道:您必須至少設定一個通知管道 (例如電子郵件、Slack 或 PagerDuty)。建議您設定重要聯絡人,確保快訊能傳送給適當的相關人員。Dataflow 服務不會強制執行這項規定。詳情請參閱「建立及管理通知管道」。
權限:Dataflow 服務帳戶 (P4SA) 必須具備特定 IAM 權限,才能代您建立及管理這些政策:
monitoring.alertPolicies.getmonitoring.alertPolicies.listmonitoring.alertPolicies.createmonitoring.alertPolicies.updatemonitoring.alertPolicies.delete
如果是新專案,系統會自動新增這些權限。如果是現有專案,您可能需要手動為 P4SA 帳戶設定這些權限。
更新 P4SA 權限
Dataflow 服務代理 (通常稱為 P4SA,或個別產品、個別專案服務帳戶) 是自動管理的服務帳戶,會在您啟用 Dataflow API 時建立。電子郵件地址格式如下:
service-PROJECT_NUMBER@dataflow-service-producer-prod.
如要更新 P4SA,您必須具備 resourcemanager.projects.setIamPolicy 權限,或包含這項權限的角色,例如專案 IAM 管理員 (roles/resourcemanager.projectIamAdmin)。
如要使用 Google Cloud 控制台授予必要角色,請按照下列步驟操作:
前往 Google Cloud 控制台的「IAM」(身分與存取權管理) 頁面。
選取專案。
勾選「包含 Google 提供的角色授予項目」核取方塊。
在主體清單中,找出 Dataflow 服務代理 (
service-PROJECT_NUMBER@dataflow-service-producer-prod.或具備「Cloud Dataflow 服務代理」角色) 所在的資料列。在該列中,按一下 「Edit principal」(編輯主體)。
在「Edit permissions」(編輯權限) 窗格中,按一下 「Add another role」(新增其他角色)。
在「Select a role」(請選擇角色) 清單中,選取「Monitoring Editor」(Monitoring 編輯者) (
roles/monitoring.editor)。按一下 [儲存]。權限更新可能需要幾分鐘才會生效。
啟用現成快訊
您可以使用 gcloud CLI,為工作啟用 Turnkey 快訊。
使用 gcloud CLI 啟用快訊
提交工作時,請新增下列其中一個旗標,啟用或停用這項功能:
--enable-turnkey-alerts--no-enable-turnkey-alerts
如果服務帳戶缺少必要權限,CLI 會拒絕要求並顯示缺少的權限。詳情請參閱「必要條件」。
工作更新後,Turnkey 快訊設定仍會保留。更新工作時,系統會保留先前的 Turnkey 快訊設定,因此除非您想變更設定,否則不必再次指定 --enable-turnkey-alerts 或 --no-enable-turnkey-alerts 旗標。
預設政策套件
Turnkey 警告包含兩項主要政策,專為一般串流工作負載設計,著重於處理時間和資源使用率等即時 KPI。Google 提供的政策會加上 Default Policy: 前置字元,方便識別,但服務會以標籤做為主要 ID。
客戶會自動註冊預設政策套件中的所有政策。如有需要,您可以在 Cloud Monitoring 警告中停用特定預設政策。
| 政策名稱 | 基本指標 | 預設門檻 | 理由 |
|---|---|---|---|
| 預設政策:預估待處理工作量 | job/estimated_backlog_processing_time |
30 分鐘 | 預估清除目前待處理項目所需的時間。如果待處理項目超過 30 分鐘,代表工作進度緩慢。 |
| 預設政策:vCPU 成長政策 | job/current_num_vcpus |
1 小時平均 vCPU 用量比 7 天平均用量高出 5 倍以上 | 監控 vCPU 數量的相對變化,協助評估非預期的工作費用。 |
政策生命週期
- Beta 版政策:這些政策的名稱前置字串為
BETA,可能會隨著門檻調整而變更或刪除。 - 正式發布版政策:政策穩定後,系統會移除
BETA前置字元。
自訂及管理快訊
Turnkey 警示可做為起點。建議您根據特定業務需求自訂這些設定。
- 在 Google Cloud 控制台中,依序前往「Cloud Monitoring」>「Alerting」(快訊)。
- 找出政策 (例如「Default Policy: Estimated Backlog」)。
- 將門檻值調整為偏好的值。
建立自訂政策
只要在 Cloud Monitoring 警告政策中加入 goog-turnkey-alerts 標籤,即可將該政策新增至 Turnkey 警告套件。這樣一來,您就能一併管理自訂的業務專屬規則和預設套件。
停用或刪除警告政策
您可以使用 Monitoring 停用或刪除特定預設政策。停用政策後,Monitoring 會停止評估政策條件,也不會建立新事件,但會保留政策設定。政策一經刪除,就會從專案中永久移除。如要進一步瞭解如何管理政策生命週期,請參閱「管理警告政策」和「停用警告政策」。
疑難排解
| 問題 | 解析度 |
|---|---|
| PERMISSION_DENIED | 請確認 Dataflow P4SA 具備「必要條件」中列出的必要 monitoring.alertPolicies.* 權限。如果 P4SA 缺少這些角色,管道仍會成功啟動,但指令列輸出內容和工作記錄中會顯示 PERMISSION_DENIED 錯誤,指出無法建立預設快訊。 |
| 未收到警示 | 檢查事件,判斷是否符合警告觸發條件。您可以在 Monitoring 中查看快訊觸發和事件時間軸 (請參閱「查看事件和活動」)。 |
| 重複的政策 | 如果多項政策共用 goog-turnkey-alerts 標籤和相同的指標設定,通常就會發生這種情況。Dataflow 會檢查是否有重疊的標籤和指標,而不是完全相符的名稱。請檢查政策,並移除多餘設定的標籤。 |