Den fria PaaS-plattformen Cozystack 0.40, baserad pÄ Kubernetes, Àr nu tillgÀnglig. Projektet syftar till att erbjuda en fÀrdig plattform för hostingleverantörer och en ram för att bygga privata och offentliga moln. Plattformen installeras direkt pÄ servrar och omfattar alla aspekter av att förbereda infrastrukturen för att erbjuda 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-licens.
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ÀnstenÀtverket, MetalLB för att annonsera tjÀnster utÄt. Lagringen implementeras via LINSTOR, dÀr ZFS föreslÄs som en grundlÀggande lager för lagring och DRBD för replikering. Det finns en förkonfigurerad övervakningsstack baserad pÄ VictoriaMetrics och Grafana. För att köra virtuella maskiner anvÀnds KubeVirt-teknologin, som gör det möjligt att köra klassiska virtuella maskiner direkt i Kubernetes-containrar och redan har alla nödvÀndiga integrationer med Cluster API för att köra hanterade Kubernetes-kluster inom en 'bare metal' Kubernetes-kluster.
I den nya utgÄvan:
- En LINSTOR-schemalÀggare har lagts till för optimal placering av pods. Den egna "scheduler extender" för Kubernetes fungerar tillsammans med den standardmÀssiga Kubernetes-schemalÀggaren och hjÀlper till att optimalt placera pods pÄ noder med LINSTOR-lagring. NÀr en pod begÀr en LINSTOR-volym kan schemalÀggaren ta reda pÄ hos LINSTOR-kontrollern vilka noder som har lokala kopior av de nödvÀndiga volymerna. Prioritet ges till noder dÀr data redan finns, vilket minimerar nÀtverkstrafik och ökar I/O-prestanda. Dessutom har en admission-webhook implementerats, som automatiskt dirigerar pods som anvÀnder LINSTOR CSI-volymer till den egna schemalÀggaren, vilket sÀkerstÀller sömlös integration utan manuell konfiguration.
- SeaweedFS-lagring SeaweedFS har uppdaterats till version 4.05, dÀr S3-trafiken har optimerats (traffic locality): förfrÄgningar gÄr nu till de nÀrmaste servrarna, vilket minskar latens och snabbar upp lagringens prestanda. En ny administratorkomponent med webbgrÀnssnitt och stöd för autentisering har ocksÄ introducerats, liksom arbetare för att utföra distribuerade uppgifter. Avancerade instrumentpaneler har lagts till i Grafana för att övervaka buckets, API-anrop och prestanda. Stöd har lagts till TLS-certifikat för administratörs- och arbetar-komponenter.
- Mekanismen valuesFrom frÄn FluxCD har ersatt lookup-funktioner i Helm-diagram. Denna arkitektoniska förbÀttring möjliggör en renare parameteröverföring och eliminerar behovet av tvingande synkroniseringskontroller (reconciliation). Konfigurationen frÄn ConfigMaps och servicenoteringar hanteras nu centralt genom nyckeln cozystack-values i varje namnrum.
- I komponenterna för integration med LINSTOR har stöd för funktionen auto-diskful implementerats, vilket konverterar diskfria noder till diskfulla, om de hÄller DRBD-resurser i primÀrtillstÄnd mer Àn 30 minuter.
- Automatiserade versionshanteringssystem har införts för PostgreSQL, Kubernetes, MariaDB och Redis, som spÄrar uppdateringar i upstream-repositorier och tillhandahÄller mekanismer för automatiska versionsuppdateringar.
KĂ€lla: opennet.ru
