Cluster del servizio Azure Kubernetes servizio Azure Kubernetes isolati dalla rete (anteprima)
Le organizzazioni in genere hanno requisiti rigorosi di sicurezza e conformità per regolare il traffico di rete in uscita (in uscita) da un cluster per eliminare i rischi di esfiltrazione dei dati. Per impostazione predefinita, i cluster servizio Azure Kubernetes (servizio Azure Kubernetes) hanno accesso a Internet in uscita senza restrizioni. Questo livello di accesso alla rete consente a nodi e servizi in esecuzione di accedere alle risorse esterne in base alle esigenze. Se si vuole limitare il traffico in uscita, è necessario rendere accessibile un numero limitato di porte e indirizzi per mantenere l'integrità delle attività di manutenzione del cluster. Il documento concettuale sulle regole di rete e FQDN in uscita per i cluster del servizio Azure Kubernetes fornisce un elenco degli endpoint necessari per il cluster del servizio Azure Kubernetes e dei relativi componenti aggiuntivi e funzionalità facoltativi.
Una soluzione per limitare il traffico in uscita dal cluster consiste nell'usare un dispositivo firewall per limitare il traffico in base ai nomi di dominio. La configurazione manuale di un firewall con regole di uscita e FQDN richieste è un processo complesso e complesso.
Un'altra soluzione, un cluster del servizio Azure Kubernetes isolato di rete (anteprima), semplifica la configurazione delle restrizioni in uscita per un cluster istanza predefinita. L'operatore del cluster può quindi configurare in modo incrementale il traffico in uscita consentito per ogni scenario che vuole abilitare. Un cluster del servizio Azure Kubernetes isolato di rete riduce quindi il rischio di esfiltrazione dei dati.
Importante
Le funzionalità di anteprima del servizio Azure Kubernetes sono disponibili in modalità self-service e opzionale. Le anteprime vengono fornite "così come sono" e "come disponibili" e sono escluse dai contratti di servizio e dalla garanzia limitata. Le anteprime del servizio Azure Kubernetes sono parzialmente coperte dal supporto clienti con la massima diligenza possibile. Di conseguenza, queste funzionalità non sono destinate all'uso in produzione. Per altre informazioni, vedere gli articoli di supporto seguenti:
Funzionamento di un cluster isolato di rete
Il diagramma seguente illustra la comunicazione di rete tra dipendenze per un cluster isolato di rete del servizio Azure Kubernetes.
I cluster del servizio Azure Kubernetes estraggono le immagini necessarie per il cluster e le relative funzionalità o componenti aggiuntivi dal Registro artefatti Microsoft (MAR). Questo pull di immagini consente al servizio Azure Kubernetes di fornire versioni più recenti dei componenti del cluster e di risolvere anche le vulnerabilità di sicurezza critiche. Un cluster isolato di rete tenta di eseguire il pull di tali immagini da un'istanza privata di Registro Azure Container (ACR) connessa al cluster anziché eseguire il pull da MAR. Se le immagini non sono presenti, il Registro Azure Container privato li estrae da MAR e li gestisce tramite l'endpoint privato, eliminando la necessità di abilitare l'uscita dal cluster all'endpoint mar pubblico.
Per un Registro Azure Container privato con cluster isolati di rete sono supportate le opzioni seguenti:
Registro Azure Kubernetes gestito dal servizio Azure Kubernetes: il servizio Azure Kubernetes crea, gestisce e riconcilia una risorsa del Registro Azure Container in questa opzione. Non è necessario assegnare autorizzazioni o gestire il Registro Azure Container. Il servizio Azure Kubernetes gestisce le regole della cache, il collegamento privato e l'endpoint privato usati nel cluster isolato di rete. Un Registro Azure Kubernetes gestito dal servizio Azure Kubernetes segue lo stesso comportamento di altre risorse (tabella di route, set di scalabilità di macchine virtuali di Azure e così via) nel gruppo di risorse dell'infrastruttura. Per evitare il rischio di errori dei componenti del cluster o del nuovo bootstrap del nodo, non aggiornare o eliminare il Registro Azure Container, le relative regole della cache o le relative immagini di sistema. Il Registro Azure Kubernetes gestito dal servizio Azure Kubernetes viene riconciliato continuamente in modo che i componenti del cluster e i nuovi nodi funzionino come previsto.
Nota
Dopo aver eliminato un cluster isolato di rete del servizio Azure Kubernetes, le risorse correlate, ad esempio registro Azure Kubernetes gestito dal servizio Azure Kubernetes, il collegamento privato e l'endpoint privato vengono eliminate automaticamente.
ACR Bring Your Own (BYO): l'opzione ACR BYO richiede la creazione di un Registro Azure Container con un collegamento privato tra la risorsa registro Azure Container e il cluster del servizio Azure Kubernetes. Vedere Connettersi privatamente a un registro Azure Container usando collegamento privato di Azure per informazioni su come configurare un endpoint privato per il registro.
Nota
Quando si elimina il cluster del servizio Azure Kubernetes, il Registro Azure Container BYO, il collegamento privato e l'endpoint privato non vengono eliminati automaticamente. Se si aggiungono immagini personalizzate e regole della cache al Registro Azure Container BYO, vengono mantenute dopo la riconciliazione del cluster, dopo aver disabilitato la funzionalità o dopo l'eliminazione del cluster del servizio Azure Kubernetes.
Quando si crea un cluster del servizio Azure Kubernetes isolato di rete, è possibile scegliere una delle modalità cluster private seguenti:
- Cluster del servizio Azure Kubernetes basato su collegamento privato: il piano di controllo o il server API si trova in un gruppo di risorse di Azure gestito dal servizio Azure Kubernetes e il pool di nodi si trova nel gruppo di risorse. Il server e il pool di nodi possono comunicare tra loro tramite il servizio collegamento privato di Azure nella rete virtuale del server API e un endpoint privato esposto nella subnet del cluster del servizio Azure Kubernetes.
- Integrazione rete virtuale del server API (anteprima): un cluster configurato con l'integrazione rete virtuale del server API proietta l'endpoint server API direttamente in una subnet delegata nella rete virtuale in cui è distribuito il servizio Azure Kubernetes. L'Integrazione della rete virtuale del server API consente la comunicazione di rete tra il server API e i nodi del cluster senza richiedere un collegamento privato o un tunnel.
Limiti
- I cluster isolati di rete sono supportati nei cluster del servizio Azure Kubernetes con Kubernetes versione 1.30 o successiva.
- Per i cluster isolati di rete è supportato solo
NodeImage
il canale di aggiornamento automatico per le immagini del sistema operativo del nodo - I pool di nodi di Windows non sono attualmente supportati.
- Le estensioni del cluster del servizio Azure Kubernetes seguenti non sono ancora supportate nei cluster isolati di rete:
Domande frequenti
Qual è la differenza tra cluster isolati di rete e Firewall di Azure?
Un cluster isolato di rete non richiede traffico in uscita oltre la rete virtuale durante il processo di avvio automatico del cluster. Un cluster isolato di rete avrà un tipo in uscita come none
o block
. Se il tipo in uscita è impostato su none
, il servizio Azure Kubernetes non configura connessioni in uscita per il cluster, consentendo all'utente di configurarle autonomamente. Se il tipo in uscita è impostato su block
, tutte le connessioni in uscita vengono bloccate.
In genere un firewall stabilisce una barriera tra una rete attendibile e una rete non attendibile, ad esempio Internet. Firewall di Azure, ad esempio, può limitare il traffico HTTP e HTTPS in uscita in base al nome di dominio completo della destinazione, offrendo un controllo del traffico in uscita con granularità fine, ma allo stesso tempo consente di fornire l'accesso ai nomi di dominio completi che includono le dipendenze in uscita di un cluster del servizio Azure Kubernetes (una cosa che i gruppi di sicurezza di rete non possono fare). Ad esempio, è possibile impostare il tipo in uscita del cluster per userDefinedRouting
forzare il traffico in uscita attraverso il firewall e quindi configurare le restrizioni FQDN sul traffico in uscita.
In sintesi, mentre Firewall di Azure può essere usato per definire restrizioni in uscita nei cluster con richieste in uscita, i cluster isolati di rete vanno oltre il comportamento sicuro per impostazione predefinita eliminando o bloccando completamente le richieste in uscita.
È necessario configurare gli endpoint consentiti per il funzionamento del cluster isolato di rete?
Le fasi di creazione e bootstrap del cluster non richiedono traffico in uscita dal cluster isolato di rete. Le immagini necessarie per i componenti del servizio Azure Kubernetes e i componenti aggiuntivi vengono estratti dal Registro Azure Container privato connesso al cluster invece di eseguire il pull da Registro artefatti Microsoft (MAR) agli endpoint pubblici.
Dopo aver configurato un cluster isolato di rete, se si vogliono abilitare funzionalità o componenti aggiuntivi che devono effettuare richieste in uscita agli endpoint di servizio, gli endpoint privati possono essere configurati per i servizi basati su collegamento privato di Azure.
È possibile aggiornare manualmente i pacchetti per aggiornare l'immagine del pool di nodi?
L'aggiornamento manuale dei pacchetti in base all'uscita ai repository di pacchetti non è supportato. È invece possibile eseguire il downgrade automatico delle immagini del sistema operativo del nodo. Per i cluster isolati di rete è supportato solo NodeImage
il canale di autoupgrade del sistema operativo del nodo.
Passaggi successivi
Azure Kubernetes Service