Cozystack, en gratis PaaS-plattform byggd på Kubernetes, finns nu tillgänglig i version 0.40. Projektet syftar till att tillhandahålla en färdig plattform för webbhotellleverantörer och ett ramverk för att bygga privata och publika moln. Plattformen installeras direkt på servrar och täcker alla aspekter av infrastrukturförberedelser för att leverera hanterade tjänster. Cozystack låter dig starta och provisionera Kubernetes-kluster, databaser och virtuella maskiner. Plattformskoden finns tillgänglig på GitHub och distribueras under Apache 2.0-licensen.
Talos används som den underliggande teknikstack. Linux och Flux CD. Avbildningar med systemet, kärnan och nödvändiga moduler är förbyggda och uppdateras atomärt, vilket eliminerar behovet av komponenter som dkms och en pakethanterare, och säkerställer stabil drift. En enkel installationsmetod tillhandahålls i ett tomt datacenter med PXE och debian-likt talos-bootstrap-installationsprogrammet. Inom plattformen kan du driftsätta Kafka, FerretDB, PostgreSQL, Cilium, Grafana, Victoria Metrics och andra tjänster med ett enda klick.
Plattformen inkluderar en gratis implementering nätverksinfrastruktur (fabric) baserat på Kube-OVN, använder Cilium för organisation av service mesh och MetalLB för tjänsteannonsering. Lagring implementeras på LINSTOR, som använder ZFS som underliggande lagringslager och DRBD för replikering. En förkonfigurerad övervakningsstack baserad på VictoriaMetrics och Grafana ingår. KubeVirt-teknik används för att starta virtuella maskiner, vilket gör att klassiska virtuella maskiner kan köras direkt i Kubernetes-containrar och har redan alla nödvändiga integrationer med Cluster API för att starta hanterade Kubernetes-kluster inom ett bare-metal Kubernetes-kluster.
I den nya utgåvan:
- En LINSTOR-schemaläggare har lagts till för optimal podplacering. En inbyggd "scheduler extender" för Kubernetes fungerar tillsammans med standardschemaläggaren för Kubernetes för att optimalt placera poddar på noder med LINSTOR-lagring. När en pod begär en LINSTOR-volym konsulterar schemaläggaren LINSTOR-styrenheten för att avgöra vilka noder som har lokala repliker av de volymer som krävs. Prioritet ges till noder där data redan finns, vilket minimerar nätverkstrafik och förbättrar I/O-prestanda. En admission webhook har också implementerats som automatiskt dirigerar poddar med hjälp av LINSTOR CSI-volymer till den inbyggda schemaläggaren, vilket säkerställer sömlös integration utan manuell konfiguration.
- SeaweedFS-lagring har uppdaterats till version 4.05, som har S3-trafikoptimering (trafiklokalitet): förfrågningar skickas nu till närmaste servrar, vilket minskar latensen och snabbar upp lagringen. En ny administratörskomponent med webbgränssnitt och auktoriseringsstöd, samt arbetare för att köra distribuerade uppgifter, har också lagts till. Avancerade dashboards har lagts till i Grafana, vilket gör att du kan övervaka buckets, API-anrop och prestanda. Stöd har lagts till. TLS-certifikat för administratörs- och arbetarkomponenterna.
- ValueFrom-mekanismen från FluxCD ersätter uppslagningsfunktioner i Helm-diagram. Denna arkitektoniska förbättring säkerställer renare parameteröverföring och eliminerar behovet av styrenheter för forcerad synkronisering (avstämning). Konfiguration från ConfigMaps och servicereferenser hanteras nu centralt via nyckeln cozystack-values i varje namnrymd.
- LINSTOR-integrationskomponenten stöder nu funktionen för automatisk diskhantering, som övergår från disklösa noder till diskhanteringsnoder om de har DRBD-resurser i primärt tillstånd i mer än 30 minuter.
- Automatiska versionshanteringssystem har implementerats för PostgreSQL, Kubernetes, MariaDB och Redis, vilka spårar uppdateringar i uppströmsdatabaser och tillhandahåller mekanismer för automatiska versionsuppdateringar.
Källa: opennet.ru
