Релиз Cozystack 0.8.0, открытой PaaS-платформы на базе Kubernetes

Опубликован выпуск свободной PaaS-платформы Cozystack 0.8.0, построенной на базе Kubernetes. Проект нацелен на предоставление готовой платформы для хостинг-провайдеров и фреймворка для построения частных и публичных облаков. Платформа устанавливается напрямую на серверы и охватывает все аспекты подготовки инфраструктуры для предоставления управляемых сервисов. Cozystack позволяет запускать и предоставлять кластеры Kubernetes, базы данных и виртуальные машины. Код платформы доступен на GitHub и распространяется под лицензией Apache-2.0.

В качестве базового стека технологий используется Talos Linux и Flux CD. Образы с системой, ядром и необходимыми модулями формируются заранее, и обновляются атомарно, что позволяет обойтись без таких компонентов как dkms и пакетный менеджер, и гарантировать стабильную работу. Предоставляется простой метод установки в пустом дата-центре с помощью PXE и debian-подобного установщика talos-bootstrap.

Платформа включает свободную реализацию сетевой фабрики на базе Kube-OVN, и использует Cilium для организации сервисной сети, MetalLB для анонса сервисов наружу. Хранилище реализовано на LINSTOR, где предлагается использование ZFS в качестве базового слоя для хранилища и DRBD для репликации. Имеется преднастроенный стек мониторинга на базе VictoriaMetrics и Grafana. Для запуска виртуальных машин используется технология KubeVirt, которая позволяет запускать классические виртуальные машины прямо в контейнерах Kubernetes и уже имеет все необходимые интеграции с Cluster API для запуска управляемых Kubernetes-кластеров внутри «железного» Kubernetes-кластера.

В новой версии:

  • FluxCD обновлён до версии 2.3. Полностью переработана логика установки FluxCD, а community helm-чарт заменён на официальный fluxcd-оператор.
  • Добавлена поддержка управляемых (managed) расширений для пользовательских кластеров: теперь в них одним кликом в GUI можно устанавливать ingress-nginx, cert-manager и FluxCD.
  • Добавлена возможность маршрутизировать трафик на пользовательские Kubernetes-кластеры через основной ingress-контроллер.
  • Добавлены e2e-тесты.
  • Для PostgreSQL реализована возможность включать синхронную репликацию на основе кворума.
  • Добавлена базовая поддержка архитектуры ARM для набора distro-hosted.
  • Улучшения в DX: добавлен kustomize-обработчик, так что теперь make apply / make diff моделирует операцию «apply», как если бы она была сделана через FluxCD, и показывает только актуальные изменения.
  • Включённый в состав платформы Etcd-оператор обновлён до версии 0.3.0:
    • Добавлена поддержка ARM.
    • Проработана архитектура оператора, отрисован flow chart, внесено изменение, улучшающее проверку статуса.
    • Улучшена работа с хранилищем: режим автоупаковки теперь включён по умолчанию, добавлена логика для автоматического вычисления quota-backend-bytes, которое теперь устанавливается автоматически до 95% от размера PVC (по умолчанию etcd ничего не знает о размере хранилища, а новая функция включает автоматические настройки хранилища по умолчанию).

Источник: opennet.ru