如何監控 Amazon Redshift 中的快照還原進度?

1 分的閱讀內容
0

我要還原 Amazon Redshift 叢集的快照,且想監控還原的進度。

簡短描述

Amazon Redshift 支援三種類型的快照還原操作:

  • 叢集還原: 叢集還原會從快照還原所有資料表、資料庫和中繼資料。快照將還原至與來源叢集相同大小和節點組態的 Amazon Redshift 叢集

  • 跨執行個體還原: 跨執行個體還原會將 Amazon Redshift 快照還原至不同大小或執行不同節點類型的叢集。跨執行個體還原的執行方式與叢集還原相同。若要列出叢集所有可能的節點類型和節點數目,請執行下列查詢:

    aws redshift describe-node-configuration-options --snapshot-identifier <snapshot-identifier> --region <region> --action-type restore-cluster
  • 資料表還原: 資料表還原會將特定資料表和關聯的中繼資料從快照還原到 Amazon Redshift 叢集。如需有關如何檢查資料表還原狀態的資訊,請參閱監控資料表還原

**重要:**從快照建立的新叢集會繼承與來源叢集相同的安全權限和設定。還原快照後,對來源叢集所做的任何變更都不會轉移到新的 Amazon Redshift 叢集。此外,資料無法在來源叢集與新建立的 Amazon Redshift 叢集之間合併。相同的限制適用於 Amazon Redshift 中的來源資料表和新建立的資料表。

解決方法

監控叢集還原或跨執行個體還原

**注意:**如果您在執行 AWS Command Line Interface (AWS CLI) 命令時收到錯誤,請參閱對 AWS CLI 錯誤進行疑難排解。此外,請確定您使用的是最新的 AWS CLI 版本

使用 AWS 管理主控台、Amazon Redshift 事件或 AWS CLI 來監控叢集還原或跨執行個體還原的進度。

AWS 管理主控台

Amazon Redshift 主控台中檢視您的 Amazon Redshift 叢集詳細資訊。當您的 Amazon Redshift 叢集還原進行中時,叢集狀態會設定為修改中。在叢集詳細資訊頁面上,選擇維護與監控標籤。維護與監控標籤會列出確認建立 Amazon Redshift 叢集並完成任何資料傳輸的事件。叢集或跨越執行個體還原操作完成後,叢集狀態將設定為可用

Amazon Redshift 事件

若要檢查叢集還原的狀態,請檢閱下列事件:

  • RESTORE_STARTED - REDSHIFT-EVENT-2008: 此事件在還原程序開始時傳送。
  • RESTORE_SUCCEEDED - REDSHIFT-EVENT-3003: 此事件在新叢集建立且叢集可供查詢時傳送。
  • DATA_TRANSFER_COMPLETED - REDSHIFT-EVENT-3537: 此事件在資料傳輸完成時傳送。

**注意:**RA3 叢集僅發出 RESTORE_STARTED and RESTORE_SUCCEEDED 事件。由於 RA3 節點類型將資料儲存在 Amazon Redshift 受管儲存中,因此在還原成功後無需傳輸資料。

AWS CLI

使用 DescribeClusters API 來追蹤叢集快照的進度。DescribeClusters API 包含快照詳細資訊,例如快照還原中的大小、傳輸速率、經過的時間以及預估剩餘時間。然後,檢查 RestoreStatus 項目,查看您的快照是否已還原。如需快照指標的詳細資訊,請參閱 RestoreStatus

若要檢查快照還原的狀態,請執行下列命令:

aws redshift describe-clusters --cluster-identifier <value>

如需詳細資訊,請參閱從快照還原叢集

監控資料表還原

若要監控資料表還原的進度,請使用 AWS 管理主控台或 AWS CLI。

AWS 管理主控台

啟動資料表還原後,使用 Amazon Redshift 主控台追蹤請求的狀態。叢集詳細資訊頁面上的備份標籤會列出所有還原資料表請求。狀態標籤會顯示請求的目前狀態:SUCCEEDED、FAILED、CANCELED、PENDING 或 IN_PROGRESS。

AWS CLI

若要使用 AWS CLI 監控資料表還原,請使用 describe-table-restore-status 命令。describe-table-restore-status 命令列出使用 RestoreTableFromClusterSnapshot API 發出的一個或多個資料表還原請求的狀態。如果不指定 TableRestoreRequestId 參數的值,DescribeTableRestoreStatus API 會傳回所有資料表還原請求的狀態。請求按日期和時間以遞增順序列出。

若要尋找資料表還原的狀態,請執行下列命令:

aws redshift describe-table-restore-status --cluster-identifier <mycluster>

aws redshift describe-table-restore-status --table-restore-request-id <value>

相關資訊

restore-from-cluster-snapshot

AWS 官方
AWS 官方已更新 4 個月前