Elasticsearch のモニタリング

「 Instana 」エージェントをインストールすると、「 Elasticsearch 」センサーが自動的に展開およびインストールされます。

注:Elasticsearch センサーは、 OpenSearch の監視に対応していません。 AWS ( OpenSearch, )の監視に関する詳細については、「Amazon OpenSearch Service の監視」 を参照してください。

サポート情報

Elasticsearch センサーが現在の環境と互換性があるかどうかを確認するには、以下のサポート情報セクションをご確認ください:

サポート対象のオペレーティング・システム

Elasticsearch センサーの対応OSは、ホストエージェントの要件と一致しています。これについては、各ホストエージェントの「対応OS」セクション(例: Unix の対応OS )で確認できます。

対応バージョンとサポート方針

このセンサーは、 0.17.0 から 8.17.1 までのバージョンの Elasticsearch に対応しています。

以下の表は、最新のサポート対象バージョンとサポート方針を示しています:

テクノロジー サポート・ポリシー 最新技術バージョン サポートされる最新バージョン
Elasticsearch 8 45 日間 9.3.3 8.19.14

サポートポリシーに関する詳細については、 「センサーのサポート戦略」 を参照してください。

注:Elasticsearch バージョン 8.17 以降で導入されたセキュリティ権限は、 Instana エージェントの Elasticsearch JVM への接続を含め、サードパーティ製の計測機能に影響を与える可能性があります。 これらのバージョンでモニタリング機能を有効にすると、安定性やパフォーマンスに関する問題が発生する可能性があります。ただし、そのような問題はまれです。 監視対象から影響を受けたノードを除外するには、 選択的監視を使用してください。

構成

Instana は、自動的に最大 1000 の索引をモニターして、索引当たり 5 個の最も重要なメトリックを収集します。 最大 200 個の索引について、索引ごとに 20 個のメトリックを収集する詳細な索引モニターを有効にするには、以下に示すように、 <agent_install_dir>/etc/instana/configuration.yaml エージェント構成ファイルで indicesRegex を指定する必要があります。

com.instana.plugin.elasticsearch:
  enabled: true
  indicesRegex: '<INSERT_INDEX_REGEX_HERE>' # eg. 'env-prod.*'
  poll_rate: 1 # values are in seconds. Default value is 1 second.
 
注: 特定のポーリング間隔が指定されていない場合、デフォルトのポーリング間隔は1秒となります。

ポーリングレートの設定

注:Instana、 Elasticsearch sensor、 1.1.79 以降では、 データ取り込み量を削減するためにポーリングレートを設定できるようになっています。 この機能は、セルフホスト型の Instana バックエンド311以降でサポートされています。

次の例に示すように、agent configuration.yaml ファイル poll_rate 内のパラメータを使用して、 Instana が Elasticsearch からデータやメトリクスを収集するためにポーリングを行う頻度を設定できます

com.instana.plugin.elasticsearch:
  poll_rate: 1 # values are in seconds. Default value is 1 second.
注: 特定のポーリング間隔が指定されていない場合、デフォルトのポーリング間隔は1秒となります。

メトリック収集

メトリックを表示するには、以下のステップを実行します。

  • Instana UIのナビゲーションメニューから、「インフラストラクチャ」を選択します。
  • Elasticsearch がインストールされている特定のモニター対象ホストをクリックします。

以下のパフォーマンス・メトリック、構成データ、および正常性シグニチャーを含むホスト・ダッシュボードを表示できます。

ノード・レベル

構成データ

  • バージョン
  • クラスター
  • 正常性状況
  • ノード名
  • ノード・タイプ
  • ノードがマスター
  • ノードがマスター適格
  • トランスポート
  • HTTP
  • ログ・ディレクトリー
  • シャード
  • 索引

パフォーマンス・メトリック

データ・ポイント 説明 粒度
クエリー待ち時間 照会待ち時間は NodeIndicesStats#SearchStatsから収集されます。 1 秒
クエリーの数 1 秒当たりの照会数は、 NodeIndicesStats#SearchStatsから収集されます。 1 秒
ドキュメント合計数 文書の総数は DocsStats#countから収集されます。 1 秒
追加されたドキュメント 索引付け操作の総数は、IndexingStats#indexCount から収集されます。 1 秒
削除されたドキュメント 実行された削除操作の数は、 IndexingStats#deleteCountから収集されます。 1 秒
アクティブなシャード アクティブなシャードの数は、IndexRoutingTable#ShardRouting から収集されます。 1 秒
アクティブなプライマリー・シャード アクティブなプライマリー・シャードの数は、IndexRoutingTable#ShardRouting から収集されます。 1 秒
最新表示数 1 秒当たりに実行されるリフレッシュの数は、 NodeIndicesStats#RefreshStatsから収集されます。 1 秒
最新表示時間 実行されたマージの合計時間は、 NodeIndicesStats#RefreshStatsから収集されます。 1 秒
フラッシュ・カウント 1 秒当たりに実行されるフラッシュの総数は、 NodeIndicesStats#FlushStatsから収集されます。 1 秒
フラッシュ時間 実行されたマージの合計時間は、 NodeIndicesStats#FlushStatsから収集されます。 1 秒
索引のメトリック 文書数、削除数、および索引ごとのサイズは、 IndexStats#DocsStatsから収集されます。 1 秒
Lucene セグメント セグメントの数は、NodeIndicesStats#SegmentsStats#count から収集されます。 1 秒
アクティブ・スレッド 検索、索引、バルク、マージ、フラッシュ、取得、管理、最新表示は、ThreadPoolStats.Stats#active から収集されます。 1 秒
キューに入れられたスレッド 検索、索引、バルク、マージ、フラッシュ、取得、管理、最新表示は、ThreadPoolStats.Stats#queue から収集されます。 1 秒
拒否されたスレッド 検索、索引、バルク、取得は、ThreadPoolStats.Stats#rejected から収集されます。 1 秒
送信データ 内部クラスター通信中にノードによって送信される TX パケットのサイズは、 TransportStats#tx_size から収集されます。 1 秒
受信データ 内部クラスター通信中にノードが受信する RX パケットのサイズは、 TransportStats#rx_size から収集されます。 1 秒

索引メトリック

データ・ポイント 説明 粒度
クエリーの合計数 クエリー操作の総数は、SearchStats.Stats#queryTotal から収集されます。 1 秒
現行のクエリー 現在実行中の照会操作の数は、 SearchStats.Stats#queryCurrent から収集されます。 1 秒
フェッチの合計数 フェッチ操作の総数は、SearchStats.Stats#fetchCount から収集されます。 1 秒
現行のフェッチ 現在実行中のフェッチ操作の数は、 SearchStats.Stats#fetchCurrent から収集されます。 1 秒
クエリー時間 照会操作の実行に費やされた時間 (ミリ秒単位) は、 SearchStats.Stats#queryTimeInMillis から収集されます。 1 秒
フェッチ時間 フェッチ操作の実行に費やされた時間 (ミリ秒単位) は、 SearchStats.Stats#fetchTimeInMillis から収集されます。 1 秒
クエリー・キャッシュ強制削除 クエリー・キャッシュ強制削除の数は、QueryCacheStats#evictions から収集されます。 1 秒
要求キャッシュ強制削除 キャッシュ除去要求の数は、 RequestCacheStats#evictions から収集されます。 1 秒
get 要求 Get 要求の総数は、 GetStats#count から収集されます。 1 秒
get 要求時間 get 要求に費やされた時間 (ミリ秒) は、GetStats#timeInMillis から収集されます。 1 秒
失敗した取得要求数 失敗した get 要求の数は、GetStats#missingCount から収集されます。 1 秒
失敗した取得要求の時間 失敗した Get 要求に費やされた時間 (ミリ秒) は、 GetStats#missingTimeInMillis から収集されます。 1 秒
失敗した索引付け操作 失敗した索引付け操作の数は、 IndexingStats#indexFailedCount から収集されます。 1 秒
アクティブなマージの数 現在実行されているマージの数は、 MergeStats#current から収集されます。 1 秒
合計マージ・サイズ 実行されるマージの合計サイズは、 MergeStats#totalSizeInBytes から収集されます。 1 秒
合計マージ時間 実行されたマージの合計時間は、 MergeStats#totalTimeInMillis から収集されます。 1 秒

「索引メトリック」セクションで言及されている索引メトリックは、エージェント構成の indicesRegex 正規表現を使用して構成された索引に対して有効になります。

正常性シグニチャー

各センサーには、着信メトリックに対して継続的に評価され、ユーザーの影響に依存する問題またはインシデントを発生させるために使用される、正常性シグニチャーのキュレーションされた知識ベースがあります。

組み込みイベントは、エンティティのヘルスシグネチャに異常が検出されたことを受けて課題やインシデントをトリガーし、 カスタムイベントは、特定のエンティティの個々のメトリクスのしきい値に基づいて課題やインシデントをトリガーします。

Elasticsearch ノードのビルド・イベントについて詳しくは、 組み込みイベントのリファレンスを参照してください。

クラスター・レベル

パフォーマンス・メトリック

データ・ポイント 説明 粒度
クエリー待ち時間 照会待ち時間は、すべてのノードの最大照会待ち時間として計算されます。 1 秒
クエリーの数 照会カウントは、すべてのノードの照会カウントの合計として計算されます。 1 秒
ドキュメント合計数 「全体文書」は、すべてのノードの全体文書の合計として計算されます。 1 秒
追加されたドキュメント すべてのノードについて追加された文書の合計。 1 秒
削除されたドキュメント すべてのノードで削除された文書の合計。 1 秒
索引 索引の数 1 秒
シャード アクティブ、アクティブ 1 次、初期化中、再配置中、未割り当ては ClusterHealthから収集されます。 1 秒
クラスターの状態のサイズ ClusterStateのサイズです。 1 秒