Den fritt tillgÀngliga PaaS-plattformen Cozystack 0.37, byggd pÄ Kubernetes, har slÀppts. Projektet syftar till att erbjuda en fÀrdig plattform för hostingleverantörer och ett ramverk för att bygga privata och offentliga moln. Plattformen installeras direkt pÄ servrarna och tÀcker alla aspekter av infrastrukturen för att tillhandahÄlla hanterade tjÀnster. Cozystack möjliggör körning och tillhandahÄllande av Kubernetes-kluster, databaser och virtuella maskiner. Plattformens kod finns tillgÀnglig pÄ GitHub och distribueras under Apache-2.0-licensen.
Talos Linux och Flux CD anvÀnds som grundlÀggande teknikstack. Avbildningar med systemet, kÀrnan och nödvÀndiga moduler skapas i förvÀg och uppdateras atomÀrt, vilket gör att komponenter som dkms och paketförvaltare kan undvikas, och garanterar stabil drift. En enkel installationsmetod erbjuds i ett tomt datacenter via PXE och debian-liknande installationsprogrammet talos-bootstrap. Plattformen gör det möjligt att klicka för att distribuera Kafka, FerretDB, PostgreSQL, Cilium, Grafana, Victoria Metrics och andra tjÀnster.
Plattformen inkluderar en fri implementation av nÀtverksinfrastruktur (fabric) baserat pÄ Kube-OVN, och anvÀnder Cilium för att organisera tjÀnsternas nÀtverk, MetalLB för att annonsera tjÀnster utÄt. Lagring implementeras med LINSTOR, dÀr anvÀndning av ZFS som grundskikt för lagring och DRBD för replikering erbjuds. Det finns en förkonfigurerad övervakningsstack baserat pÄ VictoriaMetrics och Grafana. För att starta virtuella maskiner anvÀnds KubeVirt-teknologin, som tillÄter körning av klassiska virtuella maskiner direkt i Kubernetes-containrar och redan har alla nödvÀndiga integrationer med Cluster API för att starta hanterade Kubernetes-kluster inom den 'fysiska' Kubernetes-klustret.
Under de senaste ett och ett halvt mÄnaderna har projektteamet slÀppt nya versioner 0.36 och 0.37. Bland Àndringarna i dessa versioner:
- AnvÀndargrÀnssnittet har skrivits om frÄn grunden. Projektet openapi-ui har anvÀnts som bas.

- I grÀnssnittet har en klusterselector lagts till. Just nu fungerar instrumentpanelen i en enskild klustermod. I framtiden kommer samma grÀnssnitt att anvÀndas för multiklustermod.
- PÄ klusterbilden syns nu alla tillgÀngliga namnomrÄden direkt. Listan formuleras via den aggregerande nivÄn Kubernetes (tenant namespace), dÀrför visas endast de namnomrÄden som det finns tillgÄng till.
- Skapandet av resurser sker nu genom formulÀr som automatiskt genererats frÄn Kubernetes OpenAPI. Kommentarer frÄn YAML behövs inte: fÀlten och valideringen tas direkt frÄn specifikationerna.
- Specificationen av nya applikationer bildas frÄn Helm-diagram med hjÀlp av cozy-values-generator, och de angivna fÀlten i formulÀret Äterspeglas synkront i den slutgiltiga YAML.
- Modulerna för hantering av tenants har flyttats till administrationsavsnittet: hÀr kan sub-tenanter skapas och specifika moduler/applikationer installeras för dem (Ätkomst beror pÄ anvÀndarens roll och rÀttigheter).
- Det planeras att lÀgga till en flik med VNC-konsol för virtuella maskiner. För vissa typer av resurser kommer speciella flikar/fÀlt att lÀggas till (till exempel för KubeVirt-VM).
- Mekanismen för hantering av resurser för tenant-erna Cozystack har stabiliserats. Plattformens administratörer kan nu stÀlla in tydliga grÀnser för CPU, minne och lagring för varje tenant-namespace i tenant-specifikationen. SÄledes kan ingen av tenant-erna "Àta upp" allt och lÀmna andra tenants utan resurser.
- Kube-OVN Plunger-komponenten har lagts till för kontinuerlig övervakning av tillstÄndet för den centrala styrklustern i Kube-OVN-nÀtverket. Den externa agenten samlar in status för OVN-klustret och konsensusinformation, visar Prometheus-metriker och flödet av hÀndelser via SSE (Server-Sent Events).
- CoreDNS-tillÀgget distribueras nu via en Helm-diagram och konfigureras i kluster-specifikationen (automatiserad skalning, antal repliker, tjÀnste-IP, etc.). CoreDNS kan konfigureras bÄde via dashboarden och genom Cozystack API.
- S3-lagring baserad pÄ SeaweedFS har blivit mer flexibel pÄ komponentnivÄ. Helm-diagrammet tillÄter oberoende konfigurering av varje komponent och dess resurser: master-noder, volymservrar (med stöd för flera zoner), databas och S3-gateway. Administratörer kan ange antal repliker, CPU/minnesgrÀnser och lagringsvolym för varje komponent.
- FS SeaweedFS 3.97 har integrerats med stöd för server-sidokryptering av S3-bucketar (SSE-C, SSE-KMS, SSE-S3). Vid uppdatering av Cozystack kommer versionen av SeaweedFS att uppdateras och tjÀnstspecificeringarna kommer automatiskt att omvandlas till det nya formatet.
- NGINX-kontrollern kan nu konfigureras pÄ nivÄn för varje replik: man kan stÀlla in begÀrningar/grÀnser för CPU och minne direkt eller vÀlja en av de fÀrdiga mallarna.
- Om en virtuell maskin har en extern IP tilldelad, anvÀnds den alltid för egress-trafik, oavsett metoden för tilldelning av denna IP.
KĂ€lla: opennet.ru

