ITLinuxАдминистрирование

Elastic Cloud для логов: подключение Agent, data stream и проверка доставки

Ниже — минимальная рабочая схема подключения Linux-сервера к Elastic Cloud через Fleet и Elastic Agent. Цель — не просто установить Agent, а получить тестовое событие в data stream и найти его через Elasticsearch API.

1. Проверяем доступность Cloud

curl -I https://YOUR-KIBANA-ENDPOINT
curl -I https://YOUR-ELASTICSEARCH-ENDPOINT

2. Создаём policy в Fleet

  1. Откройте Kibana → Management → Fleet.
  2. Создайте Agent policy, например linux-servers.
  3. Добавьте интеграцию System.
  4. Включите system logs и system metrics.
  5. Сохраните policy.

3. Устанавливаем Elastic Agent

Команду скачивания и enrollment-token копируйте из Fleet для своей версии и архитектуры. Типовой порядок:

tar -xzf elastic-agent-*.tar.gz
cd elastic-agent-*
sudo ./elastic-agent install \
  --url=https://YOUR-FLEET-SERVER:8220 \
  --enrollment-token=YOUR_ENROLLMENT_TOKEN

4. Проверяем службу

sudo systemctl status elastic-agent --no-pager
sudo elastic-agent status
sudo elastic-agent inspect

5. Генерируем тестовое событие

logger -p user.warning 'elastic-cloud-test-1633'
journalctl --since '5 min ago' | grep elastic-cloud-test-1633

6. Проверяем data streams

export ES_URL=https://YOUR-ELASTICSEARCH-ENDPOINT
export ES_API_KEY=YOUR_API_KEY

curl -sS -H "Authorization: ApiKey $ES_API_KEY" \
  "$ES_URL/_data_stream/logs-system.*?pretty"

7. Ищем тестовое событие через API

curl -sS -H "Authorization: ApiKey $ES_API_KEY" \
  "$ES_URL/logs-system.*/_search?q=message:elastic-cloud-test-1633&pretty"

8. Проверяем поля

  • @timestamp соответствует времени события;
  • host.name содержит имя сервера;
  • data_stream.dataset относится к System integration;
  • message содержит тестовую строку;
  • событие видно в Discover.

9. Диагностика

sudo elastic-agent status
sudo journalctl -u elastic-agent --since '15 min ago' --no-pager
sudo ss -ntp | grep elastic-agent
curl -vk https://YOUR-FLEET-SERVER:8220

10. Rollback

sudo elastic-agent uninstall

После удаления удалите неактивный Agent из Fleet и убедитесь, что policy больше не используется этим хостом.

Критерий успеха: Agent имеет статус Healthy, data stream создан, тестовое сообщение находится через API и Discover, а поля host и dataset заполнены корректно.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *