Vabariiklik PaaS platvorm Cozystack 0.37, mis on ĂŒles ehitatud Kubernetesâele, on nĂŒĂŒd saadaval. Projekt on suunatud valmis platvormi pakkumisele hostimisvĂ”tjatele ning raamistikule privaatsete ja avalike pilvede ehitamiseks. Platvorm installitakse otse serveritesse ja hĂ”lmab kĂ”iki infrastruktuuri ettevalmistamise aspekte hallatud teenuste pakkumiseks. Cozystack vĂ”imaldab Kubernetes klastrite, andmebaaside ja virtuaalmasinate kĂ€ivitamist ja pakkumist. Platvormi kood on saadaval GitHubis ja levitatakse Apache-2.0 litsentsiga.
Baastehnoloogiatehnikapakkumises kasutatakse Talos Linuxi ja Flux CD-d. OpsĂŒsteemi, tuuma ja vajalike moodulite pildid luuakse eelnevalt ja uuendatakse atomaarsetel pĂ”himĂ”tetel, mis vĂ”imaldab vĂ€ltida selliste komponentide nagu dkms ja paketihalduri kasutamist ning tagada stabiilne töö. Pakutakse lihtsat meetodit paigaldamiseks tĂŒhjas andmekeskuses PXE ja debian-taolise talos-bootstrap paigaldaja abil. Platvormil on vĂ”imalik hiireklikkimisega juurutada Kafka, FerretDB, PostgreSQL, Cilium, Grafana, Victoria Metrics ja muid teenuseid.
Platvorm hÔlmab avatud rakendust vÔrguinfrastruktuuri (fabric) Kube-OVN baasil ja kasutab Cilium'i teenuste vÔrgustiku organiseerimiseks, MetalLB-d teenuste sisse kuulutamiseks. AndmemÀlu on rakendatud LINSTOR'is, kus pakutakse ZFS-i kasutamist pÔhikihina andmemÀlu jaoks ja DRBD-d replikeerimiseks. On ette seadistatud jÀlgimise tugi VictoriaMetrics'i ja Grafana baasil. KÀivitamiseks virtuaalmasinate kasutatakse KubeVirt'i tehnoloogiat, mis vÔimaldab kÀivitada klassikalisi virtuaalmasinaid otse Kubernetes'i konteinerites ning omab juba kÔiki vajalikke integreerimisi Cluster API-ga hallatavates Kubernetes'i klastrites 'raudkindlas' Kubernetes'i klastris.
Viimase poolteise kuu jooksul on projekti meeskond vÀlja andnud uued versioonid 0.36 ja 0.37. Nende versioonide muudatuste seas on:
- Kasutajaliides on nullist ĂŒmber kirjutatud. PĂ”hiks on kasutatud openapi-ui projekti.

- Liideses on nĂŒĂŒd klastrivaliku tööriist. Praegu töötab armatuurlaud ĂŒhe klastri reĆŸiimis (iga klastri kohta ĂŒks armatuurlaud). Tulevikus kasutatakse sama liidest mitme klastriga reĆŸiimis.
- Klastri ekraanil on nĂŒĂŒd kohe nĂ€htavad kĂ”ik saadaval olevad nimed. Loend moodustatakse Kubernetesâi kogumise kihi (tenant namespace) kaudu, seega kuvatakse ainult need nimed, millele on juurdepÀÀs.
- Ressursside loomine toimub nĂŒĂŒd vormide kaudu, mis on automaatselt genereeritud Kubernetes OpenAPI-st. YAML-i kommentaarid enam ei ole vajalikud: vĂ€ljad ja valideerimine saadakse otse spetsifikatsioonidest.
- Uute rakenduste spetsifikatsioonid kujundatakse Helm chartide abil cozy-values generaatori kaudu, ja vormis sisestatud vĂ€ljad peegelduvad sĂŒnkroonselt lĂ”pp-YAML-is.
- Tenantide haldamise moodulid on liikunud administratiivse sektsiooni alla: siin saab luua sub-tenante ja seadistada neile spetsiifilisi mooduleid/rakendusi (juurdepÀÀs sÔltub kasutaja rollist ja Ôigustest).
- Planeeritud on VNC konsooli vahekaartide lisamine virtuaalmasinate jaoks. Teatud ressursside liikide jaoks lisatakse spetsiaalsed vahekaartide/vÀljade elemendid (nÀiteks KubeVirt VM-ide jaoks).
- Cozystacki tenantide ressursside haldamise mehhanism on stabiliseeritud. Platvormi administraatorid vĂ”ivad nĂŒĂŒd mÀÀrata selged piirangud CPU, mĂ€lu ja salvestuse jaoks igas tenant-namespaceâis tenantâi spetsifikatsioonis. Seega ei saa ĂŒkski tenant "sööta" kĂ”ike, jĂ€ttes teised tenantid ressurssideta.
- Lisatud on Kube-OVN Plunger komponent, mis vĂ”imaldab pidevat jĂ€lgimist Kube-OVN keskse juhtklastri seisundist. VĂ€line agent kogub OVN klastrite olekut ja konsensusinformatsiooni, kuvab Prometheuse mÔÔdikud ja sĂŒndmuste voogu lĂ€bi SSE (Server-Sent Events).
- CoreDNS-i tĂ€iendus levitatakse nĂŒĂŒd Helm-chart'i kaudu ning konfigureeritakse klastrispecifikatsioonis (automaatskaalumine, koopiate arv, teenuse IP jne). CoreDNS-i saab konfigureerida nii armatuurlauas kui ka Cozystack API kaudu.
- SeaweedFS baasil olev S3-salvestus on muutunud rohkem paindlikuks komponentide tasemel. Helm-chart vÔimaldab igat komponenti ja selle ressursse iseseisvalt seadistada: master-sÔlmed, mahutiserverid (mitme tsooni toega), andmebaas ja S3-vÀrav. Administratsioonid saavad iga komponenti jaoks mÀÀrata koopiate arvu, CPU/mÀlu piirangud ja salvestusruumi suuruse.
- Integreeritud on SeaweedFS 3.97, mis toetab S3 bakettide serveripoolset krĂŒpteerimist (SSE-C, SSE-KMS, SSE-S3). Cozystack'i vĂ€rskendamisel uuendatakse SeaweedFS-i versioon ning teenuste spetsifikatsioon muudetakse automaatselt uue formaadi jĂ€rgi.
- NGINX-kontrollerit saab nĂŒĂŒd konfigureerida iga koopia tasemel: CPU ja mĂ€lude nĂ”udmisi/piirangute seadmine on vĂ”imalik otse vĂ”i saab valida ĂŒhe valmis eelseadistuse.
- Kui virtuaalmasinale on mÀÀratud vÀline IP, kasutatakse seda alati vÀljaminevas liikluses, sÔltumata IP mÀÀramise meetodist.
Allikas: opennet.ru

