Elasticsearch この記事では、 のデプロイ方法と Kibana 使用 方法について説明します Docker Compose 。これらは ELK スタックの 2 つの主要コンポーネント( Elasticsearch 、Logstash、 Kibana) であり、データを効果的に検索、分析、視覚化するのに役立ちます。以下に、詳細な構成と各コンポーネントの動作を示します。
1. Elasticsearch
a. 基本構成
Elasticsearch 次のパラメータを使用して Docker コンテナ内で実行するように構成されています。
画像: 公式 Elasticsearch 画像バージョン
8.17.2
が使用されます。シングルノード モード: 環境変数によって有効化されます
discovery.type=single-node
。セキュリティ: X-Pack セキュリティが有効(
xpack.security.enabled=true
) になっており、elastic
ユーザーのパスワードは に設定されていますYVG6PKplG6ugGOw
。ネットワーク: Elasticsearch はすべてのネットワーク インターフェース(
network.host=0.0.0.0
) をリッスンします。JVM メモリ:
-Xms1g
(初期メモリ) と-Xmx1g
(最大メモリ) で構成されます 。
b. Ports および Volumes
Ports: ポート
9200
(HTTP) と9300
(内部通信) はコンテナからホストにマッピングされます。Volumes: Elasticsearch データは
elasticsearch-data
ボリュームに保存されます。
c. ヘルスチェック
ヘルスチェックは、ユーザー で API Elasticsearch を呼び出して の状態を 監視するように設定されています 。API が応答しない場合は、コンテナが再起動します。 /_cluster/health
elastic
2. Kibana
a. 基本構成
Kibana Elasticsearch 次のパラメータを使用して Docker コンテナに 接続し、実行するように構成されています。
画像: 公式 Kibana 画像バージョン
8.17.2
が使用されます。Elasticsearch 接続: アドレス Elasticsearch は に設定されています
http://elasticsearch:9200
。認証: Kibana は
kibana_user
とパスワードを 使用してYVG6PKplG6ugGOw
に接続します Elasticsearch。
b. Ports およびネットワーク
Ports: インターフェースにアクセスするために、 ポート
5601
がコンテナからホストにマッピングされます Kibana。ネットワーク: Kibana はに接続されています
elk-network
。
c. 依存 Elasticsearch
Kibana は準備完了後にのみ起動し Elasticsearch 、2 つのサービス間の接続が成功することを保証します。
3. ボリュームとネットワーク
a. ボリューム
elasticsearch-data: このボリュームは Elasticsearch データを格納するために使用され、コンテナが削除された場合でもデータの永続性が確保されます。
b. ネットワーク
elk-network: 接続してサービスを提供するために ネットワーク
bridge
が作成されます 。 Elasticsearch Kibana
4. 使い方
a. サービスの開始
Elasticsearch および を 起動するには Kibana 、次のコマンドを実行します。
b. Kibana ユーザーの作成(必要な場合)
専用のユーザーを使用する場合は Kibana 、次のコマンドで作成できます。
パスワードの代わりにを使用するには token 、次のコマンドでパスワードを作成します。
5. トラブルシューティング
エラーが発生した場合は、次のコマンドを使用してコンテナ ログを確認できます。
再起動するには Kibana:
Docker Compose ファイル の全内容
以下はファイルの全内容です docker-compose-els.yml
:
結論
この構成を使用すると、データの検索、分析、視覚化のニーズに簡単に対応し て Docker Compose 展開できます 。プロジェクトの特定の要件に合わせてこの構成をカスタマイズおよび拡張してください。 Elasticsearch Kibana