Перейти к основному содержимому

Справочник по Kibana


CLI, конфигурация и типовые сценарии Kibana (DevOps, CI/CD, инфраструктура). Учебный курс: раздел.

Kibana — это веб-интерфейс для визуализации, анализа и управления данными, хранящимися в Elasticsearch. Он предоставляет широкий набор инструментов — от интерактивного поиска по сырым документам до создания сложных дашбордов, настройки алертов, геопространственного анализа и работы с машинным обучением. Весь функционал Kibana управляется через конфигурационный файл kibana.yml и встроенные пользовательские интерфейсы.


Справочные таблицы​

Kibana — это веб-интерфейс для визуализации, анализа и управления данными, хранящимися в Elasticsearch. Он предоставляет широкий набор инструментов — от интерактивного поиска по сырым документам до создания сложных дашбордов, настройки алертов, геопространственного анализа и работы с машинным обучением. Весь функционал Kibana управляется через конфигурационный файл kibana.yml и встроенные пользовательские интерфейсы.


Конфигурация Kibana (kibana.yml)​

Основной способ настройки сервера Kibana — редактирование файла kibana.yml. Расположение файла зависит от способа установки:

  • Архивные дистрибутивы (.tar.gz, .zip): $KIBANA_HOME/config/kibana.yml
  • Пакетные дистрибутивы (Debian, RPM): /etc/kibana/kibana.yml

Все параметры в файле закомментированы по умолчанию. Для активации достаточно раскомментировать строку и указать нужное значение.


Системные настройки сервера Kibana​

ПараметрПо умолчаниюОписание
server.port5601Порт, на котором Kibana принимает HTTP-запросы.
server.host"localhost"Адрес привязки сервера. Значение "0.0.0.0" разрешает подключения с любых IP.
server.name"your-hostname"Имя сервера Kibana, отображаемое в логах и интерфейсе.
server.basePath""Базовый путь, если Kibana развернут за reverse proxy (например, /kibana). Не должен оканчиваться на /.
server.rewriteBasePathfalseУказывает Kibana удалять basePath из входящих запросов.
server.publicBaseUrl""Публичный URL, по которому пользователи обращаются к Kibana. Обязателен при использовании basePath.
server.maxPayload1048576 (1 МБ)Максимальный размер тела входящего HTTP-запроса в байтах.
server.excludeRoutes—Массив путей, которые блокируются на уровне сервера (например, ["/api/status"]).

Настройки SSL/TLS для Kibana​

ПараметрПо умолчаниюОписание
server.ssl.enabledfalseВключает HTTPS для соединений между браузером и Kibana.
server.ssl.certificate—Путь к PEM-файлу сертификата сервера.
server.ssl.key—Путь к PEM-файлу приватного ключа сервера.

Подключение к Elasticsearch​

ПараметрПо умолчаниюОписание
elasticsearch.hosts["http://localhost:9200"]Массив URL-адресов нод Elasticsearch.
elasticsearch.username"kibana_system"Имя пользователя для внутренних операций Kibana (например, управление .kibana-индексом).
elasticsearch.password"pass"Пароль для указанного пользователя.
elasticsearch.serviceAccountToken—Токен сервисной учётной записи вместо логина/пароля.
elasticsearch.requestTimeout30000 (30 сек)Таймаут ожидания ответа от Elasticsearch в миллисекундах.
elasticsearch.maxSockets1024Максимальное число одновременных сокетов к Elasticsearch.
elasticsearch.compressionfalseВключает сжатие данных при обмене с Elasticsearch.
elasticsearch.shardTimeout30000Таймаут ожидания ответа от шардов Elasticsearch.
elasticsearch.requestHeadersWhitelist[ "authorization" ]Список заголовков, которые Kibana пересылает в Elasticsearch.
elasticsearch.customHeaders{}Статические заголовки, добавляемые ко всем запросам в Elasticsearch.

Настройки SSL/TLS для подключения к Elasticsearch​

ПараметрПо умолчаниюОписание
elasticsearch.ssl.certificate—Сертификат клиента Kibana для mutual TLS.
elasticsearch.ssl.key—Приватный ключ клиента.
elasticsearch.ssl.certificateAuthorities—Путь к файлу центра сертификации (CA).
elasticsearch.ssl.verificationMode"full"Режим проверки сертификата: "full", "certificate", "none".

Логирование​

ПараметрПо умолчаниюОписание
logging.root.level"info"Уровень логирования: "off", "debug", "info", "warn", "error".
logging.appenders.default—Конфигурация вывода логов в файл (поддержка file, rolling-file, JSON-формат).
logging.loggers—Настройка уровней логирования для конкретных компонентов (например, elasticsearch.query, http.server.response).
logging.browser.root.level—Уровень логирования в консоли браузера.

Прочие системные параметры​

ПараметрПо умолчаниюОписание
path.Данные"Данные"Каталог для хранения локальных данных Kibana (не в Elasticsearch).
pid.file—Путь к PID-файлу процесса.
ops.interval5000 (5 сек)Интервал сбора метрик производительности (минимум 100 мс).
i18n.locale"en"Язык интерфейса: "en", "zh-CN", "ja-JP", "fr-FR", "de-DE".

Настройки миграций сохранённых объектов​

ПараметрПо умолчаниюОписание
migrations.batchSize1000Количество документов, обрабатываемых за одну итерацию миграции.
migrations.maxBatchSizeBytes"100mb"Максимальный размер пакета при индексации.
migrations.retryAttempts15Число попыток повтора при временных ошибках миграции.

Настройки автозаполнения поиска​

ПараметрПо умолчаниюОписание
unifiedSearch.autocomplete.valueSuggestions.timeout1000Таймаут генерации подсказок в миллисекундах.
unifiedSearch.autocomplete.valueSuggestions.terminateAfter100000Максимальное число документов на шард для генерации подсказок.

Основные UI-элементы и функции Kibana​

Discover​

Интерфейс для интерактивного просмотра и фильтрации сырых документов из Elasticsearch.

Элементы:

  • Панель поиска: полнотекстовый запрос или фильтр по полям.
  • Time filter: выбор временного диапазона (обязательно наличие временного поля).
  • Field list: список доступных полей с возможностью быстрого фильтра.
  • Document view: отображение отдельных документов в формате JSON.
  • Histogram: визуализация распределения событий по времени.

Visualize Library​

Библиотека всех созданных визуализаций.

Типы визуализаций:

  • Vertical / Horizontal Bar
  • Line / Area
  • Pie / Donut
  • Goal / Gauge
  • Tag Cloud
  • Heatmap
  • Lens (гибкий drag-and-drop редактор)
  • TSVB (Time Series Visual Builder)
  • Vega (на основе спецификации Vega/Vega-Lite)

Dashboards​

Композитные страницы, объединяющие несколько визуализаций и виджетов.

Функции:

  • Глобальные фильтры (применяются ко всем панелям).
  • Time range picker (единый временной диапазон).
  • Full-screen mode.
  • Export в PDF, PNG, CSV.
  • Embedding через iframe.
  • Drill-down по данным (переход в Discover или другую визуализацию).

Alerting​

Система мониторинга и оповещения на основе правил.

Типы правил:

  • Threshold alert (превышение порога).
  • Anomaly detection alert.
  • Uptime monitor alert.
  • Custom query alert.

Действия (Actions):

  • Отправка email.
  • Webhook.
  • Slack, PagerDuty, Jira и другие интеграции.
  • Индексация события в Elasticsearch.

Reporting​

Генерация отчётов по дашбордам и визуализациям.

Форматы:

  • PDF
  • PNG
  • CSV (для таблиц и Discover)

Режимы:

  • On-demand
  • Scheduled (по расписанию)

Maps​

Геопространственный анализ данных.

Возможности:

  • Отображение geo_point и geo_shape.
  • Heatmap, Grid, Clustering.
  • Наложение собственных слоёв (GeoJSON, WMS).
  • Фильтрация по регионам.

Machine Learning​

Анализ временных рядов и обнаружение аномалий без написания кода.

Функции:

  • Anomaly detection jobs.
  • Данные frame analytics (classification, regression, outlier detection).
  • Model management и переобучение.

Dev Tools​

Встроенный REST-клиент для взаимодействия с Elasticsearch.

Компоненты:

  • Console: отправка запросов в формате Query DSL.
  • Search Profiler: анализ производительности запросов.
  • Painless Lab: тестирование скриптов на языке Painless.

Management​

Центр администрирования Kibana.

Подразделы:

  • Stack Management — управление индексами, шаблонами, политиками ILM.
  • Spaces: изоляция контента для разных команд.
  • Roles & Users: управление RBAC (в платной версии).
  • Saved Objects — экспорт/импорт дашбордов, визуализаций, поисков.
  • Fleet: управление агентами Elastic Agent и интеграциями.
  • Connectors: настройка внешних сервисов для алертов.

Переменные окружения и подстановки​

Kibana поддерживает использование переменных окружения в kibana.yml:

elasticsearch.hosts: ["${ELASTICSEARCH_URL:http://localhost:9200}"]

Синтаксис ${VAR_NAME:default_value} позволяет задать значение по умолчанию, если переменная не установлена.


Ошибки​

СитуацияЧто проверить
Команда не найденаPATH, установка пакета, alias
Permission deniedпользователь, группа, sudo, ACL
Неверная версиясм. "Совместимость", --version

Совместимость​

ОбластьПримечание
Версииактуальные LTS/стабильные релизы Kibana
Платформыофициальная матрица поддержки вендора
СтандартыRFC, ISO, спецификация API — см. таблицы выше

Основа по протоколу

Базовый разбор HTTP и HTTPS находится в отдельной статье — HTTP как основа веб-интеграций.


В подборках​

Статья входит в тематические подборки и блок "С чего начать?" на главной. Соседние шаги того же маршрута:

Справочники — Справочник по Logstash, Справочник по Loki, Справочник по AWS, Справочник по Tempo, Справочник по Elasticsearch, E2E-тесты и CI с Playwright и GitHub Actions.