K dispozícii je verzia voľnej PaaS platformy Cozystack 0.37, postavenej na základe Kubernetes. Projekt je zameraný na poskytovanie hotovej platformy pre hostingových poskytovateľov a rámca na budovanie súkromných a verejných облаков. Platforma sa inštaluje priamo na servery a pokrýva všetky aspekty prípravy infraštruktúry na poskytovanie spravovaných služieb. Cozystack umožňuje spúšťať a poskytovať klastre Kubernetes, databázy a virtuálne stroje. Kód platformy je dostupný na GitHub a distribuuje sa pod licenciou Apache-2.0.
Ako základný technologický stack sa používa Talos Linux a Flux CD. Obrazy so systémom, jadrom a potrebnými modulmi sa vytvárajú vopred a aktualizujú sa atomárne, čo umožňuje obísť také komponenty ako dkms a balíkový manažér a zaručiť stabilnú prevádzku. Poskytuje sa jednoduchá metóda inštalácie v prázdnom dátovom centre pomocou PXE a debian-podobného inštalátora talos-bootstrap. V rámci platformy je možné jedným kliknutím rozšíriť Kafka, FerretDB, PostgreSQL, Cilium, Grafana, Victoria Metrics a ďalšie služby.
Platforma obsahuje bezplatnú implementáciu sieťovej infraštruktúry (fabric) na základe Kube-OVN a využíva Cilium na organizáciu servisnej siete, MetalLB na oznamovanie služieb vonku. Úložisko je implementované na LINSTOR, kde je navrhnuté využitie ZFS ako základného vrstvy na úložisko a DRBD na replikáciu. K dispozícii je prednastavený monitorovací stack založený na VictoriaMetrics a Grafana. Na spustenie virtuálních strojů sa používa technológia KubeVirt, ktorá umožňuje spúšťať klasické virtuálne stroje priamo v kontajneroch Kubernetes a už má všetky potrebné integrácie s Cluster API na spúšťanie riadených Kubernetes klastrov vo vnútri „hardvérového“ Kubernetes klastra.
V poslednom mesiaci a pol tím projektu vydal nové verzie 0.36 a 0.37. Medzi zmeny v týchto vydaniach patrí:
- Rozhranie používateľa bolo prepísané od nuly. Ako základ bol použitý projekt openapi-ui.

- V rozhraní sa objavil výber klastru. Teraz dashboard funguje v režime jedného klastru (jeden dashboard na klaster). V budúcnosti bude toto rozhranie použité aj pre multi-klastrový režim.
- Na obrazovke klastru sú teraz hneď viditeľné všetky dostupné menné priestory. Zoznam sa vytvára cez agregujúcu vrstvu Kubernetes (tenant namespace), preto sú zobrazené len tie priestory, ku ktorým máte prístup.
- Vytváranie zdrojov teraz prebieha prostredníctvom formulárov, ktoré sú automaticky generované z Kubernetes OpenAPI. Poznámky z YAML nie sú potrebné: polia a validácia sú načítané priamo zo špecifikácií.
- Špecifikácia nových aplikácií sa vytvára z Helm chartov pomocou cozy-values generator, a zadané polia vo formulári sa synchronne odrážajú v konečnom YAML.
- Moduly správy tenantov sa presunuli do sekcie administrácie: tu môžete vytvárať subtenants a inštalovať pre nich špecifické moduly/aplikácie (prístup závisí od úlohy a práv používateľa).
- Plánuje sa pridanie záložky s VNC konzolou pre virtuálne stroje. Pre niektoré typy zdrojov budú pridané špeciálne záložky/polia (napríklad pre KubeVirt-VM).
- Mechanizmus správy zdrojov pre tenanty Cozystack bol stabilizovaný. Administrátori platformy môžu teraz určovať explicitné limity CPU, pamäte a úložiska pre každý tenant-namespace v špecifikácii tenanta. Takže žiadny z tenantov nemôže "zjesť" všetko, čím by nechal iné tenanty bez zdrojov.
- Bol pridaný komponent Kube-OVN Plunger na nepretržité sledovanie stavu centrálneho riadiaceho klastra siete Kube-OVN. Vonkajší agent zbiera stav klastra OVN a informácie o konsenze, zobrazuje metriky Prometheus a prúdy udalostí cez SSE (Server-Sent Events).
- Doplnok CoreDNS sa teraz nasadzuje prostredníctvom Helm chart a je konfigurovaný vo špecifikácii klastra (automatiké škálovanie, počet replik, servisné IP a pod.). CoreDNS je možné konfigurovať ako v dashboarde, tak aj cez API Cozystack.
- S3 úložisko na báze SeaweedFS sa stalo flexibilnejším na úrovni komponentov. Helm chart umožňuje nezávisle konfigurovať každý komponent a jeho zdroje: master uzly, volume servery (s podporou viacerých zón), databázu a S3 bránu. Správcovia môžu pre každý komponent nastaviť počet replik, limity CPU/pamäti a objem úložiska.
- Integrácia FS SeaweedFS 3.97 s podporou serverového šifrovania kontajnerov S3 (SSE-C, SSE-KMS, SSE-S3). Pri aktualizácii Cozystack sa verzia SeaweedFS aktualizuje a špecifikácia služieb sa automaticky pretransformuje na nový formát.
- NGINX ovládač sa teraz konfiguruje na úrovni každej repliky: je možné nastaviť požiadavky/limity CPU a pamäte priamo alebo si vybrať jeden z pripravených prednastavení.
- Ak má virtuálny stroj priradenú vonkajšiu IP adresu, táto sa vždy používa pre egress prevádzku, bez ohľadu na spôsob priradenia tejto IP.
Zdroj: opennet.ru

