本文說明監控代管執行個體群組 (MIG) 中虛擬機器 (VM) 執行個體分配情形的優點、用途和程序。這些程序包括如何在 Cloud Monitoring 中查看、自訂及查詢 GCE MIG 執行個體分配監控資訊主頁。
如果 MIG 使用位置彈性在多個可用區中分配執行個體、執行個體彈性指定多個相容的機器類型,或同時使用這兩項功能,MIG 會根據即時資源可用性,動態選取及佈建執行個體。如要在所有 MIG 中觀察這個動態行為,可以使用 GCE MIG 執行個體分配監控資訊主頁。這個預先設定的資訊主頁會即時顯示執行個體在可用區和機型之間的分布情形。資訊主頁也會顯示這段期間內正在執行 (有效) 和未執行 (無效) 的執行個體,以及執行個體總數。舉例來說,您可以解讀資訊主頁指標,診斷容量分配、區域平衡和備援行為。
監控 MIG 中執行個體分配情形的好處
當 MIG 在區域群組中跨多個可用區部署執行個體,或是在執行個體彈性政策中指定多個機器類型和等級時,實際的位置和機器類型分配會根據資源可用性動態變化。
監控執行階段執行個體分配情形,有助於:
提高取得資源的機率並減輕容量限制:確認 MIG 在擴大時是否成功取得資源。在備援等級中建立執行個體,表示執行個體彈性政策可有效減輕暫時的容量限制。不過,如果群組持續無法達到目標大小,即使有這些備援機制也一樣,建議您擴大允許的機器類型或新增更多可用區,以減少日後發生資源可用性錯誤的機率。
驗證位置彈性和區域平衡:確認區域 MIG 是否如預期在各個區域之間平衡容量 (
EVEN或BALANCED),或觀察使用ANY或ANY_SINGLE_ZONE目標分配形狀時,容量如何在各個區域之間動態轉移。在成本和效能之間取得平衡:追蹤為具有執行個體彈性的 MIG 選取的機型,有助於進一步瞭解支出和效能,並尋找改善機會。舉例來說,如果執行個體持續提供高於工作負載需求的高效能,請考慮調查工作負載是否能容許優先使用成本較低的選項。或者,如果您發現效能問題,則可考慮優先使用高效能機器類型,而非將工作負載分散到更多機器上 (視可用性而定)。
如要進一步瞭解監控資訊主頁如何協助解決可觀測性問題,請參閱本文的「解讀資訊主頁」一節。
監控 MIG 執行個體分布
您可以透過下列任一方式,監控 MIG 中的執行個體分配情形:
使用 Cloud Monitoring 資訊主頁,以視覺化方式呈現執行個體分布情形。詳情請參閱本文的「監控資訊主頁簡介」。
以程式輔助方式查詢基礎指標:使用 PromQL 做為程式碼替代方案,將執行個體分配資料整合至自訂可觀測性資訊主頁或外部監控工具 (例如 Grafana)。詳情請參閱本文中的「使用 PromQL 以程式輔助方式查詢」。
監控資訊主頁簡介
Cloud Monitoring 會在「Google 服務」類別下提供預先設定的資訊主頁。如果是 MIG,GCE MIG 執行個體分配監控資訊主頁會提供下列四種專用圖表:
依可用區劃分的執行個體分布:圖表會顯示依可用區分組的執行個體數量,說明區域的彈性,以及區域的可用區分布。
依機型劃分的執行個體分布情形:這張圖表會依機型顯示執行個體數量,說明群組如何在不同機型和大小之間分配容量。
有效與無效的執行個體:圖表,顯示依有效或無效分組的執行個體數量。運作中的執行個體可正常運作並執行 (
RUNNING)。非運作中的執行個體未執行,但未遭刪除;這包括正在建立的執行個體 (PROVISIONING、STAGING)、已暫停的執行個體 (SUSPENDED),或已關機的執行個體 (STOPPED、TERMINATED)。執行個體總數:圖表顯示 MIG 在這段期間內的執行個體總數。
根據預設,資訊主頁會匯總專案中所有 MIG 的資料。如要查看單一 MIG,可以依 MIG 篩選 (instance_group)。如果專案在多個位置包含名稱相同的 MIG,請套用區域 (region) 或可用區 (zone) 篩選器,指定特定 MIG。
「GCE MIG Instance Distribution Monitoring」(GCE MIG 執行個體分配監控) 資訊主頁中的圖表,會使用標準 Compute Engine 系統中繼資料標籤和指標,例如 compute.googleapis.com/instance/cpu/utilization 和 metadata.system_labels.machine_type。Cloud Monitoring 會自動收集所有 Compute Engine 執行個體的系統指標和中繼資料標籤。如要在這個資訊主頁中查看執行個體分布、可用區、機型或狀態圖表,不需要在執行個體內安裝 Ops Agent 或設定自訂客層遙測。
必要的角色
-
如要取得使用 Google Cloud 控制台查看資訊主頁所需的權限,請要求管理員授予您專案的「Monitoring 檢視者 」(
roles/monitoring.viewer) IAM 角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。如要進一步瞭解角色,請參閱「使用 Identity and Access Management 控制存取權」。
查看及自訂資訊主頁
您可以從Google Cloud 控制台查看「GCE MIG Instance Distribution Monitoring」(GCE MIG 執行個體分配監控) 資訊主頁,然後視需要複製及自訂該資訊主頁,監控特定區域、可用區或 MIG。
如要查看預先設定的「GCE MIG Instance Distribution Monitoring」(GCE MIG 執行個體分配監控) 資訊主頁,請按照下列步驟操作:
在 Google Cloud 控制台中,前往「Monitoring」(監控) >「Dashboards」(資訊主頁) 頁面。
在「篩選器」中,搜尋「GCE MIG Instance Distribution Monitoring」資訊主頁,然後選取該資訊主頁。您也可以在「類型」選單 >「Google 服務」類別中找到這個資訊主頁。
您可以直接使用資訊主頁,也可以複製並進一步自訂。
選用:如要自訂資訊主頁,請先複製資訊主頁,然後按照下列步驟編輯:
如要複製,請按一下「複製資訊主頁」。
編輯複製的資訊主頁,並視需要修改名稱、圖表、套用篩選條件及設定自訂版面配置結構。
您可以在「類型」選單 >「自訂」類別中,查看複製或自訂的資訊主頁。
如要進一步瞭解如何自訂資訊主頁,請參閱 Cloud Monitoring 說明文件中的下列頁面:
如要修改各個圖表顯示的資料,請參閱更新小工具的查詢。
如要自訂資訊主頁,請參閱「複製 Google Cloud 服務資訊主頁來建立自訂資訊主頁」一文。
套用資訊主頁篩選器
GCE MIG 執行個體分配監控資訊主頁內建篩選器變數,可供您深入瞭解 MIG 的特定子集:
區域 (
region):篩選圖表,只顯示一或多個特定Google Cloud 區域的執行個體。區域 (
zone):篩選圖表,觀察區域分布情形,並確認執行個體是否平均分配,或容量是否在特定區域之間轉移。執行個體群組 (
instance_group):如果專案包含多個 MIG,請篩選圖表,只顯示單一 MIG。
如要在 Google Cloud 控制台中套用篩選條件,請按一下複製的資訊主頁頂端的「篩選器」按鈕,選取篩選條件屬性 (例如 region、zone 或 instance_group),然後選取所選值。
如要進一步瞭解如何使用篩選條件,請參閱 Cloud Monitoring 說明文件中的「在自訂資訊主頁中新增臨時篩選條件」。
設定事件註解
分析各區域和機型之間的執行個體分配變化時,設定生命週期事件或部署作業的註解,有助於將容量變化與特定作業活動建立關聯。舉例來說,您可以在圖表時間軸中加入註解,醒目顯示下列事件:
更新 MIG 設定,例如修改目標分配型態、
instanceSelections或rank順序。在群組中啟動滾動式更新或修復執行個體。
模擬或實際的區域服務中斷事件。
自動調度資源決策。
如要進一步瞭解可用的事件類型和如何新增註解,請參閱 Cloud Monitoring 說明文件中的下列頁面:
如要進一步瞭解可新增至資訊主頁的事件類型,請參閱「Compute Engine 事件類型」。
如要在資訊主頁圖表上新增註解或疊加事件標記,請參閱「設定資訊主頁以顯示事件」。
解讀資訊主頁
查看 MIG 執行個體分配資訊主頁時,請參考下列指引,回答常見的可觀測性問題,並解讀動態位置和機型行為。
為什麼我的執行個體會在特定可用區中執行,或在可用區之間轉移?
如果「依區域劃分的執行個體分布」圖表顯示區域性 MIG 的區域分布不均,或各位置的容量突然發生變化,請檢查下列位置彈性因素:
目標分配型態:確認您設定的目標分配型態。 如果 MIG 設定為
ANY或ANY_SINGLE_ZONE,MIG 會優先選擇容量或未使用的預留項目最容易取得的區域,而不是平均分配執行個體。如果 MIG 使用BALANCED,群組會嘗試在各區域之間維持執行個體數量平衡,但如果特定區域暫時出現容量不足的情況,可能會暫時將執行個體放在替代區域。區域容量重新分配:如果因區域性可用區服務中斷等事件,導致容量暫時不足,設定為高可用性的區域性 MIG 會自動在區域內的替代可用區中,尋找並分配替代執行個體。資訊主頁會反映這種位置彈性,顯示受影響區域的執行個體數量減少,而替代區域的執行個體數量則相應增加。
為什麼我的 MIG 是在備用機器類型上執行?
如果 MIG 使用執行個體彈性,且「依機器類型劃分的執行個體分配情形」圖表顯示,群組正在較低偏好設定 (較高排名值) 的機器類型上建立及執行執行個體,而非主要選取項目,請考慮下列潛在原因:
暫時的資源限制:如果主要機器類型需求量高或有暫時的資源限制,MIG 會自動改用次要選項,確保取得目標容量。即使偏好的機器類型再次可用,MIG 仍會繼續使用備援機器類型,不會主動切換回偏好的類型。
配額限制:確認 Google Cloud 專案在所選區域中,有足夠的 vCPU 和資源配額,可供偏好的機器系列使用。如果主要機型的配額用盡,MIG 會從可用的次要選項佈建。
詳情請參閱「MIG 如何選取機器類型」。
」一文。以程式輔助方式使用 PromQL 查詢
如要監控 MIG 中的執行個體分布情形,您也可以使用 Cloud Monitoring 的 PromQL,以程式輔助方式查詢基礎指標。透過程式輔助查詢,您可以將執行個體分配資料整合至自訂可觀測性資訊主頁或外部監控工具 (例如 Grafana)。您可以使用 PromQL 依可用區或機型查詢執行個體。
在程式碼編輯器中執行 PromQL 查詢,詳情請參閱下一節。
存取程式碼編輯器
您可以在 Google Cloud 控制台的下列頁面存取 PromQL:
- Metrics Explorer
- 建立資訊主頁時新增小工具
如要在使用 Metrics Explorer 時開啟程式碼編輯器,請執行下列操作:
-
前往 Google Cloud 控制台的 leaderboard「指標探索器」頁面:
如果您是使用搜尋列尋找這個頁面,請選取子標題為「Monitoring」的結果。
在查詢建立工具窗格的工具列中,選取「PromQL」PromQL按鈕 code。
在文字欄位中輸入查詢,然後按一下「執行查詢」。下列各節提供查詢範例。
如要進一步瞭解程式碼編輯器,請參閱 Cloud Monitoring 說明文件中的「使用程式碼編輯器編寫 PromQL」。
依區域查詢有效執行個體
如要依區域查詢有效執行個體,請在程式碼編輯器中執行下列查詢:
count by (zone) (compute_googleapis_com:instance_cpu_utilization{metadata_system_instance_group="YOUR_MIG_NAME"})
將 YOUR_MIG_NAME 替換為 MIG 的名稱。
依機型查詢有效執行個體
如要依機型查詢有效執行個體,請在程式碼編輯器中執行下列查詢:
count by (metadata_system_machine_type) (compute_googleapis_com:instance_cpu_utilization{metadata_system_instance_group="YOUR_MIG_NAME"})
將 YOUR_MIG_NAME 替換為 MIG 的名稱。
後續步驟
- 瞭解區域 MIG 的位置彈性。
- 瞭解執行個體彈性。
- 在 MIG 中新增執行個體彈性。
- 查看 MIG 中的執行個體彈性設定。
- 瞭解如何建立及管理自訂資訊主頁。