Веб-интерфейс платформы предоставляет доступ к управлению кластером: мониторинг, настройка параметров, управление узлами и модулями, настройка безопасности и сети. Большинство операций, доступных в командной строке через утилиты d8 (Deckhouse CLI) или kubectl, также выполняются через веб-интерфейс.
Доступ к веб-интерфейсу
- Для открытия веб-интерфейса введите в адресной строке браузера
console.<ШАБЛОН_ИМЕН_КЛАСТЕРА>
, где<ШАБЛОН_ИМЕН_КЛАСТЕРА>
— строка, соответствующая шаблону DNS-имен кластера, указанному в глобальном параметреmodules.publicDomainTemplate
. Формат адреса может отличаться в зависимости от конфигурации системы. Уточните точный URL у администратора. - При первом входе введите учетные данные пользователя, полученные от администратора безопасности. После успешной аутентификации откроется главная страница веб-интерфейса. На странице отображены разделы:
Deckhouse
Подраздел «Обзор»
В подразделе «Обзор» представлена ключевая информация о кластере и его компонентах.
Основные элементы интерфейса:
- Панели 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.
Мультитенантность
Подраздел «Шаблоны проектов»
Предназначен для создания шаблонов проектов. Шаблоны проектов по умолчанию включают базовые сценарии использования и служат примером возможностей. Для добавления нового шаблона используется кнопка «Создать шаблон проекта».
Форма «Новый шаблон проекта» предназначена для того, чтобы задать имя проекта, а также добавить лейблы и аннотации для его идентификации. В разделе представлены две вкладки:
- «Схема openAPI», предназначенная для описания спецификации значений в формате JSON,
- «Шаблон ресурсов проекта», где можно определить ресурсы, совместимые с Helm, для управления окружением проекта.
Подраздел «Проекты»
Предназначен для формирования нового проекта на основе заранее подготовленного шаблона, который определяет создаваемые ресурсы и их параметры. В процессе создания происходит валидация параметров по OpenAPI, рендеринг шаблона через Helm и развертывание всех описанных ресурсов внутри автоматически создаваемого пространства имён. Проект использует механизмы Kubernetes для контроля доступа, ограничения ресурсов и настройки сетевой изоляции, что позволяет управлять безопасностью и нагрузкой в рамках пространства имён.
Для создания проекта используйте кнопку «Создать проект».
Форма «Новый проект» предназначена для создания проекта на основе выбранного шаблона. Задайте имя проекта, а также при необходимости добавьте лейблы и аннотации.
В центральной части формы выбирается шаблон проекта, на основе которого будут созданы необходимые ресурсы, и можно оставить комментарий.
В нижнем блоке предусмотрены поля для ввода параметров, требуемых для работы шаблона, а также для отображения его структуры.
Сеть
Подраздел «Ингресс-контроллеры»
Предоставляет информацию о текущих Ingress-контроллерах, обеспечивающих маршрутизацию трафика внутри кластера. Предоставлена возможность сортировать список контроллеров и добавлять новые.
В карточке контроллера «nginx» отражены его основные параметры, такие как:
- тип входящего подключения (LoadBalancer),
- IP-адрес, Ingress-класс (nginx),
- уровень доступа к балансировщику.
Также указан селектор узлов, определяющий, на каких узлах работает контроллер.
В нижней части представлены графики мониторинга загрузки процессора, памяти, сетевого трафика и количества запросов в секунду (RPS), что позволяет отслеживать производительность контроллера. Доступны опции «Создать на основании» для клонирования конфигурации и «Удалить» для удаления Ingress-контроллера.
Кнопка «Добавить» предоставляет возможность выбрать тип нового входящего подключения (инлета) для Ingress-контроллера. Доступны несколько вариантов:
- порт хоста,
- порт хоста с Proxy Protocol,
- порт хоста с резервным контроллером,
- LoadBalancer,
- LoadBalancer с Proxy Protocol.
Безопасность
Подраздел «Сканер CVE»
Предназначен для проверки контейнерных образов на наличие уязвимостей (CVE) в кластере.
Подраздел «Обзор» включает две вкладки: «Отчеты об уязвимостях» и «Сканируемые неймспейсы».
-
Вкладка «Отчеты об уязвимостях» — отображает результаты последних сканирований. Здесь представлена информация о проверенном объекте, включая его имя, пространство имен, тип и имя ресурса, контейнер, а также используемый образ. Если уязвимости не обнаружены, отображается зеленый индикатор. Также есть возможность выполнить повторное сканирование нажатием кнопки «Пересканировать».
-
Вкладка «Сканируемые неймспейсы» — предназначена для управления пространствами имен, которые подлежат сканированию. Интерфейс поддерживает сортировку по имени и параметрам сканируемости. Опционально можно скрыть системные пространства имен. Доступен выбор нужных пространств имен для сканирования и запуск процессов проверки кнопкой «Пересканировать», а также просмотр отчетов по каждому объекту.
Мониторинг
Обзор
Интерфейс отображает состояние экземпляров Prometheus, мониторинг загрузки и возможности конфигурирования.
Подраздел «Обзор» включает две вкладки: «Состояние» и «Конфигурация», предназначенные для мониторинга и настройки экземпляров Prometheus.
Вкладка «Состояние» отображает список работающих подов с указанием имени, узла размещения, статуса, IP-адреса, возраста, а также загрузки CPU и памяти. Для каждого пода указаны компоненты, такие как init-config-reloader
, prometheus
, config-reloader
и kube-rbac-proxy
, обеспечивающие его работу. Также присутствует возможность удаления пода.
Во вкладке «Конфигурация» представлены раскрывающиеся секции для настройки различных аспектов работы Prometheus, включая оперативные и ретроспективные метрики, аутентификацию и подключение к Grafana, а также управление ресурсами. Этот интерфейс предназначен для отслеживания состояния метрик в реальном времени и гибкой настройки интеграции с другими сервисами.
Обработка метрик
Позволяет создавать и управлять правилами обработки метрик. При добавлении нового правила задайте его название и укажите группу обработки. Это даст возможность организовывать и модифицировать поступающие метрики перед их дальнейшей передачей.
Отправка метрик
Настройка экспорта данных в локальный или внешний сервер Prometheus. В процессе добавления нового ресурса указываются URL для отправки метрик, а также настраиваются параметры TLS, аутентификация и возможность предварительной обработки метрик перед отправкой.
Источники для Grafana
Интерфейс позволяет интегрировать Grafana с различными источниками данных, используемыми в дашбордах и визуализировать данные.
Чтобы создать новый источник данных, задайте его название, тип, URL, параметры доступа и настройки аутентификации.
Дашборды для Grafana
Этот подраздел предназначен для управления дашбордами, используемыми для визуализации метрик.
В основном интерфейсе отображается список доступных дашбордов. Предусмотрена сортировка дашбордов:
- по времени создания,
- фильтрация по имени или каталогу.
Каждый дашборд имеет название, принадлежность к папке и возможность создания на его основе нового экземпляра или удаления.
Чтобы добавить новый дашборд:
- Нажмите Добавить;
- Задайте его название и папку, в которой он будет храниться (если папка не существует, она будет автоматически создана);
- Введите JSON-манифест, содержащий описание конфигурации дашборда. Важно, чтобы в манифесте не было локального ID, кроме UID, так как это может повлиять на корректность отображения в Grafana.
Активные алерты
В этом подразделе отображается список текущих предупреждений системы мониторинга. Доступна фильтрация алертов:
- по имени,
- по статусу,
- по названию.
Каждый алерт содержит название, уровень критичности, информацию о времени создания и последнего обновления. Дополнительно указываются связанные компоненты и модули, что помогает определить источник проблемы.
Чтобы получить подробную информацию об алерте, нажмите Читать описание. Внизу интерфейса отображается пояснение о причине срабатывания уведомления.
Журналирование
Раздел «Журналирование» предназначен для настройки источников логов и управления их отправкой.
Отправка логов
Интерфейс предназначен для управления логированием и настройкой отправки логов в различные хранилища.
Чтобы настроить отправку логов:
- Нажмите Добавить.
- Выберите одно из целевых хранилищ:
- Loki;
- ElasticSearch;
- Logstash;
- Vector;
- Kafka;
- Splunk.
- Задайте его название и адрес подключения.
- Добавьте дополнительные настройки, если это необходимо:
- TLS-параметры для безопасного соединения;
- Аутентификация (Basic или Bearer-токен);
- Дополнительные лейблы для фильтрации и организации логов;
- Параметры буфера, определяющие способ хранения логов перед отправкой (на диске или в памяти);
- Ограничения отправки, позволяющие задать частоту отправки записей;
- Исключения, которые позволяют фильтровать определенные логи.
Сбор логов
Подраздел предназначен для настройки источников логов, которые затем могут быть отправлены в целевые хранилища. Интерфейс позволяет сортировать и фильтровать существующие правила сбора логов, а также добавлять новые источники.
Чтобы настроить источники сбора:
- Нажмите Добавить,
- Выберите один из источников:
- File (сбор логов из файловой системы),
- KubernetesPods (сбор логов из подов Kubernetes).
- Задайте название и настройте параметры:
- Хранилище — указывается, куда будут отправляться собранные логи.
- Фильтр файлов — задаются пути к файлам логов, которые необходимо или, наоборот, не нужно считывать. Поддерживаются подстановки (wildcards).
- Разделитель строк — (опционально) задаётся символ, разделяющий записи в файле.
- Фильтрация логов — (опционально) добавляются правила по лейблам и фильтры, чтобы сохранялись только нужные записи.