Вы просматриваете документацию для Cozystack v1.3. Документация последней версии доступна по ссылке: v1.6.

Варианты Cozystack: обзор и сравнение

Справочник по вариантам Cozystack: состав, настройка и сравнение.

Введение

Варианты — это заранее определенные конфигурации Cozystack, которые задают, какие bundle и компоненты будут включены. Каждый вариант тестируется, версионируется и гарантированно работает как единое целое. Варианты упрощают установку, снижают риск неправильной настройки и помогают выбрать подходящий набор функций для конкретного развертывания.

Это руководство предназначено для инфраструктурных инженеров, DevOps-команд и архитекторов платформ, которые планируют развертывать Cozystack в разных окружениях. Оно объясняет, как варианты Cozystack помогают адаптировать установку под конкретные задачи: от полноценной platform-as-a-service до полностью ручного управления установленными пакетами.

Обзор вариантов

Компонентdefaultisp-fullisp-full-genericisp-hosted
Управляемый Kubernetes
Управляемые приложения
Виртуальные машины
Cozystack Dashboard (UI)
Cozystack API
Kubernetes Operators
Подсистема мониторинга
Подсистема храненияLINSTORLINSTOR
Сетевая подсистемаKube-OVN + CiliumKube-OVN + Cilium
Подсистема виртуализацииKubeVirtKubeVirt
Подсистема ОС и KubernetesTalos Linux

Выбор подходящего варианта

Варианты объединяют bundle из разных уровней, чтобы закрыть разные сценарии. Одни варианты рассчитаны на полноценную платформу, другие — на workloads в облачных Kubernetes-кластерах или на полностью ручное управление пакетами.

default

default — минимальный вариант, который предоставляет только набор PackageSource, то есть ссылок на реестры пакетов. Bundle и компоненты в нем не настроены заранее: всеми пакетами нужно управлять вручную через cozypkg. Используйте этот вариант, если вам нужен полный контроль над тем, какие пакеты установлены и как они настроены. Именно этот вариант используется в сценарии Build Your Own Platform (BYOP).

Пример конфигурации:

apiVersion: cozystack.io/v1alpha1
kind: Package
metadata:
  name: cozystack.cozystack-platform
spec:
  variant: default

isp-full

isp-full — полнофункциональный вариант PaaS и IaaS, рассчитанный на установку поверх Talos Linux. Он включает все bundle и предоставляет полный набор компонентов Cozystack, формируя полноценную PaaS-платформу. Некоторые компоненты верхних уровней являются необязательными и могут быть исключены при установке.

isp-full предназначен для установки на bare-metal серверы или виртуальные машины.

Пример конфигурации:

apiVersion: cozystack.io/v1alpha1
kind: Package
metadata:
  name: cozystack.cozystack-platform
spec:
  variant: isp-full
  components:
    platform:
      values:
        networking:
          podCIDR: "10.244.0.0/16"
          podGateway: "10.244.0.1"
          serviceCIDR: "10.96.0.0/16"
          joinCIDR: "100.64.0.0/16"
        publishing:
          host: "example.org"
          apiServerEndpoint: "https://192.168.100.10:6443"
          exposedServices:
            - api
            - dashboard
            - cdi-uploadproxy
            - vm-exportproxy

isp-full-generic

isp-full-generic предоставляет тот же полнофункциональный опыт PaaS и IaaS, что и isp-full, но рассчитан на обычные дистрибутивы Kubernetes, такие как k3s, kubeadm или RKE2. Используйте этот вариант, если нужен полный набор возможностей Cozystack без обязательного использования Talos Linux.

Подробные инструкции по установке см. в руководстве для Generic Kubernetes.

Пример конфигурации:

apiVersion: cozystack.io/v1alpha1
kind: Package
metadata:
  name: cozystack.cozystack-platform
spec:
  variant: isp-full-generic
  components:
    platform:
      values:
        networking:
          podCIDR: "10.244.0.0/16"
          podGateway: "10.244.0.1"
          serviceCIDR: "10.96.0.0/16"
          joinCIDR: "100.64.0.0/16"
        publishing:
          host: "example.org"
          apiServerEndpoint: "https://192.168.100.10:6443"
          exposedServices:
            - api
            - dashboard
            - cdi-uploadproxy
            - vm-exportproxy

isp-hosted

Cozystack можно установить как platform-as-a-service (PaaS) поверх существующего управляемого Kubernetes-кластера, обычно предоставленного облачным провайдером. Для этого сценария предназначен вариант isp-hosted. Его можно использовать с kind и любыми Kubernetes-кластерами в облаке.

isp-hosted включает PaaS и NaaS bundle, предоставляет Cozystack API и UI, управляемые приложения и tenant Kubernetes-кластеры. Он не включает CNI-плагины, виртуализацию и хранилище.

Kubernetes-кластер, в котором разворачивается Cozystack, должен соответствовать следующим требованиям:

  • адрес прослушивания некоторых компонентов Kubernetes должен быть изменен с localhost на маршрутизируемый адрес;
  • Kubernetes API server должен быть доступен на localhost.

Пример конфигурации:

apiVersion: cozystack.io/v1alpha1
kind: Package
metadata:
  name: cozystack.cozystack-platform
spec:
  variant: isp-hosted
  components:
    platform:
      values:
        publishing:
          host: "example.org"
          apiServerEndpoint: "https://192.168.100.10:6443"
          exposedServices:
            - api
            - dashboard

Дополнительно

Полный список параметров конфигурации для каждого варианта см. в справочнике по настройке.

Полный список компонентов и описание того, как включать и отключать их, см. в справочнике компонентов.

Чтобы развернуть выбранный вариант, следуйте руководству по установке Cozystack или руководствам для конкретных провайдеров. Если вы устанавливаете Cozystack впервые, лучше использовать вариант isp-full и пройти учебное руководство Cozystack.