Rilascio di Cozystack 0.37, una piattaforma PaaS open source basata su Kubernetes

È disponibile il rilascio della piattaforma PaaS open source Cozystack 0.37, costruita su Kubernetes. Il progetto è mirato a fornire una piattaforma pronta per i fornitori di hosting e un framework per costruire cloud privati e pubblici. La piattaforma si installa direttamente sui server e copre tutti gli aspetti della preparazione dell'infrastruttura per fornire servizi gestiti. Cozystack permette di avviare e fornire cluster Kubernetes, database e macchine virtuali. Il codice della piattaforma è disponibile su GitHub ed è distribuito con licenza Apache-2.0.

Il stack tecnologico di base utilizza Talos Linux e Flux CD. Le immagini con il sistema, il kernel e i moduli necessari vengono generate in anticipo e aggiornate in modo atomico, permettendo di evitare componenti come dkms e il gestore di pacchetti, e garantendo un funzionamento stabile. Viene fornito un metodo semplice per l'installazione in un data center vuoto tramite PXE e l'installatore basato su Debian talos-bootstrap. All'interno della piattaforma è possibile lanciare con un clic Kafka, FerretDB, PostgreSQL, Cilium, Grafana, Victoria Metrics e altri servizi.

La piattaforma include un'implementazione open source dell'infrastruttura di rete (fabric) basata su Kube-OVN, e utilizza Cilium per la gestione della rete dei servizi, MetalLB per l'annuncio dei servizi all'esterno. Lo storage è implementato su LINSTOR, dove è offerta la possibilità di utilizzare ZFS come livello base per lo storage e DRBD per la replica. È presente un stack di monitoraggio preconfigurato basato su VictoriaMetrics e Grafana. Per l'avvio di macchine virtuali si utilizza la tecnologia KubeVirt, che consente di eseguire macchine virtuali tradizionali direttamente nei contenitori Kubernetes e dispone già di tutte le integrazioni necessarie con Cluster API per avviare cluster Kubernetes gestiti all'interno di un cluster Kubernetes "bare-metal".

Negli ultimi un mese e mezzo, il team del progetto ha rilasciato nuove versioni 0.36 e 0.37. Tra le modifiche apportate in questi rilasci:

  • L'interfaccia utente è stata riscritta da zero. Come base è stato utilizzato il progetto openapi-ui.
    Rilascio di Cozystack 0.37, una piattaforma PaaS open source basata su Kubernetes
  • È stato introdotto un selettore di cluster nell'interfaccia. Ora il dashboard funziona in modalità singolo cluster (un dashboard per cluster). In futuro, la stessa interfaccia sarà utilizzata per la modalità multi-cluster.
  • Nello schermo del cluster sono ora visibili immediatamente tutti gli spazi disponibili. L'elenco è generato tramite uno strato aggregante di Kubernetes (tenant namespace), quindi sono mostrati solo gli spazi a cui si ha accesso.
  • La creazione delle risorse avviene ora tramite moduli generati automaticamente dall'OpenAPI di Kubernetes. I commenti in YAML non sono necessari: i campi e la validazione vengono presi direttamente dalle specifiche.
  • La specifica delle nuove applicazioni è generata dai chart Helm tramite il generator cozy-values, e i campi inseriti nel modulo vengono sincronizzati nel YAML finale.
  • I moduli di gestione dei tenant sono stati spostati nella sezione amministrativa: qui è possibile creare subtenant e assegnare loro moduli/applicazioni specifiche (l'accesso dipende dal ruolo e dai diritti dell'utente).
  • È prevista l'aggiunta di una scheda con la console VNC per le macchine virtuali. Per alcuni tipi di risorse verranno aggiunte schede/campi speciali (ad esempio, per le VM KubeVirt).
  • Il meccanismo di gestione delle risorse per i tenant di Cozystack è stato stabilizzato. Gli amministratori della piattaforma possono ora impostare limiti espliciti per CPU, memoria e archiviazione per ogni namespace tenant nella specifica del tenant. In questo modo, nessun tenant può "mangiare" tutte le risorse, lasciando gli altri tenant senza risorse.
  • Aggiunto il componente Kube-OVN Plunger per il monitoraggio continuo dello stato del cluster centrale della rete Kube-OVN. Un agente esterno raccoglie lo stato del cluster OVN e le informazioni sul consenso, mostrando le metriche di Prometheus e il flusso di eventi tramite SSE (Server-Sent Events).
  • Il complemento CoreDNS ora viene distribuito tramite Helm chart e configurato nella specifica del cluster (autoscala, numero di repliche, IP di servizio, ecc.). CoreDNS può essere configurato sia nel dashboard che tramite API Cozystack.
  • Lo storage S3 basato su SeaweedFS è diventato più flessibile a livello di componenti. Il Helm chart consente di configurare in modo indipendente ciascun componente e le sue risorse: nodi master, server di volume (con supporto per più zone), database e gateway S3. Gli amministratori possono impostare per ogni componente il numero di repliche, i limiti di CPU/memoria e il volume di archiviazione.
  • Integrazione di SeaweedFS 3.97 con supporto per la crittografia dei bucket S3 (SSE-C, SSE-KMS, SSE-S3). Durante l'aggiornamento di Cozystack, la versione di SeaweedFS verrà aggiornata e la specifica dei servizi sarà automaticamente convertita nel nuovo formato.
  • Il controller NGINX può ora essere configurato a livello di ogni replica: è possibile impostare richieste/limiti di CPU e memoria direttamente o scegliere uno dei preset predefiniti.
  • Se una macchina virtuale ha un IP esterno assegnato, questo verrà sempre utilizzato per il traffico in uscita, indipendentemente dal metodo di assegnazione di tale IP.

Fonte: opennet.ru

Acquista un hosting affidabile per siti con protezione DDoS, server VPS VDS 🔥 Acquista un hosting affidabile per siti con protezione DDoS, server VPS VDS | ProHoster