AmazonOpenSearchサービス は完全にオープンソースの検索および分析エンジンであり、レコメンデーション エンジン、e コマース サイト、カタログ検索などのユースケースで、ビジネスおよび運用データのリアルタイム検索、監視、分析を安全に実行できます。 ビジネスで成功するには、システムの可用性とパフォーマンスが高く、ダウンタイムを最小限に抑え、障害を回避する必要があります。 インフラストラクチャを監視する主な手段として OpenSearch Service を使用する場合、その可用性も確保する必要があります。 OpenSearch Service のダウンタイムは、収益の損失、生産性の低下、ブランド価値の損失など、ビジネスの成果に重大な影響を与える可能性があります。
可用性を測定するための業界標準 3人制のクラスです。 OpenSearch サービスは、フォローすると 9 XNUMX の可用性を提供します ベストプラクティスこれは、43.83 か月あたりのダウンタイムが XNUMX 分未満であることを保証することを意味します。 この投稿では、ドメインの設定時にベスト プラクティスと推奨事項に従って、高可用性とパフォーマンスを実現するために OpenSearch Service ドメインを構成する方法を説明します。
ドメインの可用性に影響を与える XNUMX つの重要な要素があります。XNUMX つはドメインのリソース使用率で、主にワークロードによって決まります。もう XNUMX つはインフラストラクチャ障害などの外部イベントです。 前者はドメインのパフォーマンスと健全性を継続的に監視し、それに応じてドメインをスケーリングすることで制御できますが、後者は制御できません。 アベイラビリティーゾーンの停止、インスタンスまたはディスクの障害、ドメイン上のネットワークの問題などの外部イベントの影響を軽減するには、複数のアベイラビリティーゾーンに分散された追加の容量をプロビジョニングし、データの複数のコピーを保持する必要があります。 そうしないと、パフォーマンスの低下、可用性の低下、さらには最悪の場合はデータ損失が発生する可能性があります。
ドメインが利用可能でパフォーマンスが高いことを確認するために利用できるオプションを見てみましょう。
クラスタ構成
このセクションでは、クラスターを適切にセットアップするために必要なさまざまな構成オプションについて説明します。これには、デプロイメントの AZ の数の指定、マスター ノードとデータ ノードのセットアップ、インデックスとシャードのセットアップが含まれます。
マルチ AZ 配置
データ ノードは、ドメイン内のインデックス作成と検索リクエストの処理を担当します。 複数のアベイラビリティーゾーンにデータノードをデプロイすると、ゾーンごとのデータストレージと処理の冗長性が追加され、ドメインの可用性が向上します。 マルチ AZ 展開では、完全なアベイラビリティーゾーンが利用できなくなった場合でも、ドメインは利用可能な状態を維持できます。 実稼働ワークロードの場合、 AWS では、ドメインに XNUMX つのアベイラビリティーゾーンを使用することをお勧めします。 可用性を向上させるために、XNUMX つだけをサポートするリージョンには XNUMX つのアベイラビリティーゾーンを使用します。 これにより、シングル AZ 障害が発生した場合でもドメインを利用できるようになります。
専用のクラスターマネージャー (マスターノード)
AWS では XNUMX つの専用クラスターマネージャー (CM) ノードの使用を推奨しています すべての実稼働ワークロードに対応します。 CM ノードは、クラスターの健全性、インデックスとシャードの状態と場所、すべてのインデックスのマッピング、データ ノードの可用性を追跡し、処理中のクラスター レベルのタスクのリストを維持します。 専用の CM ノードがない場合、クラスターはデータ ノードを使用するため、クラスターはワークロードの要求に対して脆弱になります。 タスクのサイズ、主にデータ ノード数、インデックス数、シャード数に基づいて CM ノードのサイズを決定する必要があります。 OpenSearch Service は、リージョンでサポートされている場合、常に XNUMX つのアベイラビリティーゾーンに CM ノードをデプロイします (リージョンにアベイラビリティーゾーンが XNUMX つしかない場合は、XNUMX つのアベイラビリティーゾーンに XNUMX つ、他のアベイラビリティーゾーンに XNUMX つ)。 実行中のドメインの場合、XNUMX つの CM ノードのうち XNUMX つだけが、選出されたリーダーとして機能します。 選択された CM ノードに障害が発生した場合、他の XNUMX つの CM ノードは選挙に参加します。
次の表は、CM サイジングに関する AWS の推奨事項を示しています。 CM ノードは、ノード、インデックス、シャード、マッピングの数に基づいて機能します。 作業が増えるほど、より多くのコンピューティングとメモリを保持し、クラスター状態を操作する必要があります。
インスタンス数 | クラスターマネージャーノードのRAMサイズ | サポートされる最大シャード数 | 推奨される最小の専用クラスター マネージャー インスタンス タイプ |
1-10 | 8 GiB | 10,000 | m5.large.search または m6g.large.search |
11-30 | 16 GiB | 30,000 | c5.2xlarge.search または c6g.2xlarge.search |
31-75 | 32 GiB | 40,000 | c5.4xlarge.search または c6g.4xlarge.search |
76 – 125 | 64 GiB | 75,000 | r5.2xlarge.search または r6g.2xlarge.search |
126 – 200 | 128 GiB | 75,000 | r5.4xlarge.search または r6g.4xlarge.search |
インデックスとシャード
インデックスは、ドキュメントのコレクションを格納する論理構造です。 プライマリ シャード数を指定して、並列処理用にインデックスをパーティション分割します。ここで、シャードは、データを保存および処理するための物理単位を表します。 OpenSearch Service では、シャードはプライマリ シャードまたはレプリカ シャードのいずれかになります。 レプリカを使用するのは、耐久性を確保するためです。プライマリ シャードが失われた場合、OpenSearch Service はレプリカの XNUMX つをプライマリに昇格させます。また、検索スループットを向上させるためにも使用します。 OpenSearch Service は、複数のアベイラビリティーゾーンにデプロイされている場合、プライマリシャードとレプリカシャードが異なるノードおよび異なるアベイラビリティーゾーンに配置されることを保証します。 高可用性を実現するために、AWS では、パフォーマンスと可用性の中断を避けるために、XNUMX ゾーン設定でインデックスごとに少なくとも XNUMX つのレプリカを構成することをお勧めします。 マルチ AZ セットアップでは、ノードに障害が発生した場合、またはまれにアベイラビリティーゾーンに障害が発生した場合でも、データのコピーが残ります。
クラスターの監視と管理
前に説明したように、ベスト プラクティスに基づいて構成を選択するだけでは、仕事の半分にすぎません。 また、リソースの使用率とパフォーマンスを継続的に監視して、ドメインを拡張する必要があるかどうかを判断する必要があります。 ドメインがプロビジョニング不足または過剰に使用されていると、パフォーマンスが低下し、最終的には利用できなくなる可能性があります。
CPU使用率
ドメイン内の CPU を使用してワークロードを実行します。 一般的なルールとして、データ ノードの平均 CPU 使用率を 60%、ピークを 80% にすることを目標にし、100% までの小さなスパイクを許容する必要があります。 可用性を考慮する場合、特にフル ゾーンが使用できないことを考慮すると、50 つのシナリオがあります。 30 つのアベイラビリティーゾーンがある場合、各ゾーンはトラフィックの 40% を処理します。 ゾーンが使用できなくなると、他のゾーンがそのトラフィックをすべて引き受けることになり、CPU 使用率が 33 倍になります。 この場合、可用性を維持するには、各ゾーンの平均 CPU 使用率を約 17 ~ 50% にする必要があります。 60 つのアベイラビリティーゾーンを実行している場合、各ゾーンがトラフィックの XNUMX% を占有します。 ゾーンが使用できなくなると、他の各ゾーンは約 XNUMX% のトラフィックを獲得します。 この場合、平均 CPU 使用率を XNUMX ~ XNUMX% にすることを目標にする必要があります。
メモリ使用率
OpenSearch サービスは 1 種類のガベージ コレクションをサポートしています。 1 つ目は GXNUMX ガベージ コレクション (GXNUMXGC) で、OpenSearch サービス ノードによって使用されます。 AWS グラビトン 2。 32 つ目は同時マーク スイープ (CMS) で、他のプロセッサを搭載したすべてのノードで使用されます。 ノードに割り当てられたすべてのメモリのうち、メモリの半分 (最大 80 GB) が Java ヒープに割り当てられ、残りのメモリは他のオペレーティング システム タスクやファイル システム キャッシュなどによって使用されます。 ドメインの可用性を維持するには、最大 JVM 使用率を CMS では約 95%、G1GC では約 XNUMX% に保つことをお勧めします。 それを超えると、ドメインの可用性に影響があり、クラスターが異常な状態になります。 また、メモリ使用率をアクティブに監視し、ガベージ コレクターをトリガーする自動調整を有効にすることもお勧めします。
ストレージ使用率
OpenSearch Service は、次のいくつかのガイドラインを公開しています。 ドメインのサイジング。 要件に応じて必要なストレージの適切な量を決定できるように、経験に基づいた公式を提供します。 ただし、時間の経過に伴うストレージの枯渇やワークロード特性の変化に注意することが重要です。 ドメインのストレージが不足せず、データのインデックス作成を継続できるようにするには、次のように構成する必要があります。 アマゾンクラウドウォッチ アラームを鳴らして空きストレージ容量を監視します。
AWS では、各シャードが最適なサイズ帯域内に収まるようにプライマリ シャード数を選択することも推奨しています。 データとトラフィックを使用した概念実証テストを通じて、最適なシャード サイズを決定できます。 ガイドラインとして、検索のユースケースでは 10 ~ 30 GB のプライマリ シャード サイズを使用し、ログ分析のユース ケースでは 45 ~ 50 GB のプライマリ シャード サイズを使用します。 シャードはドメイン内のワーカーであるため、データ ノード全体へのワークロードの分散を直接担当します。 シャードが大きすぎる場合、大規模な集約によって Java ヒープにストレスが発生し、クエリのパフォーマンスが低下し、シャードのリバランス、スナップショット、ホットからウォームへの移行などのクラスターレベルのタスクのパフォーマンスが低下する可能性があります。 シャードが小さすぎると、ドメインの Java ヒープ スペースを圧倒し、過剰な内部ネットワークによってクエリのパフォーマンスが低下し、クラスター レベルのタスクが遅くなる可能性があります。 また、ノードあたりのシャード数を、使用可能なヒープ (インスタンスの RAM の半分、最大 32 GB) に比例させて維持することをお勧めします (Java ヒープ 25 GB あたり 1,000 シャード)。 これにより、ドメイン内の任意のデータ ノードのシャード数が XNUMX 個に実質的に制限されます。
まとめ
この投稿では、OpenSearch Service を使用して高可用性ドメインをセットアップするためのさまざまなヒントとテクニックを学びました。これは、OpenSearch Service を XNUMX つのアベイラビリティーゾーンにわたって実行することで、OpenSearch Service のパフォーマンスと可用性を維持するのに役立ちます。
OpenSearch Service のさまざまな機能に焦点を当てた一連の投稿にご期待ください。 この投稿に関するフィードバックがある場合は、コメントセクションに送信してください。 この投稿について質問がある場合は、新しいスレッドを開始してください。 OpenSearchサービスフォーラム にアクセスするか、 AWSサポート.
著者について
ロヒン・バルガヴァ は、AmazonOpenSearchServiceチームのシニアプロダクトマネージャーです。 AWSでの彼の情熱は、お客様がAWSサービスの正しい組み合わせを見つけて、ビジネス目標を達成できるよう支援することです。
プラシャントアグラワル Amazon OpenSearch Service のシニア検索スペシャリスト ソリューション アーキテクトです。 彼は顧客と緊密に協力してワークロードをクラウドに移行するのを支援し、既存の顧客がクラスターを微調整してパフォーマンスを向上させ、コストを節約するのを支援しています。 AWS に入社する前は、検索とログ分析のユースケースに OpenSearch と Elasticsearch を使用するさまざまな顧客を支援していました。 仕事をしていないときは、旅行をしたり、新しい場所を探索したりしています。 要するに、食べる→旅する→リピートするのが好き。
- SEO を活用したコンテンツと PR 配信。 今日増幅されます。
- プラトアイストリーム。 Web3 データ インテリジェンス。 知識増幅。 こちらからアクセスしてください。
- 未来を鋳造する w エイドリエン・アシュリー。 こちらからアクセスしてください。
- PREIPO® を使用して PRE-IPO 企業の株式を売買します。 こちらからアクセスしてください。
- 情報源: https://aws.amazon.com/blogs/big-data/configure-amazon-opensearch-service-for-high-availability/
- :は
- :not
- :どこ
- $UP
- 000
- 1
- 100
- 8
- 視聴者の38%が
- a
- 私たちについて
- それに応じて
- 達成する
- 越えて
- 積極的に
- 追加
- NEW
- すべて
- 割り当てられました
- また
- しかし
- 常に
- Amazon
- Amazon Webサービス
- 量
- an
- 分析
- 分析論
- および
- どれか
- 何でも
- 約
- です
- 周りに
- AS
- 割り当てられた
- At
- 賃貸条件の詳細・契約費用のお見積り等について
- 利用できます
- 平均
- 避ける
- 回避
- AWS
- BAND
- ベース
- BE
- なぜなら
- になる
- BEST
- ベストプラクティス
- より良いです
- 越えて
- ブランド
- ビジネス
- by
- キャッシュ
- 缶
- 容量
- 場合
- 例
- カタログ
- 変更
- 特性
- 選択する
- class
- 密接に
- クラウド
- クラスタ
- Cms
- コレクション
- コレクタ
- 注釈
- 計算
- 同時
- 検討
- 考えると
- 構築する
- 接触
- 続ける
- 連続的な
- 連続的に
- 制御
- コピー
- 正しい
- 費用
- CPU
- Customers
- データ
- データ損失
- データストレージ
- 専用の
- 需要
- 展開
- 展開する
- 展開
- 配備する
- 決定する
- 異なります
- 直接に
- 議論する
- 途絶
- 配布
- ディストリビューション
- do
- ドキュメント
- そうではありません
- すること
- ドメイン
- 倍増し
- ダウンタイム
- ドリブン
- 各
- 前
- 食べる
- eコマース
- 効果
- どちら
- Elasticsearch
- 選出された
- 選挙
- 要素は
- 有効にする
- エンジン
- エンジン
- 確保
- 確実に
- 特に
- 本質的な
- エーテル(ETH)
- さらに
- イベント
- イベント
- 最終的に
- 既存の
- 探る
- 外部
- 目
- 失敗
- 不良解析
- 特徴
- フィードバック
- File
- もう完成させ、ワークスペースに掲示しましたか?
- 名
- 焦点
- フォロー中
- 前者
- 式
- 無料版
- から
- フル
- 完全に
- 機能性
- g1
- 利得
- 目標
- 保証
- ガイドライン
- 半分
- ハンドル
- 持ってる
- he
- 健康
- 助けます
- 助けました
- ことができます
- ハイ
- 非常に
- 彼に
- 彼の
- 住宅
- 認定条件
- しかしながら
- HTML
- HTTP
- HTTPS
- if
- 影響
- 重要
- 改善されました
- 向上させる
- 改善
- in
- その他の
- 含ま
- index
- インデックス
- 影響
- インフラ
- 内部
- 問題
- IT
- ITS
- Java
- ジョブ
- 参加
- JPG
- キープ
- 保管
- 大
- リーダー
- LEARN
- 学んだ
- 最低
- less
- ような
- LIMIT
- リスト
- 場所
- ログ
- 論理的な
- 見て
- 損失
- 失われた
- 維持する
- 維持
- make
- 作る
- マネージャー
- マッピング
- マーク
- マスター
- マックス
- 五月..
- 手段
- 計測
- メモリ
- 移動します
- 最小化
- 最小
- 分
- 軽減する
- モニター
- モニタリング
- モニター
- 月
- 他には?
- 主に
- の試合に
- しなければなりません
- 必要
- ニーズ
- ネットワーキング
- 新作
- ノード
- 数
- of
- on
- ONE
- の
- オープンソース
- オペレーティング
- オペレーティングシステム
- オペレーショナル
- 最適な
- オプション
- or
- その他
- でる
- 機能停止
- 成果
- が
- 並列シミュレーションの設定
- 参加する
- 情熱
- パフォーマンス
- 物理的な
- 場所
- プラトン
- プラトンデータインテリジェンス
- プラトデータ
- ポスト
- 投稿
- パワード
- 実用的
- プラクティス
- 主要な
- プロセス
- 処理
- プロセッサ
- プロダクト
- プロダクトマネージャー
- 生産
- 生産性
- 促進する
- 正しく
- 提供します
- は、大阪で
- 準備
- パブリッシュ
- 質問
- RAM
- 珍しい
- への
- リバランス
- 推奨する
- おすすめ
- 提言
- お勧めする
- 地域
- 地域
- 残る
- 繰り返す
- 返信
- 表す
- リクエスト
- の提出が必要です
- 要件
- リソースを追加する。
- リソースの活用
- 責任
- REST
- 結果
- 収入
- 右
- ルール
- ラン
- ランニング
- Save
- スケーリング
- シナリオ
- を検索
- 二番
- セクション
- しっかりと
- 選択
- シリーズ
- サービス
- サービス
- セッションに
- 設定
- いくつかの
- ショート
- すべき
- 作品
- 重要
- サイト
- 状況
- サイズ
- サイズ
- 遅く
- 小さい
- So
- ソリューション
- スペース
- 専門家
- スパイク
- 標準
- start
- 都道府県
- まだ
- ストレージ利用料
- ストレス
- 提出する
- 成功
- 成功した
- そのような
- サポート
- サポート
- サポート
- スイープ
- システム
- テーブル
- 取る
- 取得
- Talk
- ターゲット
- タスク
- チーム
- テスト
- より
- それ
- ステート
- アプリ環境に合わせて
- それら
- その後
- そこ。
- 彼ら
- この
- 三
- 介して
- スループット
- 時間
- ヒント
- ヒントとトリック
- 〜へ
- あまりに
- 追跡する
- トラフィック
- 旅行
- 旅行
- 2
- 単位
- ロック解除
- つかいます
- 中古
- 使用されます
- 値
- さまざまな
- 脆弱な
- we
- ウェブ
- Webサービス
- WELL
- いつ
- which
- while
- Wikipedia
- 意志
- 以内
- 無し
- 仕事
- 労働者
- ワーキング
- 作品
- もっと悪い
- 最悪
- でしょう
- 貴社
- あなたの
- ゼファーネット
- ゾーン