Deckhouse отвечает за то, чтобы кластер одинаково работал на любой поддерживаемой инфраструктуре:

  • в облаках (смотри информацию по соответствующему Cloud provider)
  • на виртуальных машинах или железе (включая on-premises)
  • в гибридной инфраструктуре.

Для этого, Deckhouse автоматически настраивает и управляет как узлами кластера, так и его control-plane, постоянно поддерживая их актуальную конфигурацию (используя инструменты Terraform).

Deckhouse позволяет легко выполнять такие нетривиальные операции с control-plane и узлами кластера, как:

  • миграция между single-master и multi-master схемами
  • маштабирование master-узлов
  • обновление версий компонентов.

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

Также, Deckhouse берет на себя заботу о состоянии сертификатов используемых при работе с control-plane, — автоматически выполняя выпуск, продление сертификатов и настройку конфигурации kubectl.

Deckhouse заменяет ресурсы относящиеся к kube-proxy от kubeadm (соответствующие DaemonSet, ConfigMap, RBAC) собственными версиями.

Интеграция между модулями Deckhouse, позволяет сразу получить эффективный мониторинг и обеспечить приемлемый уровень безопасности. Например, можно легко организовать надежный доступ к API-серверу кластера через публичный IP-адрес, в том числе с возможностью работы через внешний провайдер аутентификации.

Docker-образы всех компонент Deckhouse, включая control-plane, хранятся в высокодоступном и геораспределенном Docker-registry, доступном с фиксированного набора IP-адресов (для удобства организации доступа из изолированных контуров).