È disponibile il rilascio della piattaforma PaaS open-source Cozystack 0.21.0, basata su Kubernetes. Il progetto è mirato a fornire una piattaforma pronta per i fornitori di hosting e un framework per la creazione di cloud privati e pubblici. La piattaforma si installa direttamente sui server e copre tutti gli aspetti della preparazione dell'infrastruttura per la fornitura di servizi gestiti. Cozystack consente di avviare e fornire cluster Kubernetes, database e macchine virtuali. Il codice della piattaforma è disponibile su GitHub e distribuito con licenza Apache-2.0.
Come stack tecnologico di base viene utilizzato Talos Linux e Flux CD. Le immagini con il sistema operativo, il kernel e i moduli necessari vengono create in anticipo e aggiornate in modo atomico, permettendo di evitare componenti come dkms e gestori di pacchetti, garantendo una stabilità operativa. Viene fornito un metodo semplice per l'installazione in un data center vuoto utilizzando PXE e l'installatore simile a Debian talos-bootstrap.
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".
Nella nuova versione, l'interfaccia Dashboard è stata completamente riprogettata e ora interagisce direttamente con l'API Cozystack, anziché con le risorse FluxCD. Questa modifica fornisce un'interfaccia grafica agli utenti finali e consente di assegnare loro diritti per il dispiegamento di determinati servizi in base al modello RBAC standard di Kubernetes. Per ogni tenant vengono create di default quattro gruppi:
- view — per accesso in sola lettura;
- use — per connettersi alle macchine virtuali e utilizzare i servizi;
- admin — per la possibilità di richiedere servizi principali (mysql, postgres, redis, kubernetes, virtual-machine, ecc.);
- super-admin — per la creazione di tenant secondari e l'avvio dei servizi (monitoraggio, etcd, ingress e seaweedfs).
Gli utenti inclusi nei gruppi corrispondenti possono accedere sia tramite Kubernetes che tramite Dashboard. Sebbene Cozystack utilizzi un approccio orientato alle API, il Dashboard è una parte fondamentale della piattaforma, consentendo di generare rapidamente i servizi necessari attraverso un'interfaccia grafica, visualizzare come appaiono nelle API e poi descriverli come codice (IaC).
Le principali metriche nel Dashboard:
- È garantito il funzionamento diretto con l'API di Cozystack.
- Rimossi i prefissi per le applicazioni, poiché ogni applicazione ora utilizza il proprio Kind.
- Gli spazi dei nomi sono filtrati per il prefisso 'tenant-', consentendo di visualizzare solo gli spazi dei nomi personalizzati ed escludendo quelli di sistema.
- Corretto il display delle icone con OIDC (OpenID Connect) attivato.
- Aggiunti miglioramenti estetici, inclusi collegamenti corretti alla documentazione.
Altre modifiche:
- Aggiunta l'autenticazione per Redis.
- Rifattorizzate le ruoli e le associazioni dei ruoli per i tenant, rimosse tutte le autorizzazioni per le risorse HelmRelease, rimossa l'amministrazione del gruppo kubeapps-admin.
- È stato corretto l'avvio di Grafana, modificato l'URL per il plugin VictoriaLogs.
- È stata corretta la specifica OpenAPI per le risorse dell'API Cozystack.
- Talos Linux è stato aggiornato alla versione 1.8.4.
- Linstor-ha-controller è stato aggiornato alla versione 1.2.3, risolvendo il problema di disponibilità delle macchine virtuali.
- È stata aggiunta un'impostazione per la dimensione del database Grafana.
- Sono state aggiunte ulteriori funzionalità per la gestione delle risorse di VMCluster.
Fonte: opennet.ru
