Compute Engine 會在兩個 Google Cloud 區域中維護每個區域磁碟的副本。每個副本稱為可用區備用資源。當您將資料寫入磁碟時,Compute Engine 會同步將該資料複製到兩個副本,確保高可用性 (HA)。在任何時間點,區域磁碟的磁碟複製狀態都會顯示磁碟是否能同步寫入兩個備用資源。磁碟的複製狀態取決於磁碟區域備份的備份狀態。可用區的備用狀態會告訴您,個別可用區備用資源的狀態與磁碟上的最新資料相比為何。如果可用區備用資源包含最新的磁碟資料,系統會將該備用資源視為已同步最新的磁碟資料。如果兩個可用區備用資源都已同步,系統就會將您的地區性永久磁碟或Hyperdisk 平衡高可用性磁碟視為已完全複製。
本文說明如何監控地區磁碟的複本狀態,以及一段時間內的磁碟複製狀態。您可以使用這份文件執行以下操作:
- 查看區域磁碟目前和過往的備援狀態。
- 如要只驗證特定區域磁碟的區域副本是否已同步,請使用 Google Cloud 控制台進行監控。
- 如要檢查專案中所有磁碟備援資源的確切區域備援資源狀態,請使用 Cloud Monitoring 資訊主頁進行監控。
- 使用特定時間點的複本狀態資訊,判斷磁碟是否已完全複製。
如要進一步瞭解複本狀態和磁碟複製狀態,請參閱「關於同步磁碟複製」。
必要的角色
如要取得使用 Cloud Monitoring 查看複製狀態所需的權限,請要求管理員授予下列 IAM 角色:
-
如要查看區域性磁碟指標 (下列任一項):
-
專案的監控檢視者 (
roles/monitoring.viewer
) -
專案中的Monitoring 編輯者 (
roles/monitoring.editor
)
-
專案的監控檢視者 (
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。
使用 Google Cloud 控制台進行監控
本節說明如何使用 Google Cloud 主控台,監控 Hyperdisk Balanced High Availability 或 Regional Persistent Disk磁碟區的複本狀態和磁碟複寫狀態。
檢查單一磁碟是否同步區域備用資源
您可以使用 Google Cloud 主控台,檢查區域磁碟的區域副本是否已與最新的磁碟資料同步。
如要查看專案中所有區域磁碟的確切區域副本狀態詳細資訊,請使用 Cloud Monitoring 資訊主頁檢查區域副本狀態。
主控台
如要監控區域磁碟的區域複本狀態,請執行下列操作:
前往 Google Cloud 控制台的「磁碟」頁面。
在「磁碟」頁面的「名稱」欄中,選取要檢查複本狀態的磁碟。
系統會為所選磁碟開啟「管理磁碟」頁面,並顯示該磁碟的「詳細資料」分頁。
點選「Observability」分頁標籤。
「管理磁碟」頁面會顯示磁碟的監控資訊。
如要查看磁碟的歷史備用磁碟狀態資訊,請在「Observability」分頁中前往「Regional Persistent Disk Replication State」圖表。
圖表會以兩條獨立的圖形線,顯示上一個小時內可用區備用資源的備份狀態值。
副本狀態值可以是下列其中一個:
0
:備份與最新的磁碟資料不同步。1
。備份資源會與最新的磁碟資料同步。
如要在特定時間點檢查區域副本的副本狀態值,請按照下列步驟操作:
- 按住圖表上的指標,找出要檢查複本狀態的時間值。
- 如要查看區域副本的複本狀態值,請前往圖表底部。
- 選用:如要查看圖表線所表示的名稱和副本狀態值,請將游標懸停在圖表線的任何特定時間值上。圖表會在工具提示中醒目顯示該複本的名稱和時間狀態。
選用:如要修改要查看複本狀態資料的時間範圍,請在「Observability」分頁頂端選取時間範圍。可用的選項如下:
- 1 小時:過去 1 小時。這是預設值。
- 6 小時:過去 6 小時。
- 1 天:前一天。
- 1 週:上週。
- 1 個月:上個月。
- 6 週:過去 6 週。
自訂:您選擇的特定時間範圍。如要指定自訂監控時間範圍,請按一下「自訂」,然後執行下列操作:
- 在「開始日期和時間」欄位中,指定監控期間的開始時間。您必須指定過去的時間。
- 在「End date and time」欄位中,指定監控時間範圍的結束時間。您必須指定過去的時間。
- 如要儲存自訂監控時間範圍,請按一下「套用」。
判斷磁碟是否已完全複製
確定區域副本是否已與最新的磁碟資料同步後,您可以利用這項資訊判斷磁碟是否已完全複製。
如果兩個可用區備用資源的備用資源狀態值皆為 1
,則在任何時間點,磁碟都會完全複製。如果不是這樣,請檢查當時的確切副本狀態,瞭解磁碟是否「降級」或「追趕」。詳情請參閱「使用 Cloud Monitoring 指標進行監控」。
使用 Cloud Monitoring 指標進行監控
您可以使用 Cloud Monitoring 中的 Regional disk replica state
指標,查看所有區域磁碟的確切區域副本狀態的詳細資訊。
關於 Regional disk replica state
指標
您可以在 Cloud Monitoring 資訊主頁上查看區域副本目前和歷來的磁碟副本狀態。Compute Engine 會每分鐘擷取磁碟的副本狀態,並使用 Regional disk replica state
指標回報。不過,如果區域發生停機,而該區域停機會影響附加區域備援執行個體的運算執行個體,您就不會看到任何區域備援執行個體的 Regional disk replica state
指標資料。
以下是 Regional disk replica state
指標的可能值。區域備份資源一律處於下列磁碟備份狀態之一。
Synced
:備份可用,同步接收對磁碟執行的所有寫入作業,且處於最新狀態,磁碟已收到所有資料。CatchingUp
:複本可供使用,但仍在追上其他複本的磁碟資料。OutOfSync
:備份副本暫時無法使用,且與磁碟上的資料不同步。
如要瞭解指標定義,請參閱「Compute Engine Monitoring 指標」一節。
您可以使用 Regional disk replica state
指標資料執行下列操作:
- 判斷地區性磁碟的複製狀態。
- 查看區域磁碟的備用資源狀態歷程記錄,瞭解備援架構是否正常運作,並在區域磁碟狀態變更時採取必要行動。
- 您可以根據
Regional disk replica state
指標資料建立快訊,偵測複本狀態的任何變更,並採取必要行動。如要進一步瞭解如何建立以指標為基礎的快訊,請參閱「如何新增警告政策」。
查看 Regional disk replica state
指標資料
如要查看已連結地區磁碟的區域副本狀態,請建立查詢,並為 Regional disk replica state
指標建立臨時圖表。您可以在 Metrics Explorer 中使用選單導向介面、 Monitoring Query Language (MQL) 或 PromQL 執行這項操作。
選單式介面
-
前往 Google Cloud 控制台的「Metrics Explorer」(Metrics Explorer) 頁面leaderboard:
如果您是使用搜尋列尋找這個頁面,請選取子標題為「Monitoring」的結果。
「Metrics Explorer」頁面隨即開啟,並顯示「查詢」分頁。
如要查看專案中每個區域副本的副本狀態資料,請選取
Regional disk replica state
指標的時間序列資料,然後在查詢窗格的工具列中執行下列操作,移除匯總篩選器:在「指標」選單中,點選「選取指標」,然後依序選取「磁碟」>「磁碟」>「區域磁碟副本狀態」。
按一下 [套用]。
在「Aggregation」選單中,選取「Unaggregated by None」。
系統會顯示一張圖表,以時間序列的形式顯示每個複本前一小時的指標資料。您只會看到已連結磁碟的區域備用資源的指標資料。
如要進一步瞭解如何為指標選取時間序列,請參閱「在使用 Metrics Explorer 時選取指標」。
如要同時查看圖表和表格檢視畫面,請按一下圖表頂端的「兩者皆顯示」。
如要查看所有可用的區域磁碟資源屬性資料,請在表格檢視畫面頂端,按一下
「資料欄顯示選項...」,選取所有資料欄,然後按一下「確定」。資訊主頁會針對表格中的每個資料列顯示下列欄位,以及目前的值:
disk_id
:磁碟 IDzone
:建立地區磁碟的區域。replica_zone
:副本可用區state
:複本狀態storage_type
:磁碟的儲存空間類型value
:備份狀態的值
如要在圖表檢視畫面中,查看對應時間序列的這項資料,請在圖表上按住目前時間的游標。圖表會在工具提示中顯示這些值。
如要查看特定時間點的歷史副本狀態,請執行下列操作:
將滑鼠游標懸停在圖表上,並選擇所需的特定時間值。資訊主頁會顯示專案中所有可用區副本的所有副本狀態,以及在特定時間點的指標資料。
在圖表檢視畫面中,這項資訊會顯示在工具提示中。
在表格檢視中,這類資訊會以個別資料列顯示。
請注意複本狀態及其對應值。在任何特定時間點,如果特定狀態的值為
1
,則表示副本處於該狀態。在圖表檢視畫面中,針對所需的磁碟 ID 和副本區域,查看工具提示中的副本狀態和值。
在表格檢視畫面中,檢查特定磁碟 ID 和備援區域的「state」和「value」欄。
如要進一步瞭解副本狀態及其值的含義,請參閱「瞭解
Regional disk replica state
指標資料」。選用:如要查看特定標籤的複本狀態資訊,請在「Filter」選單中選取要查看資料的標籤,然後完成對話方塊。您可以新增多個篩選器。
資訊主頁只會顯示篩選標籤的指標資料。如要進一步瞭解篩選器,請參閱「篩選圖表資料」。
舉例來說,如要查看特定磁碟的複本狀態資料,請執行下列操作:
- 在「Filter」選單中,選取「name」標籤。
- 在「Comparator」選單中,選取「= (equals)」。
- 在「Value」選單中,選取所需磁碟的名稱。
選用:如要判斷特定磁碟副本同步的時間百分比,請篩選特定磁碟和狀態的資料,然後使用匯總選單:
- 在「Filter」選單中,選取「name」標籤。
- 在「Comparator」選單中,選取「= (equals)」。
- 在「Value」選單中,選取磁碟名稱。
- 在「Filter」選單中,選取「state」標籤。
- 在「Comparator」選單中,選取「= (equals)」。
- 在「值」選單中,選取「已同步」。
- 在「Aggregation」選單中,選取「Mean by replica_zone」。
- 選取要查看資料的時間範圍。
資訊主頁會顯示磁碟副本在指定時間範圍內的平均
synced
狀態資料。將這項資料乘以 100,即可得出複本同步處理時間的百分比。如果該時間範圍的平均值顯示為1
,表示複本一直都與最新資料保持一致。如果平均值小於1
,表示複本在指定時間範圍內的某個時間點並未同步。如要進一步瞭解分組和對齊,請參閱「選擇圖表資料的顯示方式」。
選用:如要修改要監控指標資料的時間範圍,請在資訊主頁頂端按一下「過去 1 小時」,然後選取所需時間範圍。
您可以選取相對於目前時間的相對時間範圍,也可以指定所需的開始和結束時間。根據預設,您會看到過去一小時的指標資料。
MQL
-
前往 Google Cloud 控制台的「Metrics Explorer」(Metrics Explorer) 頁面leaderboard:
如果您是使用搜尋列尋找這個頁面,請選取子標題為「Monitoring」的結果。
「Metrics Explorer」頁面隨即開啟,並顯示「查詢」分頁。
在查詢窗格的工具列中,按一下名稱開頭為 < > 的按鈕。
在「Language」欄位中,選取「MQL」做為查詢語言。這個欄位位於可讓您設定查詢格式的工具列中。
選用:停用「自動執行」切換鈕。
輸入查詢,然後點選「執行查詢」。
啟用「自動執行」切換鈕後,系統不會顯示「執行查詢」按鈕。
舉例來說,如要查看名為
disk-1
的磁碟副本狀態資料,請執行下列查詢:fetch gce_disk | metric 'compute.googleapis.com/disk/regional/replica_state' | filter (metadata.system_labels.name == 'disk-=1') | group_by 1m, [value_replica_state_mean: mean(value.replica_state)] | every 1m
舉另一個例子來說,如要判斷副本同步的時間佔據磁碟
disk-1
的百分比,請執行下列查詢:fetch gce_disk | metric 'compute.googleapis.com/disk/regional/replica_state' | filter (metadata.system_labels.name == 'disk-1') && (metric.state == 'Synced') | group_by 1m, [value_replica_state_mean: mean(value.replica_state)] | every 1m | group_by [metric.replica_zone], [value_replica_state_mean_mean: mean(value_replica_state_mean)]
如要修改要監控指標資料的時間範圍,請在資訊主頁頂端按一下「過去 1 小時」,然後選取所需的時間範圍和時區。
您可以選取相對於目前時間的相對時間範圍,也可以指定所需的開始和結束時間。根據預設,您會看到過去一小時的指標資料。
PromQL
-
前往 Google Cloud 控制台的「Metrics Explorer」(Metrics Explorer) 頁面leaderboard:
如果您是使用搜尋列尋找這個頁面,請選取子標題為「Monitoring」的結果。
「Metrics Explorer」頁面隨即開啟,並顯示「查詢」分頁。
在查詢窗格的工具列中,按一下名稱開頭為 < > 的按鈕。
在「Language」欄位中,選取「PromQL」做為查詢語言。這個欄位位於可讓您設定查詢格式的工具列中。
選用:停用「自動執行」切換鈕。
輸入查詢,然後點選「執行查詢」。
啟用「自動執行」切換鈕後,系統不會顯示「執行查詢」按鈕。
舉例來說,如要查看名為
disk-1
的磁碟副本狀態資料,請執行下列查詢:avg_over_time(compute_googleapis_com:disk_regional_replica_state{monitored_resource="gce_disk",metadata_system_name="disk-1"}[${__interval}])
舉另一個例子來說,如要判斷副本同步的時間佔據磁碟
disk-1
的百分比,請執行下列查詢:avg by (replica_zone)(avg_over_time(compute_googleapis_com:disk_regional_replica_state{monitored_resource="gce_disk",state="Synced",metadata_system_name="disk-1"}[${__interval}]))
如要修改要監控指標資料的時間範圍,請在資訊主頁頂端按一下「過去 1 小時」,然後選取所需的時間範圍和時區。
您可以選取相對於目前時間的相對時間範圍,也可以指定所需的開始和結束時間。根據預設,您會看到過去一小時的指標資料。
使用指標資料判斷確切的區域副本狀態
如要瞭解區域磁碟的 Regional disk replica state
指標資料,您必須在產生的圖表中查看區域副本的「狀態」和「值」欄。如果您未在查詢中加入任何篩選器,會發生以下情況:
- 「狀態」欄會顯示區域備份磁碟的所有可能狀態,包括
Synced
、CatchingUp
和OutOfSync
。圖表會以時序形式顯示專案中所有區域磁碟的所有區域備用資源的狀態。 - 「value」欄會指出區域副本是否處於特定磁碟副本狀態。這個欄會針對專案中所有區域磁碟的所有區域副本,針對每個 state 值顯示對應的二進位值 (
0
或1
)。
對於任何區域副本,如果「value」欄針對特定磁碟副本狀態顯示 1
,則該區域副本處於該特定狀態。如果「value」欄針對特定狀態顯示 0
,表示該副本並未處於該特定狀態。在任何特定時間點,可用區備份資源都會在「value」欄中使用 1
的磁碟備份狀態。其他兩個磁碟副本狀態的值欄中都有 0
。
對於每個區域副本,圖表和表格會針對每個磁碟副本狀態顯示個別的項目:Synced
、CatchingUp
和 OutOfSync
。每個項目的「value」欄為二進位值 (0
或 1
),用於指出複本是否處於該狀態。在任何時間點,區域副本都只有一個副本狀態,且其值為 1
。
判斷確切的磁碟複製狀態
您可以使用區域備援磁碟的備援狀態,按照下列方式判斷地區磁碟的複製狀態:
- 如果兩個可用區備用資源都將
1
設為Synced
狀態的值,則表示磁碟已完全複製。 - 如果其中一個可用區備用資源的
Synced
狀態值為1
,而另一個可用區備用資源的CatchingUp
狀態值為1
,則磁碟會追趕。 - 如果其中一個區域副本的
Synced
狀態值為1
,而另一個區域副本的OutOfSync
狀態值為1
,則磁碟為降級。
舉例來說,假設名為 my-disk1
的磁碟在 us-central1-a
和 us-central1-b
中都有副本。以下情境說明 my-disk1
的每個可能複製狀態的區域副本的 state 和 value 欄位值:
完全複製
在這種情況下,us-central1-a
和 us-central1-b
中的複本都會更新為磁碟上的最新資料。圖表會針對 my-disk1
的區域副本,針對每個磁碟副本狀態顯示下列值:
replica_zone | state | value |
---|---|---|
us-central1-a |
Synced |
1 |
us-central1-a |
CatchingUp |
0 |
us-central1-a |
OutOfSync |
0 |
us-central1-b |
Synced |
1 |
us-central1-b |
CatchingUp |
0 |
us-central1-b |
OutOfSync |
0 |
最新消息
在這個情境中,us-central1-a
中的複本會使用磁碟上的資料進行更新,而 us-central1-b
中的複本則會追上磁碟上的資料。圖表會顯示 my-disk1
區域副本的每個磁碟副本狀態的下列值:
replica_zone | state | value |
---|---|---|
us-central1-a |
Synced |
1 |
us-central1-a |
CatchingUp |
0 |
us-central1-a |
OutOfSync |
0 |
us-central1-b |
Synced |
0 |
us-central1-b |
CatchingUp |
1 |
us-central1-b |
OutOfSync |
0 |
惡化
在這種情況下,us-central1-a
中的備份會使用磁碟上的資料進行更新,而 us-central1-b
中的備份則會不同步。圖表會針對 my-disk1
的區域副本,針對每個磁碟副本狀態顯示下列值:
replica_zone | state | value |
---|---|---|
us-central1-a |
Synced |
1 |
us-central1-a |
CatchingUp |
0 |
us-central1-a |
OutOfSync |
0 |
us-central1-b |
Synced |
0 |
us-central1-b |
CatchingUp |
0 |
us-central1-b |
OutOfSync |
1 |
後續步驟
- 建立及管理區域磁碟。
- 瞭解如何使用區域磁碟建構高可用性服務。