Привет, Хабр! На связи Евгений Шевченко, технический директор веб-интерфейсов Deckhouse Kubernetes Platform.

Раньше полноценный веб-интерфейс был доступен только в коммерческих редакциях Deckhouse Kubernetes Platform (DKP). Начиная с версии 1.46 модуля console тот же интерфейс работает и в Community Edition (DKP CE) — без ограничений в части администрирования.

Что было раньше и что изменилось

В работе с DKP есть две группы сценариев: администрирование платформы и применение платформы.

Администрирование платформы почти целиком построено на cluster-wide-ресурсах (глобальных для всего кластера). Оно включает в себя обновления DKP, управление модулями платформы, управление узлами, интеграцию с каталогами пользователей и т. д.

При применении платформы пользователь управляет преимущественно namespace-scoped-ресурсами. Неймспейсы создают вручную или по шаблону (последние мы называем проектами).

Администрирование и применение — два глобально разделённых в веб-интерфейсе раздела:

Первоначально веб-интерфейс в Community Edition полноценно работал только со сценариями применения платформы: управление нагрузкой на стандартном наборе namespace-scoped-ресурсов Kubernetes и DKP, включая виртуализацию. При этом функции администрирования в интерфейсе были доступны только для чтения, независимо от прав пользователя на платформе. Исключениями были управление проектами и неймспейсами: их можно было создавать и настраивать.

Управление параметрами Kubernetes с предупреждением об ограничении в редакции CE
Управление параметрами Kubernetes с предупреждением об ограничении в редакции CE

Начиная с версии DKP v1.46 это ограничение снято. Полный список изменений — в релизах модуля console.

Какие возможности теперь есть в веб-интерфейсе DKP CE

В плане администрирования веб-интерфейс DKP CE даёт следующие основные возможности:

  • Обновление платформы и управление модулями.

  • Управление узлами кластера и версией Kubernetes.

  • Настройки виртуализации.

  • Управление доступом: RBAC, Cluster Authorization Rules, квотирование в проектах.

  • Управление Ingress-контроллерами и TLS-сертификатами (cert-manager).

  • Настройка политики запуска контейнеров.

  • Интеграция с каталогами пользователей и СХД.

  • Мониторинг: дашборды и алерты — часть интерфейса, настройка сбора и отправки логов.

  • Просмотр истории изменений в формах конфигурации с поддержкой undo/redo (Ctrl+Z).

Управление параметрами Kubernetes стало доступным
Управление параметрами Kubernetes стало доступным
Раздел «Группы узлов» со списком текущих групп и возможностью создавать новые
Раздел «Группы узлов» со списком текущих групп и возможностью создавать новые
Раздел «Модули» с возможностью управлять настройками модулей
Раздел «Модули» с возможностью управлять настройками модулей

В использовании платформы доступны такие сценарии работы с нагрузкой:

  • Управление виртуальными машинами, дисками, образами дисков и снимками ВМ.

  • Мониторинг потребления ресурсов ВМ в единой Grafana-панели.

  • Kubernetes-контейнеризация и автомасштабирование (VPA, HPA).

  • Работа с PVC и Volume Snapshots.

  • Управление трафиком: сервисы, ингрессы, сертификаты.

  • Управление сетевым доступом: сетевые политики и Dex-аутентификаторы.

  • Управление полномочиями: RBAC и высокоуровневые Authorization Rules.

  • Мониторинг проекта: встроенные дашборды, браузер метрик, алертинг и уведомления.

  • Сбор логов уровня пода.

Поды со статистикой потребления ресурсов и подробным состоянием на видном месте
Поды со статистикой потребления ресурсов и подробным состоянием на видном месте
Раздел «Deployments» с возможностью просматривать утилизацию ресурсов
Раздел «Deployments» с возможностью просматривать утилизацию ресурсов
Создавать сервис стало удобнее: лейблы нагрузки, как и выбор нужных портов, можно просто накликать
Создавать сервис стало удобнее: лейблы нагрузки, как и выбор нужных портов, можно просто накликать

Перечень возможностей выше не исчерпывающий, подробности — в релизах модуля console.

Кому подойдёт решение

Community Edition подходит для тестовых сред, небольших проектов и отработки сценариев до переноса в production.

Графический интерфейс DKP постоянно дополняется и улучшается. Сейчас он покрывает 95 % возможностей платформы, доступных в CLI, и эта доля растёт. Новые возможности платформы появляются в веб-интерфейсе одновременно для всех редакций, включая CE.

Снятие ограничений в CE согласуется с тем, как мы строим продукт: у инженера должен быть выбор между CLI и веб-интерфейсом в любой редакции. Оценка платформы на тестовом стенде требует тех же инструментов, что и в коммерческих версиях — в том числе для настройки инфраструктуры, политик и наблюдаемости.

Для production-сценариев, технической поддержки, SLA и интеграции с enterprise-системами по-прежнему доступны коммерческие редакции.

Как начать пользоваться веб-интерфейсом в DKP Community Edition

  1. Установите Deckhouse Kubernetes Platform Community Edition с помощью графического установщика.

  2. В интерфейс кластера можно попасть сразу после установки, так как веб-интерфейс встроен в установщик. Из кластера интерфейс публикуется после настройки доменного имени в глобальных настройках и Ingress-контроллера.

  3. Интерфейс на домене кластера подстраивается под полномочия пользователя в платформе, поэтому доступ в него безопасно давать с любым уровнем доступа в DKP.

Наши дальнейшие планы — доработать адаптивность для мобильных устройств, добавить AI-ассистента и улучшить UX. Следите за обновлениями и делитесь обратной связью.