Fleet ServerとElastic Agentのインストール(2回目)

前にElastic Agentをインストールして失敗したので、Elasticsearchを再インストールしてもう一度試したときの覚書。

環境: CentOS Steam 9, Elasticsearch 8.11.3, Kibana 8.11.3


1.Fleet Serverをインストール

公式サイトを参考に。

Elastic AgentはAPI Keyを利用するようなのでElasticsearchの設定で「xpack.security.authc.api_key.enabled」を有効にしておく。
参考: Create a standalone Elastic Agent policy | Fleet and Elastic Agent Guide [8.11] | Elastic


  1. Kibanaにログインして
    Mangement | Fleet
  2. "Add Fleet Server"
  3. 事前に用意していたNginxからリバースプロキシするURLを入力
  4. "Generate Fleet Server policy"
  5. "Linux Tar"タブのコマンドを実行。

# cd /opt/software/
# curl -L -O https://artifacts.elastic.co/downloads/beats/elastic-agent/elastic-agent-8.11.3-linux-x86_64.tar.gz
# tar xzvf elastic-agent-8.11.3-linux-x86_64.tar.gz
# cd elastic-agent-8.11.3-linux-x86_64

insecureオプションを付けて実行する。
# ./elastic-agent install --fleet-server-es=https://search.elastic.webrec.jp:443 --fleet-server-service-token=AAEA...QQ --fleet-server-policy=fleet-server-policy --fleet-server-port=8220 --insecure


2.Elastic Agentの動作確認

確認。
# elastic-agent status
# systemctl status elastic-agent

ログを確認する。
ndjson形式だから整形するコマンドを使う。
# /opt/Elastic/Agent
# jq -s '.' elastic-agent-20231225.ndjson | less

Kibanaの画面で"Logs"を確認。

エラーがある。

[elastic_agent][error] ack retrier: commit failed with error: acknowledge 1 actions '[action_id: policy:fleet-server-policy:3:1, type: POLICY_CHANGE]' for elastic-agent 'cedb54b2-3ea2-4ff6-a6d8-59a5dbb5b5ad' failed: status code: 500, fleet-server returned an error: BadRequest, message: findAgentByApiKeyId: failed searching for agent: invalid character '<' looking for beginning of value

接続できてない?
ポートの状況を確認。
# ss -atn

8220は待ち受け状態になっている。

Fleet Serverに接続できるか確認。
# curl -f http://127.0.0.1:8220/api/status

curl: (22) The requested URL returned error: 400

Nginxからリバースプロキシしているので外部サーバーからリクエスト送信。
# curl -f https://fleet.hoge.jp/api/status

同じエラー。
分からん。


3.Elastic Agentをアンインストール

複数サーバーのログとか一元管理できれば便利そうだったけど、必須ではないのでElastic Agentはアンインストールすることにした。
参考: Uninstall Elastic Agents from edge hosts | Fleet and Elastic Agent Guide [8.11] | Elastic

アンインストールコマンド
# elastic-agent uninstall

そのうち使いやすくなっていることを願う。



【関連記事】