Fleet は、Elasticsearch で複数のノードとサービスを管理するための、強力な一元管理ソリューションです。Fleet は、Fleet Server と Fleet エージェントという 2 つの主要コンポーネントで構成されています。Fleet エージェントは、ソースサーバーからデータを収集する軽量なデータ収集エージェントです。Fleet Server は Fleet の中央ノードとして、すべての Fleet エージェントを管理・監視し、データを Elasticsearch に転送します。
用語
|
用語 |
説明 |
|
Fleet |
Elasticsearch でエージェントサービスを管理するための、強力な一元管理ソリューションです。 |
|
Fleet エージェント |
ソースサーバーからデータを収集する、軽量なデータ収集エージェントです。 Fleet エージェント は、複数のオペレーティングシステムで実行でき、さまざまな種類のデータを収集できます。 |
|
Fleet Server |
エージェントが収集したデータを Elasticsearch に転送します。 |
前提条件
-
Alibaba Cloud Elasticsearch クラスターが作成済みであること。 詳細については、「Alibaba Cloud Elasticsearch クラスターの作成」をご参照ください。 このトピックでは、Elasticsearch 8.5 クラスターを例として使用します。
説明Alibaba Cloud Elasticsearch クラスターは、バージョン 7.16 と 8.5 のみをサポートします。
-
Elasticsearch クラスターと同じ VPC に Elastic Compute Service (ECS) インスタンスが作成済みであること。 詳細については、「インスタンスの作成」をご参照ください。
説明ECS インスタンスはソースサーバーとして機能します。 Elastic Agent はこの ECS インスタンスからデータを収集します。
エージェントポリシーの作成とインテグレーションの追加
ステップ 1: エージェントポリシーの作成
-
Kibana コンソールにログインします。 詳細については、「Kibana コンソールへのログイン」をご参照ください。
-
アイコンをクリックし、[Management] > [Fleet] に移動します。 -
[Fleet] ページで、[Agent policies] タブをクリックします。
-
[Create agent policy] をクリックし、パネルでポリシーを設定します。
-
名前 に、
custom-logと入力します。 -
[Collect system logs and metrics] のチェックを外します。
-
詳細設定 をクリックします。 [Agent monitoring] セクションで、[Collect agent logs] と [Collect agent metrics] のチェックを外します。
説明このシナリオでは、カスタムログデータのみを収集する必要があります。 したがって、システムログ、システムメトリクス、またはエージェント自体のデータを収集する必要はありません。
-
-
[Create agent policy] をクリックします。
ステップ 2: Fleet Server インテグレーションの作成
-
[Fleet] ページで [Agent policies] タブをクリックし、custom-log エージェントポリシー をクリックします。
-
統合 タブで [Add integration] をクリックします。
-
[Browse integrations] タブで、[Fleet Server] を検索してクリックします。
-
Fleet Server インテグレーションをインストールします。
-
[Fleet Server] ページで、設定 タブをクリックします。
-
[Install Fleet Server assets] をクリックします。 表示されるダイアログボックスで、[Install Fleet Server] をクリックします。
説明インストール後、[Settings] タブにインテグレーションのバージョンが表示されます。
-
-
ページの右上隅にある [Add Fleet Server] をクリックします。
-
[Add Fleet Server integration] ページで、インテグレーションの名前を入力し、
custom-logエージェントポリシーを選択します。 -
[Save and continue] をクリックし、ダイアログボックスで [Add Elastic Agent later] をクリックします。
ステップ 3:Custom Logs インテグレーションの作成
-
custom-log エージェントポリシーの 統合 タブで、[Add integration] をクリックします。
-
[Browse integrations] タबで、[Custom Logs] を検索してクリックします。
-
Custom Logs インテグレーションをインストールします。
-
[Custom Logs] ページで、設定 タブをクリックします。
-
[Install Custom Logs assets] をクリックします。 表示されるダイアログボックスで、[Install Custom Logs] をクリックします。
説明インストール後、[Settings] タブにインテグレーションのバージョンが表示されます。
-
-
ページの右上隅にある [Add Custom Logs] をクリックします。
-
[Add Custom Logs integration] ページで、インテグレーションを設定します。
-
インテグレーション設定 セクションで、[Integration name] を入力します。
-
[Custom log file] セクションで、ECS インスタンス上のログファイルへのパスを入力します。例:
/var/log/a2.log。 -
詳細設定 をクリックし、カスタムデータセット名を指定します。
説明-
データセット名は Elasticsearch のインデックス名を決定します。 新しいデータセット名を指定すると、データが新しいインデックスに送信されるため、データ処理の柔軟性と管理性が向上します。
-
データセット名は Elasticsearch のインデックス命名要件に従う必要があります。 使用できるのは、文字、数字、アンダースコア (_) のみです。
[ログファイルパス] にはログファイルのパス (例:
/var/log/a2.log) を、[データセット名] にはデータセット名 (例:generic) を入力します。 -
-
[Where to add this integration] セクションの [Existing hosts] タブで、
custom-logエージェントポリシーを選択します。
-
-
[Save and continue] をクリックし、ダイアログボックスで [Add Elastic Agent later] をクリックします。
エージェントの追加
ステップ 1:Fleet Server ホストの設定
-
Kibana コンソールにログインします。 詳細については、「Kibana コンソールへのログイン」をご参照ください。
-
アイコンをクリックし、[Management] > [Fleet] に移動します。 -
[Fleet] ページで、設定 タブをクリックします。
-
[Fleet server hosts] セクションで、ホストの編集 をクリックします。
-
[Fleet server hosts] パネルで、ソースサーバーのプライベート IP アドレスを
https://<プライベート IP アドレス>:<ポート>の形式で入力します。例:https://172.16.*.***:8220。説明このトピックでは、ECS インスタンスのプライマリプライベート IP アドレスを使用します。 設定の詳細については、「Fleet Server hosts」をご参照ください。
-
出力 セクションで、Actions 列の
アイコンをクリックします。 -
[Edit output] パネルで、Alibaba Cloud Elasticsearch クラスターのプライベートエンドポイントを
http://<プライベートエンドポイント>:<ポート>の形式で入力します。例:http://es-cn-uqm3auln80001****.elasticsearch.aliyuncs.com:9200。 -
[Save and apply settings] をクリックします。 表示されるダイアログボックスで、保存とデプロイ をクリックします。
-
ステップ 2:Elastic Agent の追加
Fleet Server に Elastic Agent を追加します。
複数のサーバーからデータを収集するには、これらの手順を繰り返してエージェントを追加します。 1つの Fleet Server で複数のエージェントを管理でき、各エージェントは各サーバーからデータを収集します。
-
[Fleet] ページで、[Agent policies] タブをクリックします。
-
custom-logエージェントポリシーの Actions 列で、。 -
[Add agent] パネルの [Select a policy for Fleet Server] で、エージェントポリシーが
custom-logであることを確認します。 -
[Choose a deployment mode for security] で、デフォルトの [Quick start] を選択したままにします。
-
[Add your Fleet Server host] で、モニターホストを追加 をクリックします。
-
[Generate a service token] セクションで、[Generate a service token] をクリックします。
-
[Install Fleet Server to a centralized host] セクションで、自動生成されたコードブロックをコピーし、ECS インスタンスで実行します。
curl -L -O https://artifacts.elastic.co/downloads/beats/elastic-agent/elastic-agent-8.5.1-linux-x86_64.tar.gz tar xzvf elastic-agent-8.5.1-linux-x86_64.tar.gz cd elastic-agent-8.5.1-linux-x86_64 sudo ./elastic-agent install \ --fleet-server-es=http://es-cn-xxx.elasticsearch.aliyuncs.com:9200 \ --fleet-server-service-token=AAEAAWVsYXN0aWMvZmxlZXQtc2Vydmxxx \ --fleet-server-policy=e4b6f6b0-1ef9-11ee-xxxSuccessfullyというメッセージが表示され、Elastic Agent が ECS インスタンスにインストールされ、実行中であることを示します。
データの表示
このセクションでは、ECS のログパス (例:/var/log/a2.log) とデータセット名 (例:generic) を使用してログデータを表示する方法を説明します。
ECS インスタンス上の指定されたログパスにデータが含まれていることを確認してください。
-
インデックスの管理 でデータストリーム名を確認します。
-
アイコンをクリックし、[Management] > [スタック管理] に移動します。 -
左側メニューで、 をクリックします。
-
インデックスの管理 ページで データストリーム タブをクリックし、データセット名
genericを含むデータストリーム (例:logs-generic-default) を見つけます。
-
-
Kibana コンソールで、データストリームに対応するインデックス名を確認します。
-
アイコンをクリックし、[Management] > [開発ツール] に移動します。 -
次のコマンドを実行して、データストリームのインデックス名を取得します:
GET _data_stream/logs-generic-default出力内の
index_nameの値がインデックス名です。
-
-
次のコマンドを実行して、インデックス内のログデータを確認します:
GET <index_name>/_search { "query":{ "match":{ "log.file.path":"/var/log/a2.log" } } }