Amazon OpenSearch Service ドメインの耐障害性を高めるにはどうすればよいですか?
最終更新日: 2021 年 7 月 30 日
Amazon OpenSearch Service のリソースを、偶発的な削除、アプリケーションまたはハードウェアの障害、または停止から保護したいと考えています。耐障害性の向上やスナップショットの復元に関するベストプラクティスは何ですか?
簡単な説明
OpenSearch Services ドメインの耐障害性を向上させるには、次のベストプラクティスを実行することを検討してください。
- 定期的な索引スナップショットを取得する。
- Amazon CloudWatch メトリクスを使用して OpenSearch Service リソースをモニタリングする。
- OpenSearch Service の制限について理解する。
- 専用マスターノードを使用する。
- 少なくとも 3 つのノードを使用する。
- ゾーン認識を有効にする。
- 本稼働環境で T2 インスタンスを使用しないでください。
解決方法
定期的にインデックススナップショットを取得する
すべての OpenSearch Services ドメインは、自動スナップショットを取得します。手動インデックススナップショットを取得して、OpenSearch Services ドメインでデータのポイントインタイムバックアップを作成します。スナップショットを Amazon Simple Storage Service (Amazon S3) バケットに保存します。手動インデックススナップショットを使用して、OpenSearch Services ドメイン間でデータを移行したり、別の OpenSearch Services ドメインにデータを復元したりできます。
Amazon CloudWatch メトリクスをモニタリングする
- OpenSearch Services コンソールの [Cluster health] (クラスターのヘルス) タブと [Instance health] (インスタンスのヘルス) タブを使用して、クラスターに関する Amazon CloudWatch メトリクスをモニタリングします。
- 重要な OpenSearch Service のメトリクスのために Amazon CloudWatch アラームを作成します。例えば、AutomatedSnapshotFailure メトリクスをモニタリングして、自動スナップショットが定期的に実行されていることを確認します。チュートリアルについて、Get started with Amazon OpenSearch Service: Set CloudWatch alarms on key metrics を参照してください。
専有マスターノードを使用する
専用マスターノードは、ノードの過負荷による問題を防ぐのに役立ちます。以下の場合に、専有マスターノードを使用します。
- ドメインが本稼働環境で使用されている場合。
- ドメインに 5 つ以上のノードがある場合。
- インデックスマッピングが複雑で、多くのフィールドがタイプとインデックスにまたがって定義されている場合。
少なくとも 3 つのノードを使用する
意図しないネットワークのパーティション化 (スプリットブレイン) を回避するには、少なくとも 3 つのノードを使用します。データ損失の可能性を回避するには、インデックスごとに少なくとも 1 つのレプリカがあることを確認します。(デフォルトでは、各インデックスに 1 つのレプリカがあります。)
ゾーン認識を有効にする
ゾーン認識は、ダウンタイムやデータ損失を防ぐのに役立ちます。ゾーン認識を有効にすると、OpenSearch Service は、同じリージョン内の 2 つまたは 3 つのアベイラビリティーゾーンにわたってノードとレプリカインデックスシャードを割り当てます。
注: 3 つのアベイラビリティーゾーンを設定する場合は、インデックスの 2 つのレプリカを使用します。1 つのゾーンに障害が発生した場合、2 つのレプリカにより 100% のデータ冗長性が確保されます。
本稼働環境で T2 インスタンスを使用しない
本稼働環境では、M クラス以上の Amazon Elastic Compute Cloud (Amazon EC2) インスタンスを使用します。T2 インスタンスタイプを使用する場合は、インスタンスの CPU クレジット、CPU 使用率、メモリ使用率、安定性をモニタリングしてください。必要に応じてスケールアップまたはスケールアウトします。
さらに、T2 インスタンスについては、次の制限に注意してください。
- T2 インスタンスには CPU クレジットが割り当てられます。ネットワークトラフィックが急増した場合、OpenSearch Services クラスターが T2 インスタンスで使用できる CPU クレジットの量を超える可能性があります。詳細については、バーストパフォーマンスインスタンスの CPU クレジットとベースライン使用率を参照してください。
- T2 インスタンスの EBS ボリューム制限は 35 GB です。
- T2 インスタンスのペイロード制限は 10 MB です。リクエストペイロードがペイロード制限を超えないようにしてください。OpenSearch Service のネットワーク制限の詳細については、ネットワークの制限を参照してください。
- T2 インスタンスタイプは、OpenSearch Service インスタンス数が 10 以下の場合にのみ使用できます。サポート対象の OpenSearch Service インスタンスタイプの詳細については、サポートされるインスタンスタイプ を参照してください。
- T2 インスタンスタイプは、データノードまたは専用マスターノードとして使用することはできません。T2 インスタンスタイプは、負荷が持続すると不安定になる可能性があります。詳細については、「Amazon OpenSearch Service のベストプラクティス」を参照してください。
Amazon OpenSearch Service は、Amazon Elasticsearch Service の後継サービスです。
関連情報
Get started with Amazon OpenSearch Service: How many data instances do I need? (Amazon OpenSearch サービスを開始するのに必要なデータインスタンスの数 )