ELK スタック チュートリアル: Kibana とは Logstash &エラスティックサーチ?

ELK スタックとは何ですか?

最大XNUMXWの出力を提供する ELKスタック は、Elasticsearch という 3 つのオープンソース製品のコレクションです。 Logstash、そしてキバナ。 ELK スタックは、サーバーまたはアプリケーションの問題を特定するために集中ログを提供します。すべてのログを 1 か所で検索できます。また、特定の期間のログを接続することで、複数のサーバーの問題を発見するのにも役立ちます。

  • E ElasticSearch の略: ログの保存に使用されます
  • L の略 LogStash : ログの送信と処理および保存の両方に使用されます。
  • K キバナの略です。 可視化ツール (Web インターフェイス) Nginx または Apache を通じてホストされます

弾性検索、 LogStash と Kibana はすべて、Elastic という名前の会社によって開発、管理、保守されています。

ELK スタックは、ユーザーがあらゆるソースからあらゆる形式でデータを取得し、そのデータをリアルタイムで検索、分析、視覚化できるように設計されています。

ELKスタック Archi構造

この ELK スタック チュートリアルでは、ELK について学習します。 archi構造:

ここでは簡単です archiELKスタックの構造

ELKスタック Archi構造
ELKスタック Archi構造
  • ログ: 分析が必要なサーバーログを特定する
  • Logstash: ログとイベント データを収集します。 データの解析と変換も行います
  • 弾性検索: 変換されたデータは、 Logstash is 保存、検索、インデックス付け。
  • キバナ: Kibana は Elasticsearch DB を使用して探索、視覚化、共有します

ただし、もう XNUMX つコンポーネントまたは Beats と呼ばれるデータ収集が必要です。 これにより、Elastic は ELK の名前を Elastic Stack に変更しました。

ELKスタック ArchiBeats を使用した構造

非常に大量のデータを扱う場合、Kafka、RabbitMQ が必要になる場合があります。 bufferingと回復力。セキュリティのためにnginxを使用できます。

ELKスタック Archi構造

この Elastic スタック チュートリアルでは、 これらのオープンソース製品をすべて詳しく見てみましょう。

エラスティックサーチとは?

Elasticsearch は、 NoSQLデータベース。 Lucene 検索エンジンに基づいており、RESTful APIS で構築されています。 シンプルな導入、最大限の信頼性、容易な管理を実現します。 また、詳細分析を実行するための高度なクエリも提供し、すべてのデータを一元的に保存します。 文書の素早い検索を実行するのに役立ちます。

Elasticsearch を使用すると、大量のデータを保存、検索、分析することもできます。 これは主に、検索要件を満たしたアプリケーションを強化するための基礎となるエンジンとして使用されます。 最新の Web アプリケーションやモバイル アプリケーションの検索エンジン プラットフォームに採用されています。 このツールでは、簡単な検索のほかに、com も提供しています。plex 分析と多くの高度な機能。

エラスティック検索の特徴

  • オープンソースの検索サーバーは Java を使用して作成されています
  • あらゆる種類の異種のインデックスを作成するために使用されますneo私たちのデータ
  • JSON 出力を備えた REST API Web インターフェイスを備えています
  • 全文検索
  • 準リアルタイム (NRT) 検索
  • シャーディングされ複製された検索可能な JSON ドキュメント ストア
  • スキーマフリーの REST および JSON ベースの分散ドキュメント ストア
  • 多言語と地理位置情報のサポート

Elasticsearch の利点

  • スキーマのないデータを保存し、データのスキーマも作成します
  • マルチドキュメント API を利用してデータをレコードごとに操作します
  • データのフィルタリングとクエリを実行して洞察を得る
  • Apache Lucene をベースにしており、RESTful API を提供します
  • 水平方向のスケーラビリティ、信頼性、マルチテナント機能を提供し、インデックス作成をリアルタイムで使用して検索を高速化します。
  • 垂直方向と水平方向の拡大縮小に役立ちます

Elastic Search で使用される重要な用語

この ELK チュートリアルでは、ElasticSearch で使用される重要な用語について学びましょう。

契約期間 使用法
クラスタ クラスターは、データをまとめて保持し、結合されたインデックス作成機能と検索機能を提供するノードのコレクションです。
Node ノードは elasticsearch インスタンスです。 これは、elasticsearch インスタンスの開始時に作成されます。
インデックス インデックスは、同様の特性を持つドキュメントのコレクションです。 例: 顧客データ、製品カタログ。 これは、インデックス作成、検索、更新、削除の操作を実行するときに非常に便利です。 これにより、XNUMX つのクラスター内に同じ数のインデックスを定義できます。
ドキュメント これは、インデックスを作成できる情報の基本単位です。 JSON(キー:値)のペアで表現されます。 '{"ユーザー": "nullcon"}'。 すべての単一ドキュメントは、タイプと一意の ID に関連付けられます。
シャード データを分散できるように、すべてのインデックスを複数のシャードに分割できます。シャードとは、 atomic インデックスの一部。さらにノードを追加する場合は、クラスター全体に分散できます。

何ですか Logstash?

Logstash データ収集パイプライン ツールです。データ入力を収集し、Elasticsearch にフィードします。さまざまなソースからあらゆる種類のデータを収集し、さらに使用できるようにします。

Logstash 異なるソースからのデータを統合し、データを目的の宛先に正規化できます。これにより、分析とユースケースの視覚化のためにすべてのデータをクレンジングおよび民主化できます。

これは XNUMX つのコンポーネントで構成されます。

  • 入力: ログを渡して機械が理解できる形式に処理します。
  • 絞り込み: 特定のアクションまたはイベントを実行するための一連の条件です。
  • 出力: 処理されたイベントまたはログの意思決定者

の特長 Logstash

今これで LogStash チュートリアル、機能について学びましょう LogStash:

  • イベントは内部キューを使用して各フェーズを通過します
  • ログにさまざまな入力を許可します
  • ログのフィルタリング/解析

の利点 Logstash

  • データ処理を一元化するオファー
  • 多種多様な構造化/非構造化データとイベントを分析します
  • ELK LogStash さまざまなタイプの入力ソースおよびプラットフォームに接続するためのプラグインを提供します

キバナとは何ですか?

Kibana は、ELK スタックを完成させるデータ視覚化です。 このツールは、Elasticsearch ドキュメントを視覚化するために使用され、開発者がドキュメントについて迅速に洞察を得るのに役立ちます。 Kibana ダッシュボードは、さまざまなインタラクティブな図、地理空間データ、およびグラフを提供して、com を視覚化します。plex 要求します。

Elasticsearch ディレクトリに保存されているデータの検索、表示、操作に使用できます。 Kibana は高度なパフォーマンスをサポートします データ分析 データをさまざまな表、グラフ、地図で視覚化します。

Kibana では、データの検索を実行するためのさまざまな方法があります。

最も一般的な検索タイプは次のとおりです。

検索の種類 使用法
フリーテキスト検索 セに使われますarchi特定の文字列を指定しない
フィールドレベルの検索 セに使われますarchi特定のフィールド内の文字列に対する ng
論理的なステートメント これは、検索を論理ステートメントに結合するために使用されます。
近接検索 セに使われますarchi特定の文字の近くにある用語はNGです。

この Kibana チュートリアルでは、Kibana の重要な機能について学びましょう。

金花の特徴:

  • エラスティッククラスターからのインデックス付き情報を視覚化できる強力なフロントエンドダッシュボード
  • インデックス付き情報のリアルタイム検索が可能
  • Elasticsearch に保存されているデータを検索、表示、操作できます。
  • データに対してクエリを実行し、結果をグラフ、表、地図で視覚化します。
  • カスタマイズ可能なダッシュボードを構成可能 logstash elasticsearch にログインする
  • 過去のデータをグラフやチャートなどの形式で提供できます。
  • 簡単に設定可能なリアルタイム ダッシュボード
  • Kibana ElasticSearch により、インデックス付けされた情報のリアルタイム検索が可能になります

金花のメリットとデメリット

  • 簡単な視覚化
  • Elasticsearchと完全に統合
  • 視覚化ツール
  • リアルタイムの分析、グラフ作成、要約、およびデバッグ機能を提供します
  • 直感的でユーザーフレンドリーなインターフェイスを提供
  • 検索されたログのスナップショットの共有を許可します。
  • ダッシュボードの保存と複数のダッシュボードの管理を許可します

なぜログ分析を行うのか?

クラウドベースの環境インフラストラクチャでは、パフォーマンスと分離が非常に重要です。 クラウド内の仮想マシンのパフォーマンスは、特定の負荷、環境、システム内のアクティブ ユーザーの数によって異なる場合があります。 したがって、信頼性とノード障害が重大な問題になる可能性があります。

ログ管理プラットフォーム 上記の問題をすべて監視できるほか、プロセス オペレーティング システム ログ、NGINX、ウェブ トラフィック分析用の IIS サーバー ログ、アプリケーション ログ、AWS 上のログ (Amazon Webサービス).

ログ管理は、DevOps エンジニアやシステム管理者がより適切なビジネス上の意思決定を行うのに役立ちます。 したがって、Elastic Stack または同様のツールによるログ分析が重要です。

ELK 対 Splunk

エルク Splunk
Elk はオープンソース ツールです Splunk は商用ツールです。
Elk スタックは Kibana のため、Solaris 移植性を提供しません。 Splunk は Solaris ポータビリティを提供します。
処理速度は厳しく制限されています。 正確かつスピーディな処理を実現します。
ELK は、Elastic Search の組み合わせで作成されたテクノロジー スタックです。Logstash-キバナ。 Splunk は独自のツールです。 オンプレミスとクラウドの両方のソリューションを提供します。
ELK Seでarchi分析と視覚化は、ELK スタックがセットアップされた後にのみ可能になります。 Splunk は、自由に使える完全なデータ管理パッケージです。
ELK ツールは他のツールとの統合をサポートしていません。 Splunk は、他のツールとの統合をセットアップするのに便利なツールです。

ケーススタディ

NetFlix

Netflix ELK スタックに大きく依存します。 ELK スタックを使用して顧客サービス業務のセキュリティ ログを監視および分析している企業。これにより、約 800 ノードで構成される XNUMX を超えるクラスターからドキュメントのインデックス付け、保存、検索が可能になります。

LinkedIn

有名なソーシャル メディア マーケティング サイト LinkedIn は、パフォーマンスとセキュリティを監視するために ELK スタックを使用しています。 IT チームは、負荷をリアルタイムでサポートするために ELK を Kafka と統合しました。 同社の ELK 運用には、100 つの異なるデータセンターにわたる XNUMX 以上のクラスターが含まれています。

Tripwireの

Tripwire は、世界的なセキュリティ情報イベント管理システムです。 同社は ELK を使用して情報パケットのログ分析をサポートしています。

M

Medium は有名なブログ投稿プラットフォームです。彼らは ELK スタックを使用して運用上の問題をデバッグします。同社は検出にも ELK を使用しています。 DynamoDB 鍋。さらに、このスタックを使用することで、同社は毎週 25 万人のユニークな読者と数千の公開投稿をサポートできます。

ELKスタックの長所と短所

Advantages

  • ELK は、企業のさまざまなアプリからのログが単一の ELK インスタンスに集まる場合に最適に機能します。
  • この単一インスタンスについて驚くべき洞察が得られるほか、何百もの異なるログ データ ソースにログインする必要がなくなります。
  • 迅速なオンプレミスのインストール
  • 展開が簡単 垂直方向と水平方向にスケール可能
  • Elastic は、Ruby を含む多数の言語クライアントを提供します。 パイソン。 PHP、Perl、.NET、Java、JavaScript など
  • さまざまなプログラミングおよびスクリプト言語のライブラリの利用可能性

デメリット

  • com に移行すると、スタック内のさまざまなコンポーネントの処理が難しくなる可能性がありますplex
  • 試行錯誤ほど素晴らしいものはありません。 したがって、やればやるほど、その過程でより多くのことを学ぶことができます

まとめ

  • 集中ログは、サーバーまたはアプリケーションの問題を特定する場合に役立ちます。
  • ELK サーバー スタックは、集中ログ システムに関連する問題の解決に役立ちます
  • ELK スタックは、3 つのオープンソース ツール Elasticsearch のコレクションです。 Logstash 木場
  • Elasticsearch は NoSQL データベースです
  • Logstash データ収集パイプラインツールです
  • Kibana は ELK スタックを完成させるデータ視覚化です
  • クラウドベースの環境インフラストラクチャでは、パフォーマンスと分離が非常に重要です
  • ELK スタックでは処理速度が厳しく制限されていますが、 Splunk 正確かつスピーディな処理を実現します
  • Netflix、LinkedIn、Tripware、Medium はすべて、ビジネスに ELK スタックを使用しています
  • ELK Syslog は、企業のさまざまなアプリからのログが単一の ELK インスタンスに集まる場合に最適に機能します。
  • com に移行すると、スタック内のさまざまなコンポーネントの処理が難しくなる可能性がありますplex

私たちを参照してください ElasticSearch のインタビューの質問と回答 新人だけでなく経験豊富な候補者も対象となります。