docker-elk/extensions/fleet
Antoine Cotten 39510e0c0c
doc: Convert deprecated Alerts syntax markers
https://docs.github.com/en/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax#alerts

Signed-off-by: Antoine Cotten <hello@acotten.com>
2023-10-17 10:26:25 +02:00
..
.dockerignore feat: Add Fleet extension, remove standalone APM Server (#760) 2022-10-06 11:58:02 +02:00
Dockerfile feat(ext/fleet): Store state in a volume 2022-11-15 15:48:35 +01:00
README.md doc: Convert deprecated Alerts syntax markers 2023-10-17 10:26:25 +02:00
agent-apmserver-compose.yml chore: Clean up config 2022-11-17 21:24:46 +01:00
fleet-compose.yml Set FLEET_SERVER_HOST explicitly 2023-02-01 00:08:22 +00:00

README.md

Fleet Server

[!WARNING] This extension currently exists for preview purposes and should be considered EXPERIMENTAL. Expect regular changes to the default Fleet settings, both in the Elastic Agent and Kibana.

See Known Issues for a list of issues that need to be addressed before this extension can be considered functional.

Fleet provides central management capabilities for Elastic Agents via an API and web UI served by Kibana, with Elasticsearch acting as the communication layer. Fleet Server is the central component which allows connecting Elastic Agents to the Fleet.

Requirements

The Fleet Server exposes the TCP port 8220 for Agent to Server communications.

Usage

To include Fleet Server in the stack, run Docker Compose from the root of the repository with an additional command line argument referencing the fleet-compose.yml file:

$ docker-compose -f docker-compose.yml -f extensions/fleet/fleet-compose.yml up

Configuring Fleet Server

Fleet Server — like any Elastic Agent — is configured via Agent Policies which can be either managed through the Fleet management UI in Kibana, or statically pre-configured inside the Kibana configuration file.

To ease the enrollment of Fleet Server in this extension, docker-elk comes with a pre-configured Agent Policy for Fleet Server defined inside kibana/config/kibana.yml.

Please refer to the following documentation page for more details about configuring Fleet Server through the Fleet management UI: Fleet UI Settings.

Known Issues

  • Logs and metrics are only collected within the Fleet Server's container. Ultimately, we want to emulate the behaviour of the existing Metricsbeat and Filebeat extensions, and collect logs and metrics from all ELK containers out-of-the-box. Unfortunately, this kind of use-case isn't (yet) well supported by Fleet, and most advanced configurations currently require running Elastic Agents in standalone mode. (Relevant resource: Migrate from Beats to Elastic Agent)
  • The Elastic Agent auto-enrolls using the elastic super-user. With this approach, you do not need to generate a service token — either using the Fleet management UI or CLI utility — prior to starting this extension. However convenient that is, this approach does not follow security best practices, and we recommend generating a service token for Fleet Server instead.

See also

Fleet and Elastic Agent Guide

Screenshots

fleet-agents elastic-agent-dashboard