ĂshtĂ« publikuar versioni i platformĂ«s PaaS tĂ« lirĂ« Cozystack 1.4, i ndĂ«rtuar mbi Kubernetes. Projekti ka si qĂ«llim ofrimin e njĂ« platforme tĂ« gatshme pĂ«r ofruesit e hostimit dhe njĂ« framework pĂ«r ndĂ«rtimin e reve private dhe publike. Platforma instalohet direkt nĂ« serverĂ« dhe pokohar çdo aspekt tĂ« pĂ«rgatitjes sĂ« infrastrukturĂ«s pĂ«r ofrimin e shĂ«rbimeve tĂ« menaxhuara. Cozystack lejon tĂ« nisni dhe ofroni klastere Kubernetes, databaza dhe makinat virtuale. Kodi i platformĂ«s Ă«shtĂ« nĂ« dispozicion nĂ« GitHub dhe distribuohet nĂ«n licencĂ«n Apache-2.0.
Platforma përfshin një realizim të lirë të infrastrukturës rrjet (fabric) mbi bazën e Kube-OVN dhe përdor Cilium për organizimin e rrjetit të shërbimeve, MetalLB për shpalljen e shërbimeve në jashtë. Ruajtja realizohet mbi LINSTOR, ku ofrohet përdorimi i ZFS si layer bazë për ruajtjen dhe DRBD për replikim. Ka një stak monitorimi të parapregatitur mbi bazën e VictoriaMetrics dhe Grafana. Për të filluar makinave virtuale përdoret teknologjia KubeVirt, e cila lejon ekzekutimin e makinave virtuale klasike direkt në kontejnerët Kubernetes dhe tashmë ka të gjitha integrimet e nevojshme me Cluster API për të nisur klasterët Kubernetes të menaxhuar brenda një klasteri Kubernetes "të hekur". Brenda platformës, mund të vendosni me një klikim Kafka, FerretDB, PostgreSQL, Cilium, Grafana, Victoria Metrics dhe shërbime të tjera.
Novitetet kryesore 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Ă« frontend tĂ« ndĂ«rtuar mbi React 19 dhe TypeScript, i cili punon direkt 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 redirektimi i adresave tĂ« vjetra /openapi-ui/*.
- Për nodet punuese të klastereve të qiramarrësve është realizuar ruajtja e përhershme. Makinat virtuale të nodëve punuese tani përdorin disqet PVC përmes KubeVirt dataVolumeTemplates në vend të emptyDisk. Falë kësaj, sertifikatat kubelet, kubeconfig dhe gjendja e containerd ruhet pas riçeljes së makinës virtuale. Fusha ephemeralStorage është rinovuar në diskSize, është shtuar një konfigurim storageClass në nivelin e NodeGroup. Gjatë migrimit, vlerat e vjetra konvertohen automatikisht.
- ĂshtĂ« shtuar njĂ« skemĂ« e re presets pĂ«r burimet nĂ« pĂ«rputhje me tipet e makinave virtuale pranĂ« ofruesve tĂ« reve. Preset-tĂ« pĂ«rshkruhen nĂ« formatin ., ku seritĂ« t1, c1, s1, u1 dhe m1 pĂ«rcaktojnĂ« raporte tĂ« ndryshme tĂ« CPU-sĂ« dhe memories, ndĂ«rsa madhĂ«sitĂ« variojnĂ« nga nano deri nĂ« 4xlarge. NĂ« total janĂ« nĂ« dispozicion 40 variante. Emrat e vjetĂ«r tĂ« preset-eve janĂ« ruajtur si alias tĂ« skaduar dhe migrohen automatikisht pa ndryshuar kufijtĂ« efektivĂ« tĂ« CPU-sĂ« dhe memories.
- Sistemi i rezervave deklarative për aplikacionet e menaxhuara është zgjeruar. Kontrollori backupstrategy ka marrë strategji për PostgreSQL, MariaDB, ClickHouse dhe FoundationDB. Mbështeten BackupClass, Plan, BackupJob dhe RestoreJob, rezervat e planifikuara dhe ato një herë, rikuperimi në vend dhe rikuperimi në një kopje. Të dhënat ngarkohen në një hapësirë objektive të përputhshme me S3, dhe kredencialet transmetohen përmes Kubernetes Secret.
- ĂshtĂ« shtuar njĂ« paketĂ« sistemike opsionale hami me HAMi 2.8.1 pĂ«r qasje tĂ« pĂ«rbashkĂ«t nĂ« GPU-nĂ« NVIDIA nĂ« klasterat e tenanteve. Workload-et e pĂ«rdoruesve mund tĂ« kĂ«rkojnĂ« burime nvidia.com/gpu, nvidia.com/gpumem dhe nvidia.com/gpucores, e cila lejon shpĂ«rndarjen e vGPU mes disa pod-ave. Aktivizimi bĂ«het pĂ«rmes parametrin hami.enabled dhe kĂ«rkon NVIDIA GPU Operator.
- Ka një konfigurim të vetëm publishing.proxyProtocol për aktivizimin e protokollit PROXY në hostet me ingress-nginx. Me aktivizimin e tij, automatikisht shpaloset Ouroboros, i cili eliminon problemin e hairpin-NAT për kërkesat nga klasteri në emrat e tij publik. Për klastrat e tenantëve është parashikuar shtesa addons.ouroboros.enabled.
- Në cozystack-operator janë shtuar cilësime për gjenerimin e HelmRelease: interval, retry interval, install timeout, upgrade timeout dhe max history. Strategjia e përsëritjeve është kaluar në RetryOnFailure, dhe për aplikacione të veçanta mund të përcaktohet timeout përmes annotacionit release.cozystack.io/helm-install-timeout. Kjo zgjidh një sërë problemesh gjatë nisjes së ftohtë të klastra e tenantëve.
- Për node-t e punës së Kubernetes-it të tenantëve, rezervimet e burimeve të kubelet për CPU dhe memorie llogariten automatikisht. Annotacionet e cluster-autoscaler tani reflektosin burimet e dhëna dhe jo vëllimin e përgjithshëm të CPU dhe memories.
- Komponentët kryesorë 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 paketa të reja HAMi 2.8.1 dhe Ouroboros 0.7.2.
- Diagnoza është përmirësuar: cozyreport tani mbledh të dhëna për Flux, cert-manager, ambientin e hostit, Application, ApplicationDefinition dhe burimet Tenant, si dhe formon summary.txt me një përmbledhje të shkurtër të problemeve aktuale. Janë shtuar Grafana-dashboards dhe rregullat e mbledhjes së të dhënave për monitorimin e GPU.
- Janë rregulluar gabimet në MongoDB, Kafka, tenant Kubernetes bootstrap, etcd, Velero, Kamaji, LINSTOR, SeaweedFS, Harbor, objectstorage-controller, API dhe komponentë të tjerë. Në API është eliminuar të gjitha IDOR-vulnerabilitetet në menaxherët e TenantNamespace Get dhe Watch.
Kur bëni përditësimin, është e rëndësishme të mbani parasysh se node-t e punës të klastrave të tenantëve do të zëvendësohen një herë në rend nga njëri-tjetri për shkak të kalimit në disqe PVC të përhershëm. Makineritë virtuale KubeVirt, të nisura para përditësimit të platformës, do të kërkojnë një rinisje të ftohtë pas kalimit në KubeVirt 1.8.2, pasi migraimi i drejtpërdrejtë i proceseve të vjetër virt-launcher mund të dështojë për shkak të ndryshimit të versionit QEMU. Për më tepër, parametrat e PostgreSQL tani janë të tipizuar dhe kontrollohen sipas denylist, dhe cert-manager 1.20 nga e drejta nisin konteinerët me UID/GID 65532.
Burimi: opennet.ru
