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

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

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

Deckhouse

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

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

Веб-интерфейс console

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

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

Обновление

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

Модули

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

Модули

Глобальные настройки

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

  • Глобальные настройки кластера (DNS-имена, toleration).
  • Глобальные настройки модулей (отказоустойчивость, Ingress-класс, StorageClass).
  • Настройки HTTPS (сертификаты).
  • Ресурсы control plane (CPU, память).

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

Глобальные настройки

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

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

Позволяет управлять группами узлов Kubernetes, просматривать их состояние и добавлять новые. Форма добавления узлов содержит:

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

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

Группы узлов

Карточка группы узлов отображает:

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

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

Карточка группы узлов

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

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

Классы машин

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

В разделе конфигурации указывается имя класса, а в блоке ресурсов настраиваются:

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

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

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

Добавление класса машин

Подраздел «Узлы всех групп»

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

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

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

Узлы всех групп

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

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

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

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

Кнопка «Добавить машину» во вкладке «Машины» предназначена для добавления новой машины в кластер и включает обязательные поля конфигурации. При добавлении укажите имя машины, ее адрес и выбрать способ SSH-доступа из выпадающего списка. Дополнительно можно задать лейблы, добавляя ключи и значения для дальнейшей идентификации и управления.

Статистические машины

Кнопка «Добавить SSH-доступ» во вкладке «SSH-доступы» предназначена для настройки подключения к узлам через SSH. Задайте имя доступа, имя пользователя и приватный SSH-ключ, а также, если необходимо, укажите пароль sudo для выполнения привилегированных команд. Дополнительно доступны поля для изменения SSH-порта и добавления дополнительных аргументов SSH.

SSH-доступ

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

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

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

Шаблоны

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

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

Новый шаблон

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

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

Проекты

Для создания проекта используйте кнопку «Создать проект».

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

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

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

Новый проект

Сеть

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

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

В карточке контроллера «nginx» отражены его основные параметры, такие как:

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

Также указан селектор узлов, определяющий, на каких узлах работает контроллер.

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

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

  • порт хоста,
  • порт хоста с Proxy Protocol,
  • порт хоста с резервным контроллером,
  • LoadBalancer,
  • LoadBalancer с Proxy Protocol.

Ingress

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

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

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

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

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

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

Сканер 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

Активные алерты

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

  • по имени,
  • по статусу,
  • по названию.

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

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

Активные алерты

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

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

Отправка логов

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

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

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

Отправка логов

Сбор логов

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

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

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

Сбор логов