Udgivelse af Cozystack 0.22, en open-source PaaS-platform baseret på Kubernetes

Udgivelsen af den frie PaaS-platform Cozystack 0.22.0, bygget på Kubernetes, er nu tilgængelig. Projektet sigter mod at tilbyde en klar platform til hostingudbydere og et framework til opbygning af private og offentlige skyer. Plattformen installeres direkte på servere og dækker alle aspekter af at forberede infrastrukturen til at levere administrerede tjenester. Cozystack gør det muligt at køre og levere Kubernetes-klynger, databaser og virtuelle maskiner. Koden til platformen er tilgængelig på GitHub og distribueres under Apache-2.0 licensen.

Talos Linux og Flux CD bruges som den grundlæggende teknologiske stak. Billederne med systemet, kernen og nødvendige moduler dannes på forhånd og opdateres atomart, hvilket gør det muligt at undgå komponenter som dkms og pakkehåndteringssystemet og sikrer stabil drift. Der tilbydes en enkel installationsmetode i et tomt datacenter ved hjælp af PXE og en debian-lignende installationsprogram talos-bootstrap.

Platformen inkluderer en fri implementering af netværksinfrastruktur (fabric) baseret på Kube-OVN, og bruger Cilium til at organisere tjenestenetværket, MetalLB til at annoncere tjenester til omverdenen. Lagring er implementeret på LINSTOR, hvor ZFS tilbydes som basislag for lagring og DRBD til replikering. Der er en forudindstillet monitoreringsstak baseret på VictoriaMetrics og Grafana. Til opstart virtual machines bruges KubeVirt-teknologien, som gør det muligt at køre klassiske virtuelle maskiner direkte i Kubernetes-containere, og som allerede har alle nødvendige integrationer med Cluster API for at køre styrede Kubernetes-klynger inden for en 'fysisk' Kubernetes-klynge.

I den nye version er cozystack-controller og nye enheder tilføjet: Workload og WorkloadMonitor — som gør det muligt at overvåge tilstanden af pods, der styres af operatørerne, og evaluere serviceniveauet baseret på foruddefinerede regler. Applikationer i Cozystack styres af forskellige operatører, så det blev besluttet at skabe et ensartet format til visning af status for hver service.

Sådan fungerer det: Når en applikation deployeres, installeres også WorkloadMonitor, som overvåger tilstanden af pods baseret på selektoren. Så snart en af pods bliver en del af selektoren, oprettes en ny enhed Workload, der viser rollen for hver pod og dens tilstand. I status for WorkloadMonitor kan man se antallet af eksisterende replikaer og det minimale antal replikaer, der er nødvendige for at betjene tjenesten. Så snart belastningen (workload) bliver mindre end værdien af minReplicas for WorkloadMonitor, markeres tjenesten som ikke-operativ.

For applikationer, hvor det ikke er muligt at angive en præcis værdi for minReplicas (f.eks. Kubernetes-arbejderne, der kan skalere automatisk), er muligheden for helt at undlade at angive denne værdi i WorkloadMonitor implementeret. I dette tilfælde vil WorkloadMonitor blot tælle det samlede antal kørende instanser.

Denne mekanisme gør det muligt at bruge enhver operator og kontrolmekanismer for pod'er i Kubernetes og nemt udvide platformen ved at levere et enkelt interface til at vise den aktuelle tilstand af tjenesten.

WorkloadMonitor til indsamling af information om replikaer og deres funktionalitet er blevet tilføjet til applikationer som Kubernetes, Postgres, Monitoring, VirtualMachine, VMInstance, Redis, etcd og SeaweedFS. Cozystack-dashboardet viser nu antallet af applikationsreplikaer og serviceniveauet for hver arbejdsgruppe.

Andre ændringer:

  • Klienten og serveren for telemetri er blevet implementeret og offentliggjort under Apache 2.0-licensen. Indsamling af metrics for telemetri sker i henhold til anbefalingerne i "LF Telemetry Data Collection and Usage Policy" og kan deaktiveres med indstillingen "telemetry-enabled: false" i Cozystack-konfigurationen. Dataene er anonyme og helt afpersonificerede. Der planlægges et offentligt dashboard baseret på telemetridata til kommende platformudgivelser.
  • Komponenten cluster-autoscaller til Kubernetes er opdateret, ligesom dens indstillinger, som gør det muligt at skalere klynger mere effektivt op og ned.
  • Filene MAINTAINERS er blevet opdateret og indeholder en liste over deltagere, der vedligeholder projektet, samt deres ansvarsområder.
  • Cozystack har fået et serviceapplikation builder, der muliggør opbygning af platformen direkte i Kubernetes.
  • For databasen VictoriaMetrics er muligheden for at angive egne parametre tilføjet, og de standardbegrænsninger, der angives, er blevet højet.
  • For Grafana og Alerta er indsamling af metrics fra databaser implementeret.
  • Alerts om tilstanden for virtuelle maskiner og postgres-klynger er blevet tilføjet.
  • For KubeVirt er indsamlingen af metrics konfigureret, og der er tilføjet et Grafana-dashboard.
  • Der er tilføjet en indstilling til Cozystack-konfigurationen, extra-keycloak-redirect-uri-for-dashboard, som gør det muligt at opsætte ekstra omdirigeringer for Keycloak.
  • Der er rettet en fejl i VMInstance, der forhindrede tilslutning af VM-diske til virtuelle maskiner.
  • Flux Operator 0.12.0, Flux Instance chart 0.12.0, Cilium 1.16.5, Kube-OVN 1.13.2 og CNPG PostgreSQL Operator 1.25.0 er blevet opdateret, sammen med Talos Linux 1.9.1.

Kilde: opennet.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster