Dispono lëshimin e platformës së hapur PaaS Cozystack 1.4, e ndërtuar mbi Kubernetes. Projekti synon të ofrojë një platformë të gatshme për ofruesit e hosting-ut dhe një kornizë për ndërtimin e mjeteve private dhe publike të shërbimeve cloud. Platforma instalohet drejtpërdrejt në serverë dhe mbulon të gjitha aspektet e përgatitjes së infrastrukturës për ofrimin e shërbimeve të menaxhuara. Cozystack lejon që të filloni dhe ofroni klasterë Kubernetes, baza të dhënash dhe makina virtuale. Kodi i platformës është i disponueshëm në GitHub dhe shpërndahet sipas licencës Apache-2.0.
Platforma përfshin një implementim të lirë të infrastrukturës së rrjetit (fabric) mbi Kube-OVN dhe përdor Cilium për organizimin e rrjetit të shërbimeve, ndërsa MetalLB për publikimin e shërbimeve jashtë. Ruajtja e të dhënave është ndërtuar mbi LINSTOR, ku propozohet përdorimi i ZFS si shtresë bazë e storage dhe DRBD për replikim. Ofrohet gjithashtu një stack monitorimi i parapërgatitur, i bazuar në VictoriaMetrics dhe Grafana. Për ekzekutimin e makinat virtuale përdoret teknologjia KubeVirt, e cila mundëson nisjen e makinave virtuale klasike drejtpërdrejt në kontejnerët Kubernetes dhe tashmë ka të gjitha integrimet e nevojshme me Cluster API për nisjen e klasterëve Kubernetes të menaxhuar brenda një klasteri Kubernetes fizik. Brenda platformës, me një klikim mund të vendosen Kafka, FerretDB, PostgreSQL, Cilium, Grafana, Victoria Metrics dhe shërbime të tjera.
Kryesore të reja në Cozystack 1.4.0:
- ĂshtĂ« prezantuar njĂ« ndĂ«rfaqe e re menaxhimi, e bazuar nĂ« projektin cozystack-ui. Staku i vjetĂ«r openapi-ui dhe BFF Ă«shtĂ« zĂ«vendĂ«suar me njĂ« front-end tĂ« bazuar nĂ« React 19 dhe TypeScript, i cili punon drejtpĂ«rdrejt me API-nĂ« e Kubernetes. PĂ«r mĂ« tepĂ«r, nĂ« ndĂ«rfaqe Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r URL-tĂ« dinamike VNC WebSocket pĂ«r makinat virtuale, branding nĂ« kohĂ« reale pĂ«rmes ConfigMap, leximi i ApplicationDefinition pĂ«r katalogun e aplikacioneve dhe ricaktimi i adresave tĂ« vjetra /openapi-ui/ *.
- Për nodet punëtore të klasterëve të qirinjve është realizuar një magazinë e përhershme. Makinat virtuale të nodit punues tani përdorin PVC-diskët përmes KubeVirt dataVolumeTemplates në vend të emptyDisk. Falë kësaj, certifikatat kubelet, kubeconfig dhe gjendja e containerd ruhen pas ri-nisjes së makinës virtuale. Fusha ephemeralStorage është rinovuar në diskSize, është shtuar një konfigurim storageClass në nivelin NodeGroup. Në procesin e migrimit, vlerat e vjetra konvertohen automatikisht.
- ĂshtĂ« shtuar njĂ« skemĂ« e re presetesh resursesh nĂ« pĂ«rputhje me tipet e makinave virtuale te ofruesit cloud. Presetet pĂ«rshkruhen nĂ« formatin ., ku seritĂ« t1, c1, s1, u1 dhe m1 pĂ«rcaktojnĂ« marrĂ«dhĂ«nie tĂ« ndryshme midis CPU dhe memories, dhe madhĂ«sitĂ« variojnĂ« nga nano deri nĂ« 4xlarge. JanĂ« gjithsej 40 variante tĂ« disponueshme. Emrat e vjetĂ«r tĂ« preset-eve ruhen si aliasĂ« tĂ« vjetra dhe migrohen automatikisht pa ndryshuar kufizimet faktike tĂ« CPU dhe memories.
- ĂshtĂ« zgjeruar sistemi i rikthimit tĂ« deklarativ tĂ« aplikacioneve tĂ« menaxhuara. Kontrolluesi i backupstrategy ka marrĂ« strategji pĂ«r PostgreSQL, MariaDB, ClickHouse dhe FoundationDB. MbĂ«shteten BackupClass, Plan, BackupJob dhe RestoreJob, backup-e tĂ« planifikuara dhe tĂ« rastĂ«sishme, rikthim nĂ« vend dhe rikthim nĂ« kopje. TĂ« dhĂ«nat ngarkohen nĂ« njĂ« depo objektesh tĂ« pajtueshme me S3, dhe akreditimet transmetohen pĂ«rmes Kubernetes Secret.
- Shto është shtuar një paketë opsionale sistemike hami me HAMi 2.8.1 për ndërveprimin me GPU-të e NVIDIA në klasterët me qera. Workload-et e përdoruesve mund të kërkojnë burime nvidia.com/gpu, nvidia.com/gpumem dhe nvidia.com/gpucores, duke lejuar shpërndarjen e vGPU midis disa pod-ëve. Aktivizimi bëhet përmes parametrin hami.enabled dhe kërkon NVIDIA GPU Operator.
- Ka një cilësim të vetëm publishing.proxyProtocol për aktivizimin e protokollit PROXY në hostet me ingress-nginx. Me aktivizimin e tij, Ouroboros deployohet automatikisht, duke eliminuar problemin e hairpin-NAT për kërkesat nga klasteri për emrat e tij publik. Për klasterët me qera, është parashikuar një shtesë addons.ouroboros.enabled.
- Në cozystack-operator janë shtuar cilësimet për gjenerimin e HelmRelease: intervali, intervali i riprovimit, koha e instaluar, koha e përditësimit dhe historia maksimale. Strategjia e riprovimit është përcaktuar në RetryOnFailure, ndërsa për aplikacione të veçanta mund të përcaktohet koha përmes anotimit release.cozystack.io/helm-install-timeout. Kjo elimilon një sërë problemesh gjatë nisjes së ftohtë të klasterëve me qera.
- Për nodet punuese të Kubernetes me qera, rezervimi i burimeve të kubelet për CPU dhe memorie llogaritet automatikisht. Anotimet e cluster-autoscaler tani reflektrojnë burimet e alokuara, dhe jo sasinë totale të CPU dhe memories.
- Komponentët bazë të platformës janë përditësuar: Talos 1.13.0, cert-manager 1.20.2, Cilium 1.19.3, NVIDIA GPU Operator 26.3.1, etcd-operator 0.4.3, KubeVirt 1.8.2, cozy-proxy 0.3.0, linstor-csi 1.10.6. Janë shtuar paketat e reja HAMi 2.8.1 dhe Ouroboros 0.7.2.
- Diagnostika është përmirësuar: cozyreport tani mbledh informacion mbi Flux, cert-manager, mjedisin e hostit, Application, ApplicationDefinition dhe burimet Tenant, si dhe krijon summary.txt me një përmbledhje të shkurtër të problemeve aktuale. Janë shtuar Grafana-dashboards dhe rregulla mbledhjeje të dhënash për monitorimin e GPU.
- Janë rregulluar gabimet në MongoDB, Kafka, bootstrapi i Kubernetes me qera, etcd, Velero, Kamaji, LINSTOR, SeaweedFS, Harbor, objectstorage-controller, API dhe komponentë të tjerë. Në API është eliminuar vulnerabiliteti IDOR në menaxherët e TenantNamespace Get dhe Watch.
Gjatë përditësimit, duhet marrë parasysh se nodet punuese të klasterëve me qera do të zëvendësohen njëherë radhaz ngaqë po kalojmë në disqe PVC të përhershme. Makinat virtuale KubeVirt që janë nisur para përditësimit të platformës do të kërkojnë një rinisje të ftohtë pasi kalimi në KubeVirt 1.8.2, sepse migrimi i gjallë i proceseve të vjetra virt-launcher mund të përfundojë me gabim për shkak të ndryshimit të versionit të QEMU. Gjithashtu, parametrat e PostgreSQL tani janë të kategorisë dhe kontrollohen sipas denylist.
Burimi: opennet.ru
