Elasticsearch (ES) クラスターで CPU、メモリ、またはディスクの使用率が一貫して高い場合、またはクエリと書き込みのパフォーマンスがビジネスニーズを満たせない場合は、クラスター構成をスペックアップできます。スペックアップにより、ノード数の増加、ノード仕様のスペックアップ、ディスク領域の追加、または新しいノードタイプの追加によって、サービスの安定性を回復できます。
スペックアップ前の注意
スペックアップ操作は、サービスの遅延、構成の競合、課金の変更を引き起こす可能性があります。続行する前に、以下の内容をよくお読みください。
サービスの安定性
クラスター変更中のサービスの安定性に関するルール:
クラスター
サービスステータス
操作
通常の負荷 + レプリカあり
通常の負荷: CPU ≤ 60%、ヒープメモリ ≤ 50%、負荷 < コア数
サービスは継続します。パフォーマンスがわずかに低下する可能性があります。
追加の操作は不要です。
高負荷 + レプリカなし
高負荷: スペックアップ中の書き込みまたはクエリの高同時実行、CPU > 60%、ヒープメモリ > 50%
時折アクセスがタイムアウトする
クライアントでリトライメカニズムを有効にします。
スペックアップ前にインデックスのレプリカ数を増やします。
高負荷 + 異常ステータス
時折アクセスがタイムアウトまたはジッターが発生する
構成を変更する前にクラスターのステータスを修正します。
操作ウィンドウ: オフピーク時に操作を実行します。
キャパシティプランニング
必要なクラスターキャパシティを評価します。
構成の制約
スペックアップではバージョン変更はサポートされません。
スペックアップ操作では、一度に 1 種類のノードしか変更できません。
コストへの影響
スペックアップ注文を送信すると、システムは新しい構成に基づいて課金します。課金ルールの詳細については、「従量課金」および「サブスクリプション」をご参照ください。
スペックアップ前のチェック
以下のチェックを完了せずにクラスターをスペックアップすると、クラスターのクラッシュ、データ損失、またはサービスの利用不能につながる可能性があります。各項目を必ずチェックおよび検証してください。
クラスターのヘルス状態
GET _cluster/healthを実行して、クラスターのステータスが GREEN であることを確認します。ステータスが GREEN でない場合、詳細については、「クラスター変更エラー: クラスターのヘルスステータスが異常」をご参照ください。負荷の安全性
GET _cat/nodes?vを実行します。推奨される CPU 使用率は 60% 以下です。この値を超える場合は、クライアントでリトライメカニズムを有効にし、インデックスのレプリカ数を増やしてください。インデックスの準備
GET /_cat/indices?vを実行して、CLOSE 状態のインデックスがあるか確認します。存在する場合は、POST /<index_name>/_openを実行して一時的に開きます。そうしないと、次の理由で構成変更が失敗する可能性があります:インデックスが CLOSE 状態の場合、クラスターのステータスは GREEN になりません。ES は、シャード割り当てルールの調整など、特定の機密性の高い構成変更を実行する前に、クラスターのステータスが GREEN である必要があります。
構成変更中、クラスターはシャードを再割り当てします。次の点に注意してください:
閉じられたインデックスのシャードは再割り当てできません。
これにより、GREEN ステータスに依存する操作が失敗します。
これにより、クラスターのステータスが GREEN に達するのを防ぎます。到達できる最高のステータスは YELLOW です。
GET _cat/indices?vを実行して、各インデックスのレプリカ数が少なくとも 1 であることを確認します。マルチゾーンインスタンスの場合、スペックアップ中にクラスター内のインデックスのレプリカ数がゾーン数よりも少ないことを確認してください。たとえば、レプリカ数を 1 に設定できます。スペックアップが完了したら、手動でレプリカ数を増やす必要があります。
シャードのバランス
GET _cat/shards?vを実行して、不均衡なシャードがないか確認します。重要スペックアップ前にシャードの分散が均等であることを確認することは、プロセス中またはプロセス後のパフォーマンス低下やクラスターのクラッシュを防ぐための重要なステップです。
prirep: レプリカシャード (r) にUNASSIGNEDのものがないか確認します。state: 長時間RELOCATING状態のままになっているシャードがないか確認します。
これらの問題により、新しいノードがシャードを正しく受信できなくなります。これにより、スペックアップ後もクラスターのステータスが YELLOW または RED のままになります。これらの問題が存在する場合、詳細については、「クラスター負荷の不均衡に対する解決策」をご参照ください。
方法 1: コンソールでのスペックアップ
インスタンス ページで、[スペックアップ] をクリックします。
または、基本情報 ページで、 を選択します。
[スペックアップ/スペックダウン] ページで、必要に応じて構成パラメーターを調整します。
重要利用可能な構成パラメーターは、クラスターのタイプとバージョンによって異なります。実際のパラメーターは [スペックアップ/スペックダウン] ページに表示されます。
ゾーン数を変更する際には、次のルールが適用されます: あるゾーンで特定のインスタンスタイプの在庫が不足している場合、スペックアップする前にそのゾーンのノードを移行する必要があります。
増加: ゾーン数を 1 から 2 または 3 に増やすことができます。
ノード仕様 (ストレージタイプ) をスペックアップできます。次のオプションは、パフォーマンスの低いものから高いものの順にソートされています:
旧世代ディスク: 基本ディスク、Ultra ディスク、および標準 SSD。
説明これらのディスクは、一部のリージョンおよびゾーンで段階的に廃止されています。ディスクタイプを選択する際は、エンタープライズ SSD (ESSD) を選択することをお勧めします。
ESSD: ESSD は、25 ギガビットイーサネット (GbE) ネットワークとリモートダイレクトメモリアクセス (RDMA) テクノロジーを組み合わせています。ディスクあたり最大 100 万のランダム読み取り/書き込み I/O 操作/秒 (IOPS) と低いシングルリンクレイテンシーを提供します。
ローカルディスク。
説明ローカルディスクは、ECS インスタンスが存在する物理サーバ上のローカルハードディスクデバイスです。ECS インスタンスにローカルストレージアクセスを提供します。ローカルディスクは、高いストレージ I/O パフォーマンスと費用対効果の高いマスストレージを必要とするシナリオに適しています。
スマート変更 (デフォルトで有効): システムは設定項目に基づいて最適な変更メソッドを自動的に選択します。この機能を無効にして、手動で変更メソッドを指定できます:
変更メソッド
原則
所要時間
サービスへの影響とシナリオ
ブルーグリーン変更
新しいノードを追加 → データをコピー → シームレスに切り替え
長い
ノードの IP アドレスが変更されます。クラスターのパフォーマンスが一時的に変動する可能性があります。
変更時間に敏感ではないが、高いクラスター可用性を必要とするシナリオに適しています。
インプレース変更
ノードのローリングアップデートを実行します (データコピーは不要)。
短い
ノードの IP アドレスは変更されません。クラスターのパフォーマンスが一時的に変動する可能性があります。
クラスターにパフォーマンスボトルネックがあり、迅速な変更が望まれるシナリオに適しています。
重要リソース使用率が高い場合 (例: CPU > 60%)、インプレース変更は注意して使用してください。
強制変更: ヘルスチェックをスキップしますが、強制的なクラスターの再起動をトリガーします。これにより、長時間のサービス中断が発生する可能性があります。回復時間はデータ量によって異なります。このメソッドは、クラスターがすでに利用できない場合の緊急スケールアウトにのみ使用してください。
[利用規約] と [サービスレベルアグリーメント] を確認して同意し、[今すぐ購入] をクリックします。システムは課金方法に基づいて課金します。
スペックアップ中、クラスターのステータスは [有効化中] に変わります。クラスターのパフォーマンスが一時的に変動し、一時的な切断が発生する可能性があります。スペックアップが完了すると、クラスターのステータスは [正常] に変わります。
方法 2: API を呼び出してスペックアップする
API を呼び出してクラスターをスペックアップする方法の詳細については、「UpdateInstance」をご参照ください。
進捗の監視とスペックアップ後の検証
スペックアップが開始された後、コンソールの [インスタンス] > インスタンスの [基本情報] で進捗を確認できます。
[詳細を表示] をクリックします:
スペックアップが完了したら、新しい構成が適用されていることを確認します。クラスターの [基本情報] ページで、次の項目を確認します:
クラスターのステータスが正常であること。
ゾーン
ノード数とストレージ仕様: 新しいノードがクラスターに参加し、ストレージ仕様が正しいことを確認します。
シャードのバランス:
GET _cat/allocation?vを実行してシャードの分散を確認します。シャードが不均衡な場合、詳細については、「クラスター負荷の不均衡に対する解決策」をご参照ください。