Выпуск Cozystack 0.35, открытой PaaS-платформы на базе Kubernetes

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

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

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

В новой версии разработчики проекта серьёзно продвинулись в сторону модульной архитектуры, которая позволит пользователям быстро добавлять в платформу собственные приложения и сервисы. Главные изменения:

  • Улучшение Cozystack API: реализованы точные типы данных, в том числе сложные объекты, проверки значений и корректные значения по умолчанию для большего числа полей. Уточнение спецификации API было необходимо для разработки нового фронтенда Cozystack, который пока находится в разработке.
  • Поддержка внешних источников приложений. В каталог Cozystack теперь можно добавлять собственные или сторонние приложения.
  • Выделенные кластеры Cozystack для S3, которые можно подключить к основному кластеру. В систему мониторинга интегрирован SeaweedFS и имеет собственную панель Grafana для мониторинга.
  • Интегрированная поддержка Hetzner RobotLB, благодаря которой можно резвёртывать рабочие кластеры в Hetzner.
  • Встроенная поддержка ClickHouse Keeper.
  • Flux-operator обновлён до версии 0.28.0.
Release. Ссылка here.