Достъпен е новият освобождаващ PaaS платформа Cozystack 0.30.0, изградена на базата на Kubernetes. Проектът цели да предостави готова платформа за хостинг доставчици и рамка за изграждане на частни и публични облаци. Платформата се инсталира директно на сървъри и обхваща всички аспекти на подготовката на инфраструктурата за предоставяне на управлявани услуги. Cozystack позволява стартиране и предоставяне на Kubernetes клъстери, бази данни и виртуални машини. Кодът на платформата е достъпен в GitHub и се разпространява под лицензия Apache-2.0.
В основата на технологичния стек е Talos Linux и Flux CD. Имиджите със системата, ядрото и необходимите модули се формируют предварително и се обновяват атомарно, което позволява да не се използват компоненти като dkms и пакетен мениджър, и гарантира стабилна работа. Предлага се прост метод за инсталиране в празен дата център с помощта на PXE и debian-подобния инсталатор talos-bootstrap.
Платформата включва свободна реализация на мрежовата инфраструктура (fabric) на базата на Kube-OVN, и използва Cilium за организиране на мрежата на услугите, MetalLB за анонсиране на услугите навън. Съхранението е реализирано на LINSTOR, където се предлага използване на ZFS като базов слой за съхранение и DRBD за репликация. Има предварително конфигуриран стек за мониторинг на базата на VictoriaMetrics и Grafana. За стартиране на виртуални машини се използва технологията KubeVirt, която позволява стартиране на класически виртуални машини директно в контейнерите на Kubernetes и вече има всички необходими интеграции с Cluster API за стартиране на управлявани Kubernetes клъстери в рамките на "железния" Kubernetes клъстер.
През последните полутора месеца екипът на проекта е пуснал седем нови версии: 0.24-0.30. Сред измененията в тези версии:
- Стабилизиране на платформата за използване в конфигурации с многобройни ЦОД. Извършена е голяма работа по настройките на etcd, Cilium, Kuve-OVN, Linstor и други компоненти.
- Усилване и подобряване на наблюдаемостта в стека. Добавени са дашбордове за редица компоненти и оптимизирани настройки на Grafana, които ускориха работата й.
- Пускане на допълнителен инструмент cozy-proxy, който позволява предоставяне IP адреси на виртуални машини в K8s.
- Появата на Vertical Pod Autoscaler. VPA автоматично определя лимити на ресурсите, които приложението може да използва. Лимитите се определят въз основа на исторически метрики.
- Рефакторинг и добавяне на нови раздели в документацията.
- Преместване на репозитория на платформата и помощните инструменти от организацията aenix-io в организацията cozystack след предаването на проекта в CNCF Sandbox.
- Cozystack 0.30: Представен е GPU-оператор и е добавена поддръжка за GPU в виртуалните машини. Поддръжката на GPU позволява платформата да се използва за стартиране на задачи, свързани с машинно обучение.
- Cozystack 0.29: Извършена е работа за повишаване на стабилността и надеждността на платформата. Устранена е уязвимост CVE-2025-1974 в ingress-nginx. Добавен е набор от предварителни настройки, ограничавящи потреблението на ресурси. Реализиран е автоматичен повторен пуск на сертификати. Добавен е Cilium хост защитна стена. Добавен е процес за стартиране на e2e тестове в GitHub CI.
- Cozystack 0.28: Появяване на Vertical Pod Autoscaler, който автоматично задава лимити на ресурсите, достъпни за различни приложения. Изолацията на tenant-ите е включена по подразбиране. Отговорността за валидиране на source-ip е прехвърлена от Cilium в Kube-OVN.
- Cozystack 0.27: Предложен набор скриптов linstor plunger за автоматично коригиране на грешки в LINSTOR (например, DRBD загубена връзка, заседнало loop-устройство и т.н.). Добавена е възможност за разпределение на реплики PostgreSQL по различни възли. Появиха се табла за мониторинг на ClickHouse и Piraeus.
- Cozystack 0.26: Повишена е стабилността при работа в мулти-ДЦ конфигурации. Добавен е мониторинг на мрежова свързаност. Възможността за ограничаване на ресурсите за отделни tenant-и вътре в кластера е добавена. Добавен е инструмент Goldpinger за мониторинг на закъсненията между дата центровете. Live миграцията на виртуални машини е включена по подразбиране. Появила се е възможността за създаване на снимки на томове LINSTOR.
- Cozystack 0.25: Добавен помощен инструмент cozy-proxy, който позволява да се присвояват IP адреси на виртуални машини — и то не отделни портове, а цял адрес. В Cosyastack виртуалните машини са базирани на KubeVirt и се управляват приблизително така, както и подовете. Kubernetes не предвижда присвояване на IP адреси на подовете цялостно. cozy-proxy решава този проблем, което е важно, например, за клиентите на доставчици на услуги, чиито приложения работят в виртуални машини и на които е необходим отделен IP адрес. Подобрен е мониторингът на etcd, Flux, Kafka и са добавени съответните табла за управление. Потребителите, които имат достъп само до отделни tenant-и, получиха възможността да изтеглят kubeconfig.
- Cozystack 0.24: Появи се възможността за разгръщане чрез PXE, за автоматично зареждане на възли с Talos Linux. Включен е пакетът smee (dhcp+pxe сървър) от комплекта Tinkerbell. Darkhttp е заменен с собствена разработка cozystack-assets-server. В образа Grafana са вградени плъгини, за да стартира Grafana по-бързо.
Източник: opennet.ru
