本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
還原快照
還原快照之前,請確定目的地網域不會將多可用區與待命 搭配使用。啟用待命會導致還原操作失敗。
警告
如果您使用索引別名,您應該停止對別名的寫入請求,或在刪除其索引之前將別名切換至另一個索引。停止寫入請求有助於避免以下情況:
-
刪除索引也會刪除它的別名。
-
錯誤的寫入請求至現已刪除的別名,會使用和別名相同的名稱建立新索引。
-
因與新索引有命名衝突之故,您不可再使用別名。當您從快照還原,如果您交換別名到另一個索引,此時請指定
"include_aliases": false
。
還原快照
-
找到您要還原的快照。請確定此索引的所有設定,例如自訂分析器套件或配置需求設定,都與網域相容。若要查看所有快照儲存庫,請執行下列命令:
curl -XGET '
domain-endpoint
/_snapshot?pretty'在識別儲存庫後,請執行下列命令以查看所有快照:
curl -XGET '
domain-endpoint
/_snapshot/repository-name
/_all?pretty'注意
大多數自動快照存放在
cs-automated
儲存庫中。如果您的網域加密靜態資料,會將它們存放在cs-automated-enc
儲存庫中。如果未看到您尋找的手動快照儲存庫,請確定您已將它註冊到網域。 -
(選用) 如果您命名叢集上的索引與快照中的索引之間的衝突,請刪除或重新命名 OpenSearch 服務網域中的一或多個索引。您無法將索引的快照還原至已包含相同名稱索引的 OpenSearch 叢集。
如果您有索引命名衝突,則具有下列選項:
-
刪除現有 OpenSearch 服務網域上的索引,然後還原快照。
-
在您從快照還原索引時將其重新命名,並為其重新編製索引。若要了解如何重新命名索引,請參閱 OpenSearch 文件中的此範例請求
。 -
將快照還原至不同的 OpenSearch 服務網域 (僅適用於手動快照)。
下列命令會刪除網域中的所有現有索引:
curl -XDELETE '
domain-endpoint
/_all'但是,如果您不打算還原所有索引,則只可以刪除一個索引:
curl -XDELETE '
domain-endpoint
/index-name
' -
-
若要還原快照,請執行以下命令:
curl -XPOST '
domain-endpoint
/_snapshot/repository-name
/snapshot-name
/_restore'由於 OpenSearch 儀表板和精細存取控制索引的特殊許可,嘗試還原所有索引可能會失敗,特別是當您嘗試從自動快照還原時。以下範例只從
my-index
快照儲存庫中的2020-snapshot
還原一個索引cs-automated
:curl -XPOST '
domain-endpoint
/_snapshot/cs-automated/2020-snapshot/_restore' \ -d '{"indices": "my-index"}' \ -H 'Content-Type: application/json'或者,您可能想要還原所有索引,Dashboards 和精細存取控制索引除外:
curl -XPOST '
domain-endpoint
/_snapshot/cs-automated/2020-snapshot/_restore' \ -d '{"indices": "-.kibana*,-.opendistro*"}' \ -H 'Content-Type: application/json'您可以使用
rename_pattern
和rename_replacement
參數還原快照,而不刪除其資料。如需這些參數的詳細資訊,請參閱 OpenSearch 文件中的還原快照API請求欄位和範例請求 。
注意
如果不是所有涉及的索引都有主要碎片,快照可能一個 state
的 PARTIAL
。此值表示至少一個碎片的資料未成功儲存。您仍然可以從部分快照還原,但您可能需要使用舊版的快照來還原任何遺失的索引。