È disponibile il rilascio della piattaforma PaaS open source Cozystack 0.21.0, 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 viene installata 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, il kernel e i moduli necessari vengono generate in anticipo e aggiornate in modo atomico, il che consente di fare a meno di componenti come dkms e gestori di pacchetti, e garantisce un funzionamento stabile. Viene fornito un metodo semplice di installazione in un data center vuoto tramite PXE e l'installer talos-bootstrap di tipo debian.
La piattaforma include un'implementazione open source dell'infrastruttura di rete (fabric) basata su Kube-OVN e utilizza Cilium per l'organizzazione della rete dei servizi, MetalLB per l'annuncio dei servizi all'esterno. Lo storage è implementato su LINSTOR, dove si offre l'uso di ZFS come strato di base per lo storage e DRBD per la replica. È presente uno stack di monitoraggio preconfigurato basato su VictoriaMetrics e Grafana. Per il lancio macchine virtuali viene utilizzata la tecnologia KubeVirt, che consente di eseguire macchine virtuali classiche direttamente nei contenitori Kubernetes e ha già tutte le integrazioni necessarie con Cluster API per l'avvio di cluster Kubernetes gestiti all'interno di un cluster Kubernetes 'fisico'.
Nella nuova versione è stata completamente riprogettata l'interfaccia Dashboard, che ora interagisce direttamente con l'API di Cozystack, e non con le risorse di FluxCD. Questa modifica fornisce un'interfaccia grafica agli utenti finali e consente di concedere loro diritti per l'implementazione di determinati servizi tenendo conto del modello standard RBAC in 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 ordinare servizi principali (mysql, postgres, redis, kubernetes, virtual-machine, ecc.);
- super-admin — per la creazione di sotto-tenant e l'avvio di servizi di gestione (monitoring, etcd, ingress e seaweedfs).
Gli utenti inclusi nei gruppi corrispondenti possono accedere sia tramite Kubernetes sia tramite il Dashboard. Sebbene Cozystack utilizzi un approccio orientato all'API, il Dashboard è una parte importante della piattaforma, poiché consente di formare rapidamente i servizi necessari tramite un'interfaccia grafica, per poi visualizzarli attraverso l'API, e infine descriverli come codice (IaC).
Le principali misurazioni 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 degli utenti ed escludendo quelli di sistema.
- Corretto il display delle icone con OIDC (OpenID Connect) abilitato.
- Aggiunti miglioramenti estetici, comprese le corrette referenze alla documentazione.
Altre modifiche:
- Aggiunta l'autenticazione per Redis.
- Eseguita la refactorizzazione dei ruoli e dei legami ai ruoli per i tenant, rimosse tutte le autorizzazioni per le risorse HelmRelease, rimossa il gruppo kubeapps-admin.
- Avviamento di Grafana corretto, URL per il plugin VictoriaLogs aggiornato.
- Specifica OpenAPI per le risorse List nell'API Cozystack corretta.
- Talos Linux aggiornato alla versione 1.8.4.
- Linstor-ha-controller aggiornato alla versione 1.2.3, risolvendo il problema di resilienza delle macchine virtuali.
- Aggiunta l'impostazione della dimensione per il database Grafana.
- Aggiunte ulteriori funzionalità di gestione delle risorse VMCluster.
Fonte: opennet.ru
