本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用快照來遷移資料
就地升級是將網域升級到更新版本 OpenSearch 或 Elasticsearch 版本的更簡單、更快速且更可靠的方式。如果您需要從 Elasticsearch 5.1 之前的版本中遷移或想要遷移至全新的叢集,快照會是一個好選擇。
下表顯示如何使用快照將資料遷移至使用不同 OpenSearch 或 Elasticsearch 版本的網域。如需有關拍攝和恢復快照的資訊,請參閱在 Amazon OpenSearch Service 中建立索引快照。
原始版本 |
目標版本 |
遷移程序 |
OpenSearch 1.3 或 2.x |
OpenSearch 2.x |
-
檢閱 OpenSearch 2.3 的重大變更,以查看您是否需要調整索引或應用程式。
-
建立 1.3 或 2.x 網域的手動快照。
-
建立比原始 1.3 或 2.x 網域更高版本的 2.x 網域。
-
將快照從原始網域還原至 2.x 網域。在操作期間,您可能需要以新名稱還原.opensearch 索引:
POST _snapshot/<repository-name> /<snapshot-name> /_restore
{
"indices": "*",
"ignore_unavailable": true,
"rename_pattern": ".opensearch",
"rename_replacement": ".backup-opensearch"
}
然後,您可以在新網域 .backup-opensearch 上重建索引,並將其別名命名為 .opensearch 。請注意, _restore REST 中的預設值_restore 為 false,include_global_state 因此呼叫不包含在內。因此,測試網域不會包含任何索引範本,也不會有來自備份的完整狀態。
-
如果您不再需要原始網域,請將其刪除。否則,您要繼續負擔網域的費用。
|
OpenSearch 1.x |
OpenSearch 1.x |
-
建立 1.x 網域的手動快照。
-
建立比原始 1.x 網域更高版本的 1.x 網域。
-
將快照從原始網域還原至新的 1.x 網域。在操作期間,您可能需要以新名稱還原.opensearch 索引:
POST _snapshot/<repository-name> /<snapshot-name> /_restore
{
"indices": "*",
"ignore_unavailable": true,
"rename_pattern": ".opensearch",
"rename_replacement": ".backup-opensearch"
}
然後,您可以在新網域 .backup-opensearch 上重建索引,並將其別名命名為 .opensearch 。請注意, _restore REST 中的預設值_restore 為 false,include_global_state 因此呼叫不包含在內。因此,測試網域不會包含任何索引範本,也不會有來自備份的完整狀態。
-
如果您不再需要原始網域,請將其刪除。否則,您要繼續負擔網域的費用。
|
Elasticsearch 6.x 或 7.x |
OpenSearch 1.x |
-
檢閱 OpenSearch 1.0 的重大變更,以查看您是否需要調整索引或應用程式。
-
建立 Elasticsearch 7.x 或 6.x 網域的手動快照。
-
建立 a OpenSearch 1.x 網域。
-
將快照從 Elasticsearch 網域還原至 OpenSearch 網域。在操作期間,您可能需要以新名稱還原.elasticsearch 索引:
POST _snapshot/<repository-name> /<snapshot-name> /_restore
{
"indices": "*",
"ignore_unavailable": true,
"rename_pattern": ".elasticsearch",
"rename_replacement": ".backup-opensearch"
}
然後,您可以在新網域 .backup-opensearch 上重建索引,並將其別名命名為 .elasticsearch 。請注意, _restore REST 中的預設值_restore 為 false,include_global_state 因此呼叫不包含在內。因此,測試網域不會包含任何索引範本,也不會有來自備份的完整狀態。
-
如果您不再需要原始網域,請將其刪除。否則,您要繼續負擔網域的費用。
|
Elasticsearch 6.x |
Elasticsearch 7.x |
-
檢閱 7.0 的重大變更,以查看是否需要調整您的索引或應用程式。
-
建立 6.x 網域的手動快照。
-
建立 7.x 網域。
-
將快照從原始網域還原到 7.x 網域。在操作期間,您可能需要以新名稱還原 .opensearch 索引:
POST _snapshot/<repository-name> /<snapshot-name> /_restore
{
"indices": "*",
"ignore_unavailable": true,
"rename_pattern": ".elasticsearch",
"rename_replacement": ".backup-elasticsearch"
}
然後,您可以在新網域 .backup-elasticsearch 上重建索引,並將其別名命名為 .elasticsearch 。請注意, _restore REST 中的預設值_restore 為 false,include_global_state 因此呼叫不包含在內。因此,測試網域不會包含任何索引範本,也不會有來自備份的完整狀態。
-
如果您不再需要原始網域,請將其刪除。否則,您要繼續負擔網域的費用。
|
Elasticsearch 6.x |
Elasticsearch 6.8 |
-
建立 6.x 網域的手動快照。
-
建立 6.8 網域。
-
將快照從原始網域還原到 6.8 網域。
-
如果您不再需要原始網域,請將其刪除。否則,您要繼續負擔網域的費用。
|
Elasticsearch 5.x |
Elasticsearch 6.x |
-
檢閱 6.0 的重大變更,以得知您是否需要調整您的索引或應用程式。
-
建立 5.x 網域的手動快照。
-
建立 6.x 網域。
-
將快照從原始網域還原到 6.x 網域。
-
如果您不再需要 5.x 網域,請將其刪除。否則,您要繼續負擔網域的費用。
|
Elasticsearch 5.x |
Elasticsearch 5.6 |
-
建立 5.x 網域的手動快照。
-
建立 5.6 網域。
-
將快照從原始網域還原到 5.6 網域。
-
如果您不再需要原始網域,請將其刪除。否則,您要繼續負擔網域的費用。
|
Elasticsearch 2.3 |
Elasticsearch 6.x |
Elasticsearch 2.3 快照與 6.x 不相容。若要直接將您的資料從 2.3 遷移至 6.x,您必須在新網域手動重新建立索引。
或者,您可以遵照此表中的 2.3 到 5.x 步驟,在全新 5.x 網域中執行 _reindex 操作,將您的 2.3 索引轉換為 5.x 索引,接著再遵循 5.x 到 6.x 步驟。
|
Elasticsearch 2.3 |
Elasticsearch 5.x |
-
檢閱 5.0 的重大變更,以查看是否需要調整您的索引或應用程式。
-
建立 2.3 網域的手動快照。
-
建立 5.x 網域。
-
將快照從 2.3 網域還原到 5.x 網域。
-
如果您不再需要 2.3 網域,請將其刪除。否則,您要繼續負擔網域的費用。
|
Elasticsearch 1.5 |
Elasticsearch 5.x |
Elasticsearch 1.5 快照與 5.x 不相容。若要將您資料從 1.5 遷移至 5.x,您必須在新網域手動重新建立索引。
1.5 快照與 2.3 相容,但 OpenSearch Service 2.3 網域不支援 _reindex 操作。因為您無法為其重新編製索引,所以在 1.5 網域中產生的索引仍然無法從 2.3 快照還原到 5.x 網域。
|
Elasticsearch 1.5 |
Elasticsearch 2.3 |
-
使用遷移外掛程式來確認您是否可以直接升級至 2.3 版。您在遷移前可能需要對資料進行變更。
-
在 Web 瀏覽器中,開啟 http://domain-endpoint /_plugin/migration/ 。
-
選擇 Run checks now (立即執行檢查)。
-
如有需要,檢閱結果,並依照操作說明來變更您的資料。
-
建立 1.5 網域的手動快照。
-
建立 2.3 網域。
-
將快照從 1.5 網域還原到 2.3 網域。
-
如果您不再需要 1.5 網域,請將其刪除。否則,您要繼續負擔網域的費用。
|