Sapo është lëshimi i platformës PaaS të lirë Cozystack 0.40, e ndërtuar mbi Kubernetes. Projekti synon të ofrojë një platformë të gatshme për ofruesit e hostimit dhe një kornizë për ndërtimin e Cloud-eve private dhe publike. Platforma instalohet drejtpërdrejt në servera dhe përfshin të gjitha aspektet e përgatitjes së infrastrukturës për ofrimin e shërbimeve të menaxhuara. Cozystack lejon të ekzekutoni dhe ofroni klastere Kubernetes, baza të dhënash dhe makina virtuale. Kodi i platformës është i disponueshëm në GitHub dhe shpërndahet nën licencën Apache-2.0.
Si një bazë teknologjike përdoret Talos Linux dhe Flux CD. Imazhet me sistemin operativ, bërthamën dhe modulat e nevojshme formohen paraprakisht dhe përditësohen në mënyrë atomike, gjë që lejon të anashkalohen komponentët si dkms dhe menaxheri i pakove, duke garantuar funksionim stabil. Ofrohet një metodë e thjeshtë instalimi në një qendër të dhënash bosh me anë të PXE dhe instaluesit talos-bootstrap të ngjashëm me debian. Brenda platformës, mund të zhvilloni me një klikim Kafka, FerretDB, PostgreSQL, Cilium, Grafana, Victoria Metrics dhe shërbime të tjera.
Platforma pĂ«rfshin njĂ« implementim tĂ« lirĂ« tĂ« infrastrukturĂ«s rrjetore (fabric) bazuar nĂ« Kube-OVN, dhe pĂ«rdor Cilium pĂ«r organizimin e rrjetit tĂ« shĂ«rbimeve, MetalLB pĂ«r shpalljen e shĂ«rbimeve nĂ« jashtĂ«. Ruajtja Ă«shtĂ« realizuar nĂ« LINSTOR, ku ofrohet pĂ«rdorimi i ZFS si njĂ« shtresĂ« bazĂ« pĂ«r ruajtje dhe DRBD pĂ«r replikim. Ka njĂ« grumbull tĂ« parakonfiguruar tĂ« monitorimit tĂ« bazuar nĂ« VictoriaMetrics dhe Grafana. PĂ«r nisjen e makinave virtuale pĂ«rdoret teknologjia KubeVirt, e cila lejon nisjen e makinave virtuale klasike direkt 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 klasterit tĂ« âhardueritâ Kubernetes.
Në lëshimin e ri:
- Shtuar planifikuesi LINSTOR për vendosjen optimale të pod-ëve. Një 'scheduler extender' për Kubernetes punon së bashku me planifikuesin standard të Kubernetes dhe ndihmon në vendosjen optimale të pod-ëve në nyje me ruajtje LINSTOR. Kur një pod kërkon një volum LINSTOR, planifikuesi merr informacion nga kontrolluesi LINSTOR se në cilat nyje ka replika lokale të volumve të nevojshme. Prioriteti jepet nyjeve ku të dhënat tashmë janë të pranishme, duke minimizuar trafikun e rrjetit dhe duke përmirësuar performancën I/O. Po ashtu është realizuar një admission-webhook, i cili automatikisht drejton pod-et që përdorin volumet CSI të LINSTOR te planifikuesi ynë, duke siguruar një integrim të qetë pa konfigurim manual.
- Ruajtja SeaweedFS Ă«shtĂ« pĂ«rmirĂ«suar nĂ« versionin 4.05, ku Ă«shtĂ« optimizuar trafiku S3 (traffic locality): kĂ«rkesat tani dĂ«rgohen nĂ« serverĂ«t mĂ« tĂ« afĂ«rt, duke reduktuar vonesat dhe pĂ«rshpejtuar funksionimin e ruajtjes. Gjithashtu Ă«shtĂ« prezantuar njĂ« komponent admin me ndĂ«rfaqe nĂ« ueb dhe mbĂ«shtetje pĂ«r autorizim, si dhe punonjĂ«s pĂ«r kryerjen e detyrave tĂ« shpĂ«rndara. NĂ« Grafana janĂ« shtuar tablo tĂ« avancuara, qĂ« lejojnĂ« monitorimin e bucket-Ă«ve, thirrjeve API dhe performancĂ«s. ĂshtĂ« shtuar mbĂ«shtetje Certifikatat TLS pĂ«r komponentĂ«t admin dhe punonjĂ«s.
- Mekanizmi valuesFrom nga FluxCD zëvendësoi funksionet e lookup në Helm-charts. Ky përmirësim arkitektonik siguron një kalim më të pastër të parametrave dhe eliminon nevojën për kontrollet e forcimit të sinkronizimit (reconciliation). Konfigurimi nga ConfigMaps dhe lidhjet me shërbimet tani menaxhohen në mënyrë të centralizuar përmes çelësit cozystack-values në çdo hapësirë emri.
- Në komponentët për integrimin me LINSTOR është zbatuar mbështetje për funksionin auto-diskful, i cili konverton nyjet pa disk (diskless) në nyje me disk (diskful), nëse ata mbajnë burimet DRBD në gjendje Primare për më shumë se 30 minuta.
- Janë implementuar sisteme të menaxhimit automatik të versioneve për PostgreSQL, Kubernetes, MariaDB dhe Redis, të cilat monitorojnë përditësimet në repository-t upstream dhe ofrojnë mekanizma për përditësimin automatik të versioneve.
Burimi: opennet.ru
