Rilascio di Kubernetes 1.24, un sistema per la gestione di un cluster di container isolati

È disponibile il rilascio della piattaforma di orchestrazione dei container Kubernetes 1.24, che consente di gestire un cluster di container isolati nel loro complesso e fornisce meccanismi per il deploy, il mantenimento e il dimensionamento delle applicazioni in esecuzione nei container. Il progetto è stato originariamente creato da Google, ma poi trasferito su un sito indipendente supervisionato dalla Linux Foundation. La piattaforma si posiziona come una soluzione universale sviluppata dalla comunità, non legata ai singoli sistemi e in grado di funzionare con qualsiasi applicazione in qualsiasi ambiente cloud. Il codice Kubernetes è scritto in Go e distribuito con la licenza Apache 2.0.

Sono fornite funzioni per l'implementazione e la gestione dell'infrastruttura, come il mantenimento di un database DNS, il bilanciamento del carico, la distribuzione dei contenitori tra i nodi del cluster (migrazione dei contenitori in base ai cambiamenti nelle esigenze di carico e di servizio), controlli di integrità a livello di applicazione, gestione degli account, aggiornamento e ridimensionamento dinamico del cluster di lavoro, senza fermarlo. È possibile distribuire gruppi di contenitori con operazioni di aggiornamento e annullamento per l'intero gruppo contemporaneamente, nonché divisione logica del cluster in parti con divisione delle risorse. È disponibile il supporto per la migrazione dinamica delle applicazioni, per l'archiviazione dei dati di cui è possibile utilizzare sia sistemi di archiviazione locale che di rete.

Modifiche principali nella nuova versione:

  • Gli strumenti di monitoraggio della capacità di archiviazione sono stati stabilizzati per monitorare lo spazio libero nelle partizioni e trasmettere i dati al nodo di controllo per impedire l'avvio dei pod sui nodi che non dispongono di spazio libero sufficiente.
  • La capacità di espandere le partizioni di archiviazione è stata stabilizzata. L'utente può ridimensionare le partizioni esistenti e Kubernetes espanderà automaticamente la partizione e il file system associato senza interrompere il lavoro.
  • Interruzione della fornitura del runtime Dockershim, che era posizionato come soluzione temporanea per l'utilizzo di Docker in Kubernetes, incompatibile con l'interfaccia standard CRI (container runtime Interface) e che portava a ulteriori complicazioni del kubelet. Per gestire i contenitori isolati, dovresti utilizzare un runtime che supporti l'interfaccia CRI, come containerd e CRI-O, oppure utilizzare il framework cri-dockerd, che implementa l'interfaccia CRI sull'API Docker Engine.
  • È stato fornito supporto sperimentale per la verifica delle immagini dei contenitori tramite firme digitali utilizzando il servizio Sigstore, che mantiene un registro pubblico per confermarne l'autenticità (registro di trasparenza). Per prevenire attacchi alla catena di fornitura e sostituzione dei componenti, vengono fornite firme digitali anche per gli artefatti relativi al rilascio, inclusi tutti i file eseguibili Kubernetes installati.
  • Per impostazione predefinita, le API in versione beta non sono più abilitate nei cluster (le API di test aggiunte nelle versioni precedenti vengono mantenute; la modifica si applica solo alle nuove API).
  • È stato implementato il supporto del test per il formato OpenAPI v3.
  • È stata introdotta un'iniziativa per trasferire i plug-in di storage sull'interfaccia unificata CSI (Container Storage Interface) mantenendo la compatibilità a livello API. I plugin Azure Disk e OpenStack Cinder sono stati trasferiti a CSI.
  • Il provider di credenziali Kubelet è stato spostato nella fase di beta testing, consentendo di recuperare dinamicamente le credenziali per un repository di immagini del contenitore avviando i plugin, senza archiviare le credenziali nel file system del nodo.
  • È possibile riservare un intervallo di indirizzi IP per l'assegnazione ai servizi. Quando questa opzione è abilitata, il cluster assegnerà automaticamente ai servizi solo gli indirizzi IP da un pool pre-allocato per ciascun servizio, evitando così collisioni durante l'emissione di indirizzi liberi dal set generale.

Fonte: opennet.ru

Aggiungi un commento