在 Google Distributed Cloud (GDC) 氣隙環境中收集已部署工作負載的指標後,即可開始分析。如要分析指標,您可以在資訊豐富的 Grafana 資訊主頁上以視覺化方式呈現及篩選指標,也可以使用 curl 工具直接從 Cortex 存取指標,以便彈性編寫指令碼及自動化。
本頁提供詳細操作說明,說明如何使用 Grafana 使用者介面和 Cortex 端點的 curl 工具查詢及顯示指標,進而深入瞭解工作負載效能。
您可以透過下列兩種方式存取指標:
- Grafana 資訊主頁:透過 CPU 使用率、儲存空間用量和網路活動等重要指標的直覺式視覺化呈現方式,探索趨勢並找出異常情況。Grafana 提供簡單易用的介面,方便您在資訊主頁中篩選及分析工作負載資料。
- Cortex 端點:如要進行更進階的用途,請使用指令列上的
curl工具,直接查詢專案的 Cortex 執行個體。Cortex 會儲存專案的 Prometheus 指標,並提供 HTTP 端點供程式存取。有了這項存取權,您就能匯出資料、自動執行工作,以及建構自訂整合功能。
事前準備
如要在 Grafana 使用者介面查詢及顯示指標,請要求安全管理員授予您預先定義的「專案 Grafana 檢視者」或「Grafana 檢視者」角色。視您需要的存取層級和權限而定,您可能會在根管理叢集或 Management API 伺服器的 infra-obs 專案中取得 Grafana 角色。
或者,如要取得從 Cortex 端點查詢指標所需的權限,請要求安全管理員在根管理員叢集或管理 API 伺服器的 infra-obs 專案中,授予您 Cortex Prometheus 檢視者角色。
如要進一步瞭解這些角色,請參閱「準備 IAM 權限」。
取得及篩選指標
選取下列其中一種方法,即可建構查詢、以圖表呈現趨勢,以及從專案工作負載中篩選指標:
Grafana 資訊主頁
本節說明如何使用 Grafana 資訊主頁存取指標。
找出 Grafana 端點
下列網址是infra-obs專案或根管理員叢集的 Grafana 端點:
infra-obs專案的 Grafana 端點:https://GDC_URL/infra-obs/grafana將 GDC_URL 替換為 GDC 中機構的網址。
根管理員叢集的 Grafana 端點:
https://ROOT_ADMIN_CLUSTER_URL/grafana將 ROOT_ADMIN_CLUSTER_URL 替換為 GDC 中根管理員叢集的網址。
在 Grafana 使用者介面中查看指標
在 Grafana 使用者介面中擷取指標:
- 在 GDC 控制台中選取專案。
- 在導覽選單中,依序選取「Operations」>「Monitoring」。
按一下「在 Grafana 中查看所有項目」。
新頁面會開啟 Grafana 端點,並顯示使用者介面。
在使用者介面中,按一下導覽選單中的「探索」,開啟「探索」頁面。
在「探索」列的選單中,根據您的領域類型選取資料來源,以擷取指標:
單一可用區的宇宙:選取「prometheus」,即可顯示宇宙單一可用區的指標。
多區域宇宙:Grafana 可以連線至不同區域,並顯示跨區域資料。選取「指標」ZONE_NAME,即可顯示宇宙中任何區域的指標,不論您登入的區域為何。
此外,如要在單一資訊主頁中顯示跨區域資料,並在查詢中新增多個區域,請選取「混合」做為資料來源。
輸入查詢,使用 PromQL (Prometheus 查詢語言) 運算式搜尋指標。你可以透過下列任一方式完成這個步驟:
- 從「指標」和「標籤篩選器」選單中,為查詢選取指標和標籤。 按一下「新增」,即可在查詢中新增更多標籤。然後按一下「執行查詢」。
- 直接在「指標」文字欄位中輸入查詢,然後按下 Shift+Enter 鍵執行查詢。
頁面會顯示符合查詢條件的指標。

圖 1. 從 Grafana 使用者介面查詢指標的選單選項。
如圖 1 所示,選取「prometheus」選項後,系統會顯示介面,讓您從 Grafana 建立查詢來擷取指標。
如需可用於查詢指標的標籤值示例,請參閱「範例查詢和標籤」。
Cortex 端點
本節說明如何使用 Cortex 存取指標。
找出 Cortex 端點
以下網址是專案 Cortex 執行個體的端點:
https://GDC_URL/infra-obs/cortex/prometheus/
將 GDC_URL 替換為貴機構在 GDC 中的網址。
驗證 curl 要求
- 下載並安裝 gdcloud CLI。
設定 gdcloud
core/organization_console_url屬性:gdcloud config set core/organization_console_url https://GDC_URL-
gdcloud auth login 使用使用者名稱和密碼進行驗證並登入。
登入成功後,您可以使用
gdcloud auth print-identity-token指令,在 curl 要求中加入授權標頭。詳情請參閱 gdcloud auth。
呼叫 Cortex 端點
如要使用 curl 工具連上 Cortex 端點,請完成下列步驟:
- 驗證
curl要求。 使用
curl呼叫 Cortex 端點,並使用標準 Prometheus HTTP API (https://prometheus.io/docs/prometheus/latest/querying/api/) 擴充網址,以查詢指標。以下是
curl要求範例:curl https://GDC_URL/infra-obs/cortex/prometheus/api/v1/query?query=my_metric{cluster="my-cluster"}&time=2015-07-01T20:10:51.781Z \ -H "Authorization: Bearer $(gdcloud auth print-identity-token \ --audiences=https://GDC_URL)"執行指令後,您會取得輸出內容。API 回應採用 JSON 格式。
查詢和標籤範例
您可以透過指標名稱和標籤的鍵/值組合查詢指標。PromQL 查詢的語法如下:
metric_name{label_one="value", label_two="value"}
標籤可讓您區分指標的特徵。這樣一來,容器作者就能讓工作負載產生指標,並新增標記來篩選這些指標。
舉例來說,您可以建立 api_http_requests_total 指標,計算收到的 HTTP 要求數量。然後,您可以在這項指標上新增 request_method 標籤,該標籤會採用 POST、GET 或 PUT 值。因此,您會為可能收到的每種要求類型建立三個指標串流。在本例中,如要找出 HTTP GET 要求數量,請執行下列查詢:
api_http_requests_total{request_method="GET"}
如要進一步瞭解指標和標籤,請參閱 https://prometheus.io/docs/practices/naming/。
以下是 MonitoringTarget 自訂資源新增的部分預設標籤。您可以使用這些預設標籤查詢指標:
_gdch_service:服務的簡短名稱。cluster:叢集名稱。container_name:Pod 內的容器名稱。namespace_name:您的專案命名空間。pod_name:Pod 名稱前置字串。
下表說明 Prometheus 自動新增的標籤:
| 指標標籤 | 說明 |
|---|---|
job |
用於收集指標的擷取作業內部名稱。由 MonitoringTarget 自訂資源建立的工作名稱會採用下列模式:obs-system/OBS_SHADOW_PROJECT_NAME/MONITORINGTARGET_NAME.MONITORINGTARGET_NAMESPACE/I/JI 和 J 是內部決定的專屬號碼,可避免名稱衝突。 |
instance |
報廢服務的 $IP:$PORT。如果工作負載資源有多個副本,請使用這個欄位加以區分。 |
下列程式碼範例顯示如何使用標籤的鍵/值組合查詢不同指標:
查看專案中已處理作業的所有指標串流:
processed_ops_total查看 Kubernetes 叢集中收集的已處理作業:
processed_ops_total{cluster="CLUSTER_NAME"}查看 Kubernetes 叢集中收集的 CPU 用量:
cpu_usage{cluster="CLUSTER_NAME"}
使用指標重新標記工具,新增最初未由擷取的容器公開的標籤,並重新命名產生的指標。您必須設定
MonitoringTarget 自訂資源,才能在收集的指標上新增標籤。
在自訂資源的 metricsRelabelings 欄位中指定這些標籤。
詳情請參閱「標籤指標」。