Веб-интерфейс Deckhouse Kubernetes Platform (DKP) предоставляет доступ к управлению кластером, включая мониторинг, настройку параметров, управление узлами и модулями, а также настройку безопасности и сети. Большинство операций, доступных в командной строке через утилиты d8 (Deckhouse CLI) или kubectl, также можно выполнять через веб-интерфейс.

Доступ к веб-интерфейсу

Чтобы открыть веб-интерфейс, выполните следующее:

  1. Введите в адресной строке браузера console.<ШАБЛОН_ИМЕН_КЛАСТЕРА>, где <ШАБЛОН_ИМЕН_КЛАСТЕРА> — строка, соответствующая шаблону DNS-имен кластера, указанному в глобальном параметре modules.publicDomainTemplate. Формат адреса может отличаться в зависимости от конфигурации системы. Уточните URL-адрес у администратора.

  2. При первом входе введите учетные данные пользователя, полученные от администратора безопасности. После успешной аутентификации откроется главная страница веб-интерфейса. На странице отображены следующие разделы:

Deckhouse

Подраздел «Обзор»

В подразделе «Обзор» представлена ключевая информация о кластере Deckhouse Kubernetes Platform (DKP) и его компонентах.

Интерфейс подраздела «Обзор»

Основные элементы веб-интерфейса:

  • Панели «Deckhouse» и «Kubernetes» — отображают текущую версию Kubernetes и основные сведения о платформе.
  • Панель «Инструменты» — содержит кнопки для быстрого доступа к разделам:
    • «Дашборд Kubernetes»;
    • «Документация»;
    • «Grafana» (мониторинг метрик);
    • «Prometheus» (сбор и хранение метрик);
    • «Статус-страница»;
    • «Доступность компонентов»;
    • «Генератор kubeconfig».
  • Панель «Предупреждения» — отображает ошибки, ожидаемые обновления и активные алерты.
  • Панель «Группы узлов с проблемами» — анализирует работоспособность узлов и показывает проблемные группы.
  • Панель «Статусы подсистем» — отображает состояние сервисов кластера.
  • Мониторинг ресурсов — включает графики и показатели изменения нагрузки.
  • Боковое меню — навигация по основным разделам (возможность отображения зависит от уровня доступа пользователя).
  • Меню пользователя (внизу слева):
    • информация о пользователе;
    • настройки (изменение системных параметров, отображение версии веб-интерфейса);
    • редактор YAML для управления конфигурациями.

Подраздел «Обновления»

В подразделе «Обновления» содержится информация о релизах DKP.

Интерфейс подраздела «Обновления»

Подраздел «Модули»

В подразделе «Модули» перечислены запущенные и отключенные модули. Для поиска необходимого модуля предусмотрен фильтр.

Интерфейс подраздела «Модули»

Подраздел «Глобальные настройки»

Подраздел предоставляет доступ к критически важным настройкам кластера DKP:

  • «Глобальные настройки кластера» — настройка шаблона DNS-имён и списка tolerations.
  • «Глобальные настройки модулей» — настройка режима отказоустойчивости, поля для указания IngressClass и StorageClass.
  • «Режим работы HTTPS» — настройка сертификатов безопасности.
  • «Ресурсы управляющих компонентов Kubernetes (control plane)» — настройка количества выделяемых ядер CPU и объёма памяти.

Эти настройки влияют на стабильность, безопасность и отказоустойчивость кластера, поэтому изменяйте их с осторожностью.

Интерфейс подраздела «Глобальные настройки»

Подраздел «Kubernetes»

На вкладках подраздела «Kubernetes» собрана базовая информация о кластере Kubernetes.

Вкладка «Конфигурация» подраздела «Kubernetes»

Вкладка «Облако» подраздела «Kubernetes»

Управление узлами

Подраздел «Группы узлов»

Настройки в этом подразделе позволяют управлять группами узлов Kubernetes, просматривать их состояние и добавлять новые.

Форма добавления узлов содержит следующие поля:

  • «Имя»;
  • «Количество узлов»;
  • «Селектор статических машин» (нельзя изменить после создания);
  • «Выражения для лейблов».

В нижней части формы находятся дополнительные настройки, включая параметры обновления узлов, шаблон узла, системные параметры, а также параметры Chaos Monkey, которые также можно раскрыть для детальной конфигурации.

Интерфейс подраздела «Группы узлов»

Данные о статусе группы в подразделе «Группы узлов»

Редактирование параметров шаблона узла в подразделе «Группы узлов»

Редактирование системных параметров узлов в подразделе «Группы узлов»

В карточке группы узлов отображаются:

  • тип узлов и версия Kubernetes;
  • общее количество узлов, их готовность и актуальность;
  • метрики нагрузки (CPU, память, диск);
  • тейнты и лейблы.

Карточка группы в подразделе «Группы узлов»

Кнопка «Создать» в правом верхнем углу открывает форму создания новой группы узлов.

Кнопка создания новой группы в подразделе «Группы узлов»

В форме можно задать необходимые параметры создаваемой группы узлов.

Редактирование основных параметров

Редактирование параметров автомасштабирования

Редактирование параметров обновления узлов

Редактирование параметров шаблона узла

Редактирование системных параметров узлов

Подраздел «Классы машин»

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

Интерфейс подраздела «Классы машин»

Информация о выбранном классе машин

В форме «Создать ресурс» можно задать параметры новой конфигурации машин для кластера.

Форма добавления класса машин

Подраздел «Узлы»

Подраздел предоставляет сводную информацию обо всех узлах кластера DKP с возможностью фильтрации и сортировки.

В карточке узла отображается:

  • текущее состояние узла;
  • группа;
  • дата и время;
  • зона размещения;
  • внутренний и внешний IP-адреса;
  • используемый container runtime;
  • версия ядра;
  • версия kubelet;
  • операционная система.

Также здесь представлены графики загрузки CPU, памяти, диска и сетевого трафика, что позволяет отслеживать производительность узла. Для управления доступностью узла в кластере предусмотрены кнопки «Cordon» и «Cordon+Drain».

Интерфейс подраздела «Узлы»

Подраздел «Статические машины»

Подраздел предназначен для управления статическими машинами в кластере и включает две вкладки:

  • «Машины» — для работы со статическими машинами;
  • «SSH-доступы» — для настройки SSH-доступа.

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

Кнопка «Добавить машину» на вкладке «Машины» открывает форму добавления новой машины в кластер. В форме необходимо указать:

  • имя машины;
  • адрес машины;
  • способ SSH-доступа, выбранный из выпадающего списка.

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

Форма добавления новой машины

Кнопка «Добавить SSH-доступ» на вкладке «SSH-доступы» открывает форму настройки подключения к узлам через SSH. В форме необходимо указать:

  • имя SSH-доступа;
  • имя пользователя;
  • приватный SSH-ключ;
  • (опционально) пароль sudo для выполнения привилегированных команд.

Дополнительно доступны поля для изменения SSH-порта и добавления дополнительных SSH-аргументов.

Форма добавления SSH-доступа

Мультитенантность

Подраздел «Проекты»

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

В процессе создания проекта происходит:

  • валидация параметров по OpenAPI-схеме;
  • рендеринг шаблона через Helm;
  • развёртывание всех описанных ресурсов в автоматически создаваемом неймспейсе.

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

Интерфейс подраздела «Проекты»

Кнопка «Создать проект» открывает форму добавления нового проекта на основе выбранного шаблона. В форме необходимо задать имя проекта, а также можно опционально добавить лейблы и аннотации.

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

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

Форма создания нового проекта

Подраздел «Шаблоны проектов»

Подраздел предназначен для создания шаблонов проектов.

Шаблоны проектов по умолчанию включают базовые сценарии использования и демонстрируют возможности DKP. Для добавления нового шаблона используется кнопка «Создать» в правом верхнем углу.

Интерфейс подраздела «Шаблоны проектов»

Форма «Новый шаблон проекта» позволяет задать имя шаблона, а также добавить лейблы и аннотации для его идентификации.

В форме представлены две вкладки:

  • «Схема OpenAPI» — для описания спецификации значений в формате JSON;
  • «Шаблон ресурсов проекта» — для определения ресурсов, совместимых с Helm, и управления окружением проекта.

Вкладка «Схема OpenAPI»

Вкладка «Шаблон ресурсов проекта»

Новый шаблон можно создать на основе уже существующего.

Создание нового шаблона на основе существующего

Подраздел «Пользовательские неймспейсы»

Подраздел предназначен для управления пользовательскими неймспейсами проектов.

В секции «Обзор» предоставлена информация об общем состоянии неймспейса.

Секция «Обзор» подраздела «Пользовательские неймспейсы»

Здесь можно управлять параметрами Deployment и других сущностей кластера.

Настройка Deployment пользовательского неймспейса

Кроме того, можно настраивать лимиты и квоты ресурсов.

Настройка лимитов в пользовательском неймспейсе

Настройка квот в пользовательском неймспейсе

Доступ

Подраздел «Операции над пользователями»

Подраздел предоставляет интерфейс управления пользователями.

Интерфейс подраздела «Операции над пользователями»

При необходимости вы можете заблокировать пользователя или сбросить пароль.

Форма блокировки пользователя

Форма сброса пароля пользователя

Сеть

Подраздел «Ингресс-контроллеры»

В подразделе отображается информация о текущих Ingress-контроллерах, обеспечивающих маршрутизацию трафика внутри кластера DKP. При необходимости вы можете отсортировать список контроллеров и добавить новые.

В карточке «Ингресс-контроллеры Nginx» отражены его основные параметры:

  • тип входящего подключения (LoadBalancer);
  • IP-адрес, Ingress-класс (nginx);
  • уровень доступа к балансировщику;
  • селектор узлов, который определяет, на каких узлах работает контроллер.

В нижней части представлены графики мониторинга загрузки CPU, памяти, сетевого трафика и количества запросов в секунду (RPS), что позволяет отслеживать производительность контроллера. Доступны опции «Создать на основании» для клонирования конфигурации и «Удалить» для удаления Ingress-контроллера.

Кнопка «Добавить» в правом верхнем углу позволяет выбрать тип нового входящего подключения (инлета) для Ingress-контроллера. Доступные варианты:

  • HostPort;
  • HostPort с Proxy Protocol;
  • HostPort с резервным контроллером;
  • LoadBalancer;
  • LoadBalancer с Proxy Protocol.

Карточка «Ингресс-контроллеры Nginx»

Хранилище

Подраздел «Классы хранилищ»

Подраздел предназначен для управления классами хранилищ.

Интерфейс подраздела «Классы хранилищ»

Подраздел «Persistent volume»

Подраздел предназначен для управления постоянными томами.

Интерфейс подраздела «Persistent volume»

Подраздел «Локальные тома»

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

Интерфейс секции «Пулы»

Интерфейс секции «Группы томов»

Интерфейс секции «Логические тома»

Интерфейс секции «Блочные устройства»

Безопасность

Подраздел «Сканер CVE»

Подраздел предназначен для проверки контейнерных образов на наличие уязвимостей (CVE) в кластере DKP.

В подразделе представлены вкладки «Отчёты об уязвимостях» и «Сканируемые неймспейсы»:

  • Вкладка «Отчеты об уязвимостях» отображает результаты последних сканирований. Здесь представлена информация о проверенном объекте, включая его имя, неймспейс, тип и имя ресурса, контейнер, а также используемый образ. Если уязвимости не обнаружены, отображается зеленый индикатор. Кнопка «Пересканировать» позволяет выполнить повторное сканирование.
  • Вкладка «Сканируемые неймспейсы» предназначена для управления неймспейсами, которые подлежат сканированию. Интерфейс поддерживает сортировку по имени и параметрам сканирования. Опционально можно скрыть системные неймспейсы. Доступен выбор нужных неймспейсов для сканирования и запуск процессов проверки кнопкой «Пересканировать», а также просмотр отчётов по каждому объекту.

Интерфейс подраздела «Сканер CVE»

Мониторинг

Подраздел «Обзор»

В подразделе отображается состояние экземпляров Prometheus, метрики нагрузки и секция с настройками.

Подраздел «Обзор» включает вкладки «Состояние» и «Конфигурация», предназначенные для мониторинга и настройки экземпляров Prometheus.

На вкладке «Состояние» отображается список работающих подов с указанием имени, узла размещения, статуса, IP-адреса, возраста, а также загрузки CPU и памяти. Для каждого пода указаны компоненты, такие как init-config-reloader, prometheus, config-reloader и kube-rbac-proxy, обеспечивающие его работу. Кнопка справа позволяет удалить выбранный под.

Вкладка «Состояние»

На вкладке «Конфигурация» представлены раскрывающиеся секции для настройки различных аспектов работы Prometheus, включая оперативные и ретроспективные метрики, аутентификацию и подключение к Grafana, а также управление ресурсами. Этот интерфейс предназначен для отслеживания состояния метрик в реальном времени и гибкой настройки интеграции с другими сервисами.

Вкладка «Конфигурация»

Подраздел «Обработка метрик»

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

Форма создания нового правила обработки метрик

Подраздел «Отправка метрик»

Подраздел предназначен для настройки экспорта данных в локальный или внешний сервер Prometheus. В процессе добавления нового ресурса указываются URL-адреса для отправки метрик, а также настраиваются параметры TLS, аутентификация и возможность предварительной обработки метрик перед отправкой.

Форма настройки отправки метрик

Подраздел «Источники для Grafana»

В подразделе можно настроить интеграцию Grafana с различными источниками данных, используемыми в дашбордах, и визуализировать данные.

Чтобы создать новый источник данных, задайте его название, тип, URL-адрес, параметры доступа и настройки аутентификации.

Форма создания нового источника данных для Grafana

Подраздел «Дашборды для Grafana»

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

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

В строке дашборда отображается его имя, принадлежность к папке, а также опции «Создать на основании» для добавления нового экземпляра на его основе и «Удалить».

Чтобы добавить новый дашборд:

  1. Нажмите кнопку «Добавить».
  2. Задайте имя нового дашборда и папку, в которой он будет храниться (если папка не существует, она будет автоматически создана).
  3. Введите JSON-манифест, содержащий описание конфигурации дашборда. Важно, чтобы в манифесте не было локального ID (кроме UID), иначе дашборд может некорректно отображаться в Grafana.

Интерфейс подраздела «Дашборды для Grafana»

Подраздел «Активные алерты»

В этом подразделе отображается список текущих предупреждений системы мониторинга. Алерты можно сортировать по имени и статусу.

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

Чтобы получить подробную информацию об алерте, нажмите «Читать описание». В самом низу отображается пояснение о причине срабатывания алерта.

Интерфейс подраздела «Активные алерты»

Список всех доступных алертов системы мониторинга DKP приведён на отдельной странице документации.

Журналирование

Раздел предназначен для настройки источников логов и управления их отправкой.

Подраздел «Отправка логов»

Подраздел предназначен для управления логированием и настройкой отправки логов в различные хранилища.

Чтобы настроить отправку логов:

  1. Нажмите кнопку «Добавить».
  2. Выберите одно из целевых хранилищ:
    • Loki;
    • ElasticSearch;
    • Logstash;
    • Vector;
    • Kafka;
    • Splunk.
  3. Задайте название хранилища и адрес подключения.
  4. При необходимости задайте дополнительные настройки:
    • TLS-параметры для безопасного соединения;
    • аутентификация («Basic» или «Bearer-токен»);
    • дополнительные лейблы для фильтрации и организации логов;
    • параметры буфера, определяющие способ хранения логов перед отправкой (на диске или в памяти);
    • ограничения отправки, позволяющие задать частоту отправки записей;
    • исключения, позволяющие фильтровать определенные логи.

Форма настройки отправки логов

Подраздел «Сбор логов»

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

Чтобы настроить источники сбора:

  1. Нажмите кнопку «Добавить».
  2. Выберите один из источников:
    • File (сбор логов из файловой системы);
    • KubernetesPods (сбор логов из подов Kubernetes).
  3. Задайте название и настройте параметры:
    • «Хранилище» — укажите, куда будут отправляться собранные логи;
    • «Фильтр файлов» — задайте пути к файлам логов, которые необходимо или, наоборот, не нужно считывать. Поддерживаются подстановки (wildcards).
    • «Разделитель строк» (опционально) — задайте символ, разделяющий записи в файле;
    • «Фильтрация логов» (опционально) — добавьте правила фильтрации по лейблам и фильтры, чтобы сохранять только нужные записи.

Форма настройки источника сбора логов

Просмотр информации об API

Чтобы просмотреть информацию об API в формате Swagger, нажмите кнопку со знаком вопроса в левом нижнем углу интерфейса в выпадающем пользовательском меню.

Кнопка для просмотра информации об API

Окно с общей информацией об API

Просмотр детальной информации о запросе

Дополнительные ресурсы