はじめに

この記事では、OpenSearchのバックアップの手法とそれによるリストアの内容の違いについて記載します。
Amazon Auroraなどと同じようなイメージで考えていた部分があり、任意のバックアップやリストアについては、その認識だと違和感を感じる内容で勉強になりました。

OpenSearchのスナップショット取得方法

OpenSearchでスナップショットを取得する方法は大きく分けて三つあります。それぞれの方法とその利用シーンを説明します。

  1. 自動スナップショット
    • 定期的なデータ保護のため、またはクラスターのステータスが警告を示した際に自動的に取得されます。
  2. 手動スナップショット
    • より柔軟なデータ復元やクラスター間でのデータ移行に使用されます。
  3. Snapshot Management
    • インデックスの変更を追跡し、定期的なスナップショットのスケジューリングと削除を自動で行います。

Snapshot Management の制約と注意点

Snapshot Managementは強力なツールですが、以下のような制約があります:

  • インデックス毎にリポジトリの登録が必要です。
  • システムの負荷が高い時はスナップショットが実行されないことがあります。
  • 複数のポリシーが重複するとリソースの消費が増大します。

スナップショットの取得方法とその違い

自動スナップショットと手動スナップショットの特性を比較し、それぞれのメリットとデメリットを明確にします。

特性 自動スナップショット 手動スナップショット
スケジュール 1時間ごと ユーザー定義
クロスリージョン複製 不可 S3を介して可能
保持期間 最大14日間で336スナップショット 制限なし
復元精度 最後の1時間以内 実行した時間

バックアップとリストアのメリットとデメリット

方法 メリット デメリット
自動 何もしなくても定期的に実行される 別クラスターへの復元ができない、クラスター内復元のみ
手動 別クラスターへの復元が可能、災害復旧に有効 S3利用によるコスト、手動での実行スクリプト作成及びそれのスケジュール設定が必要

総括

OpenSearch における自動および手動スナップショットは、要件に応じて選択する方法が変わってきますので、要件を加吟味し適切な方法を検討する必要があると思いました。
また、細かい手順の記載は当該記事にはありませんが、手動スナップショットやリストアについては意外と手順が複雑なので、実施する際には、一度検証などでお試しいただくことをお勧めします。

参考資料