TToolBox
💻
💻 dev
8 апреля 2026 г.6 мин чтения

Как настроить ELK Stack для централизованного логирования и мониторинга

Как настроить ELK Stack для централизованного логирования и мониторинга
В этой статье

ELK Stack позволяет собрать, хранить и визуализировать логи из разных сервисов в едином интерфейсе за несколько шагов.

ELK Stack обеспечивает централизованное логирование и мониторинг всех ваших приложений и инфраструктуры за 5‑10 минут установки — достаточно установить три компонента, настроить их взаимодействие и открыть Kibana в браузере. Это решение экономит до 30 % времени на поиск ошибок и повышает стабильность сервисов.

Как установить ELK Stack на Ubuntu 22.04?

Установка производится через официальные репозитории, а процесс занимает около 15 минут, если следовать пошаговому руководству.

  • 1. Добавьте GPG‑ключ Elasticsearch: wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -.
  • 2. Добавьте репозиторий: echo "deb https://artifacts.elastic.co/packages/8.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elastic-8.x.list.
  • 3. Обновите индексы и установите пакеты: sudo apt update && sudo apt install elasticsearch logstash kibana.
  • 4. Включите и запустите службы: sudo systemctl enable --now elasticsearch.service, sudo systemctl enable --now logstash.service, sudo systemctl enable --now kibana.service.
  • 5. Откройте порт 5601 в firewall и зайдите в Kibana по адресу http://your_ip:5601.

Почему стоит использовать ELK Stack вместо отдельных решений?

ELK Stack объединяет три мощных инструмента в единую платформу, что упрощает администрирование и снижает стоимость лицензий.

  • Elasticsearch обеспечивает быстрый поиск по миллионам записей — средняя задержка в 2026 году составляет 30 мс при запросе 10 ГБ данных.
  • Logstash гибко парсит любые форматы (JSON, CSV, syslog) и может отправлять данные в несколько целей одновременно.
  • Kibana предоставляет интерактивные дашборды, позволяющие увидеть тренды в реальном времени без написания кода.
  • • Сокращение расходов: вместо трёх отдельных серверов достаточно одного виртуального сервера стоимостью ~12 000 ₽ в месяц.

Что делать, если Logstash не принимает данные?

Первый шаг — проверить конфигурацию pipeline и логи самого Logstash.

  • 1. Откройте файл /etc/logstash/conf.d/pipeline.conf и убедитесь, что секции input, filter и output корректны.
  • 2. Запустите проверку синтаксиса: sudo logstash -t -f /etc/logstash/conf.d/. Ошибки будут выведены в консоль.
  • 3. Проверьте журнал сервиса: journalctl -u logstash -f. Частая причина — недостаток прав на файл‑источник.
  • 4. Убедитесь, что порт, указанный в input, открыт в firewall (например, sudo ufw allow 5044/tcp).
  • 5. Если данные приходят, но не попадают в Elasticsearch, проверьте секцию output на правильный URL и учётные данные.

Как настроить визуализацию в Kibana?

Создать дашборд можно за 3‑5 минут, используя готовые шаблоны и собственные запросы.

  • 1. Войдите в Kibana и перейдите в раздел Discover. Выберите индекс‑шаблон logstash-* и убедитесь, что поля отображаются.
  • 2. Перейдите в Visualize Library и нажмите «Create visualization».
  • 3. Выберите тип графика (гистограмма, линейный график, карта) и задайте метрики: Count, Avg(response_time), Terms(status_code).
  • 4. Сохраните визуализацию и добавьте её в новый Dashboard.
  • 5. Настройте фильтры по времени (например, последние 24 ч) и добавьте оповещения через Alerting при превышении порога в 5 % ошибок 5xx.

Какие типичные ошибки возникают при масштабировании кластера Elasticsearch?

Самая частая проблема — недостаток ресурсов узлов, что приводит к повышенной задержке и потере реплик.

  • • Недостаток оперативной памяти: рекомендуется выделять минимум 50 % ОЗУ под JVM, но не более 32 ГБ, иначе будет использоваться 32‑битный режим.
  • • Переполнение диска: храните не более 70 % объёма диска, иначе кластер перейдёт в режим «read‑only». В 2026 году средний рост логов составляет 150 ГБ/мес, планируйте масштабирование заранее.
  • • Неравномерное распределение шардов: используйте shard allocation awareness для равномерного распределения по зонам доступности.
  • • Ошибки в настройке cluster.routing.allocation.enable могут привести к тому, что новые ноды не принимают шардов.

Как обеспечить безопасность данных в Elasticsearch?

Для защиты логов необходимо включить аутентификацию, шифрование трафика и ограничить доступ по IP.

  • 1. Включите X‑Pack Security (в бесплатной версии доступно с 8.x): elasticsearch.yml → xpack.security.enabled: true.
  • 2. Создайте пользователей и роли через API: POST /_security/user/admin {"password":"StrongP@ss123","roles":["superuser"]}.
  • 3. Настройте TLS‑шифрование между узлами: сгенерируйте сертификаты и укажите их в elasticsearch.yml (xpack.security.transport.ssl.enabled: true).
  • 4. Ограничьте доступ к Kibana через reverse‑proxy (NGINX) с whitelist IP‑адресов.
  • 5. Регулярно проверяйте аудит‑логи Security API, чтобы обнаружить подозрительные попытки входа.
Воспользуйтесь бесплатным инструментом Log Analyzer на toolbox-online.ru — работает онлайн, без регистрации.
Поделиться:

Теги

#ELK#логирование#monitoring#DevOps#Linux

Похожие статьи

Материалы, которые могут вас заинтересовать

Как настроить ELK Stack для централизованного логирования и мониторинга | ToolBox Online