Den nya versionen av den öppna PaaS-plattformen Cozystack 0.21.0, byggd pÄ Kubernetes, Àr tillgÀnglig. Projektet syftar till att tillhandahÄlla en fÀrdig plattform för webbhotell och en ram för att bygga privata och offentliga moln. Plattformen installeras direkt pÄ servrar och tÀcker alla aspekter av att förbereda infrastrukturen för att tillhandahÄlla hanterade tjÀnster. Cozystack gör det möjligt att köra och tillhandahÄlla Kubernetes-kluster, databaser och virtuella maskiner. Koden för plattformen finns tillgÀnglig pÄ GitHub och distribueras under Apache-2.0-licensen.
Talos Linux och Flux CD anvÀnds som grundteknologier. 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 paketchefer kan undvikas, samt garanterar stabil drift. En enkel installationsmetod i en tom datacenter tillhandahÄlls via PXE och den debian-liknande installatören talos-bootstrap.
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.
I den nya versionen har dashboardens grÀnssnitt omarbetats helt, och den arbetar nu direkt med Cozystacks API snarare Àn med FluxCD-resurser. Denna förÀndring ger ett grafiskt grÀnssnitt för slutanvÀndare och möjliggör att tilldela dem rÀttigheter för att distribuera specifika tjÀnster med hÀnsyn till den standardiserade RBAC-modellen i Kubernetes. För varje tenant skapas som standard fyra grupper:
- view â för endast lĂ€sbehörighet;
- use â för att ansluta till virtuella maskiner och anvĂ€nda tjĂ€nster;
- admin â för att bestĂ€lla grundlĂ€ggande tjĂ€nster (mysql, postgres, redis, kubernetes, virtual-machine osv.);
- super-admin â för att skapa underordnade tenants och starta tjĂ€nsteguider (monitoring, etcd, ingress och seaweedfs).
AnvĂ€ndare som ingĂ„r i de relevanta grupperna kan fĂ„ Ă„tkomst bĂ„de genom Kubernetes och genom dashboarden. Ăven om Cozystack anvĂ€nder en API-orienterad metod Ă€r dashboarden en viktig del av plattformen, eftersom den snabbt möjliggör skapandet av nödvĂ€ndiga tjĂ€nster via ett grafiskt grĂ€nssnitt, som sedan kan granskas genom API:et och slutligen beskrivas som kod (IaC).
Huvudsakliga mÀtningar i dashboarden:
- Direkt arbete med Cozystacks API Àr sÀkerstÀllt.
- Prefix för applikationer har tagits bort, eftersom varje applikation nu anvÀnder sin egen Kind.
- Namnrymder filtreras efter prefixet "tenant-", vilket gör att endast anvÀndarspecifika namnrymder visas och systemnamnrymder utesluts frÄn visning.
- Ikonernas visning har ÄtgÀrdats vid aktiverad OIDC (OpenID Connect).
- Kosmetiska förbÀttringar har lagts till, inklusive korrekta lÀnkar till dokumentationen.
Andra förÀndringar:
- Autentisering för Redis har lagts till.
- Refaktorisering av roller och rollbindningar för tenants har genomförts, alla rÀttigheter för HelmRelease-resurser har tagits bort, och grupperna kubeapps-admin har avlÀgsnats.
- Grafana-start har ÄtgÀrdats, URL:en för VictoriaLogs-pluginet har korrigerats.
- OpenAPI-specifikationen för List-resurser i Cozystack API har rÀttats.
- Talos Linux har uppdaterats till version 1.8.4.
- Linstor-ha-controller har uppdaterats till version 1.2.3, vilket löste problem med redundansen hos virtuella maskiner.
- En instÀllning för storlek har lagts till för Grafana-databasen.
- Ytterligare funktioner för resursadministration för VMCluster har lagts till.
KĂ€lla: opennet.ru
