• Русский
  • Архитектура

    Обзор

    Наша платформа неизменяемой инфраструктуры построена на фреймворке Cluster API (CAPI), обеспечивающем декларативный, нативный для Kubernetes подход к управлению жизненным циклом кластера.

    Компоненты архитектуры

    Основной фреймворк Cluster API

    Платформа построена вокруг фреймворка Cluster API, который предоставляет:

    • Декларативный API: нативные для Kubernetes ресурсы для управления кластерами
    • Интерфейс провайдера: стандартизированные интерфейсы для различных провайдеров инфраструктуры
    • Управление жизненным циклом: автоматизированное развертывание, масштабирование и обновление кластера
    • Интеграция с GitOps: нативная поддержка рабочих процессов GitOps

    Архитектура провайдера

    Наша платформа интегрирует три ключевых провайдера Cluster API:

    1. Bootstrap Provider — Kubeadm

    Cluster API Bootstrap Provider Kubeadm отвечает за инициализацию и конфигурацию узлов Kubernetes:

    • Инициализация узлов: автоматизирует процесс превращения физических машин в узлы Kubernetes
    • Управление конфигурацией: управляет конфигурацией kubelet, сертификатами и bootstrap-токенами
    • Процесс присоединения: обрабатывает процесс присоединения рабочих узлов к кластеру
    • Управление сертификатами: автоматизирует генерацию и ротацию сертификатов

    2. Control Plane Provider — Kubeadm

    Cluster API Control Plane Provider Kubeadm управляет управляющей плоскостью Kubernetes:

    • Развертывание управляющей плоскости: разворачивает и управляет API-сервером Kubernetes, etcd и компонентами управляющей плоскости
    • Высокая доступность: поддерживает развертывания управляющей плоскости на нескольких узлах с балансировкой нагрузки
    • Управление обновлениями: осуществляет поэтапные обновления компонентов управляющей плоскости
    • Мониторинг состояния: отслеживает состояние управляющей плоскости и выполняет операции восстановления

    3. Infrastructure Provider

    Выбранный Infrastructure Provider (наш кастомный провайдер, например DCS) управляет базовой инфраструктурой целевой платформы:

    • Выделение вычислительных ресурсов: создает и управляет виртуальными машинами или инстансами на целевой платформе
    • Настройка сети: настраивает сетевую инфраструктуру
    • Управление ресурсами: управляет вычислительными, хранилищными и сетевыми ресурсами
    • Интеграция провайдера: интегрируется с API и сервисами провайдера

    Архитектура Cluster API

    Архитектура Cluster API