Достъпен е изданието на свободната PaaS платформа Cozystack 0.21.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 клъстер.
В новата версия е изцяло преработен интерфейсът на Dashboard, който сега работи директно с API на Cozystack, а не с ресурсите на FluxCD. Това изменение предоставя графичен интерфейс на крайните потребители и дава възможност за предоставяне на права за разгръщане на определени услуги, съобразно стандартния модел RBAC в Kubernetes. За всеки tenant по подразбиране се създават четири групи:
- view — за достъп само за четене;
- use — за свързване към виртуалните машини и използване на услугите;
- admin — за възможност за поръчка на основни услуги (mysql, postgres, redis, kubernetes, virtual-machine и т.н.);
- super-admin — за създаване на подчинени tenant-ове и стартиране на услужливи служби (monitoring, etcd, ingress и seaweedfs).
Потребителите, включени в съответните групи, могат да получат достъп както чрез Kubernetes, така и чрез Dashboard. Въпреки че в Cozystack се използва API-ориентиран подход, Dashboard е важна част от платформата, тъй като позволява бързо формулиране на необходимите услуги чрез графичен интерфейс, след което да се види как те се отразяват в API, а след това да се опишат като код (IaC).
Основни измерения в Dashboard:
- Осигурена работа директно с API на Cozystack.
- Префиксите за приложенията са премахнати, тъй като всяко приложение сега използва собствен Kind.
- Именните пространства се филтрират по префикса „tenant-“, което позволява да се показват само потребителските имена на пространствата и да се изключат системните.
- Поправено е отразяването на пиктограмите при активиран OIDC (OpenID Connect).
- Добавени са козметични поправки, включително коректни линкове към документацията.
Други промени:
- Добавена е автентикация за Redis.
- Извършен е рефакторинг на ролите и привързванията на ролите за tenant-ове, премахнати са всички разрешения за ресурсите HelmRelease, премахната е групата kubeapps-admin.
- Коригирано стартиране на Grafana, коригиран URL за приставката VictoriaLogs.
- Коригирана спецификация OpenAPI за ресурсите List в API Cozystack.
- Talos Linux е обновен до версия 1.8.4.
- Linstor-ha-controller е обновен до версия 1.2.3, което реши проблема с отказоустойчивостта на виртуалните машини.
- Добавена е настройка за размер на базата данни Grafana.
- Добавени са допълнителни възможности за управление на ресурсите VMCluster.
Източник: opennet.ru
