Un Spazio dei nomi vSphere è una tenancy con ambito di rete su Supervisore. Spazi dei nomi vSphere vengono utilizzati per ospitare i cluster Servizio TKG e fornire servizi di rete, autorizzazioni dei ruoli, storage persistente, quota delle risorse, libreria di contenuti e integrazione della classe di macchine virtuali.

Spazio dei nomi vSphere rete

Una rete di Spazio dei nomi vSphere è una subnet esterna alla rete Supervisore > Rete carico di lavoro > Rete spazio dei nomi. Il prefisso della subnet dello spazio dei nomi definisce la dimensione della subnet riservata per ogni Spazio dei nomi vSphere. Il valore predefinito è /28.

La rete Spazio dei nomi vSphere fornisce connettività ai cluster TKG per Supervisore. Per impostazione predefinita, lo Spazio dei nomi vSphere utilizzerà le configurazioni di rete a livello di cluster e allocherà gli indirizzi IP dalla propria subnet. Quando si crea uno Spazio dei nomi vSphere, viene creata un'istanza di un segmento di overlay di /28 e un pool di IP corrispondente nei pod dei servizi in tale Spazio dei nomi vSphere.

Quando viene eseguito il provisioning del primo cluster TKG in un Spazio dei nomi vSphere, il cluster TKG condividerà la stessa subnet del proprio Spazio dei nomi vSphere. Per ogni cluster TKG successivo il cui provisioning viene eseguito in tale Spazio dei nomi vSphere, viene creata una nuova subnet per tale cluster e connessa al relativo gateway Spazio dei nomi vSphere.

È presente un'istanza di bilanciamento del carico condiviso in Spazio dei nomi vSphere che è responsabile dell'instradamento del traffico kubectl a ciascun piano di controllo del cluster TKG. Per ogni bilanciamento del carico del servizio Kubernetes che viene utilizzato nel cluster TKG, viene creata un'istanza del bilanciamento del carico di livello 4 per tale servizio.

I cluster TKG all'interno dello stesso Spazio dei nomi vSphere condividono un IP SNAT per la connettività nord-sud. La connettività est-ovest tra gli spazi dei nomi non è SNAT.

Lo Spazio dei nomi vSphere in genere non è instradabile. Tuttavia, se si utilizza Networking con NSX, è possibile sostituire la rete Spazio dei nomi vSphere con una subnet instradabile. Vedere Sostituzione delle impostazioni di rete del carico di lavoro rete per uno Spazio dei nomi vSphere.

Pool di risorse Spazio dei nomi vSphere

Nella distribuzione di un'unica zona vSphere Supervisore, quando si crea Spazio dei nomi vSphere, viene creato un pool di risorse con il supporto di tale spazio dei nomi. Spazio dei nomi vSphere fornisce un'unità logica delle risorse in Supervisore, inclusi elaborazione, storage, autorizzazioni, classi e immagini. Quando si configura un limite di CPU o memoria in Spazio dei nomi vSphere, ad esempio, vengono applicati gli stessi limiti di risorse al pool di risorse che supporta tale spazio dei nomi. In questo modo Spazi dei nomi vSphere abilitare la multi-tenancy in Supervisore.

La stessa esperienza multi-tenant si applica a Supervisore distribuito nelle tre zone vSphere. Quando un Spazio dei nomi vSphere viene creato in Supervisore a zone, il sistema crea un pool di risorse in ciascuno dei cluster vSphere che supportano tale Supervisore. Ciò consente a un cluster TKG con provisioning in tale Spazio dei nomi vSphere di essere distribuito in qualsiasi zona appartenente a questo Supervisore.

Utilizzando vSphere Client, è possibile visualizzare il pool di risorse e oggetti Spazio dei nomi vSphere selezionando la prospettiva Host e cluster, nonché selezionando la vista Macchine virtuali e modelli. Quando si esegue il provisioning di un cluster TKG, viene creato nel Spazio dei nomi vSphere di destinazione. In una distribuzione Supervisore a zone, lo stesso pool di risorse verrà incluso in ogni cluster vSphere.

Oggetti dello spazio dei nomi vSphere

Storage Spazio dei nomi vSphere per i cluster Servizio TKG

vSphere Cloud Native Storage (CNS) fornisce criteri di storage che supportano il provisioning di volumi persistenti e i relativi dischi virtuali di supporto per l'uso con i carichi di lavoro Kubernetes.

Container Storage Interface (CSI) è uno standard di settore utilizzato da Kubernetes per eseguire il provisioning dello storage persistente per i container. Supervisore esegue un driver CNS-CSI che connette lo storage CNS di vSphere all'ambiente Kubernetes tramite lo Spazio dei nomi vSphere. vSphere CNS-CSI comunica direttamente con il piano di controllo CNS per tutte le richieste di provisioning dello storage provenienti dai cluster TKG nello Spazio dei nomi vSphere.

I cluster TKG eseguono una versione modificata del driver vSphere CNS-CSI che è responsabile di tutte le richieste relative allo storage provenienti dal cluster TKG. Le richieste vengono consegnate a CNS-CSI in Supervisore, che quindi le propaga a CNS in vCenter Server.

Il diagramma mostra la relazione tra i meccanismi di storage del cluster Spazio dei nomi vSphere, Supervisore e TKG.

""

Volumi di storage persistenti per i cluster Servizio TKG

I volumi persistenti sono necessari per le applicazioni con stato in Kubernetes. Per ulteriori informazioni sui volumi persistenti, fare riferimento alla documentazione di Kubernetes.

Nell'ambiente vSphere gli oggetti di volume persistente sono supportati da dischi virtuali che si trovano nei datastore. Gli archivi dati sono rappresentati da criteri di storage. Quando si assegna un criterio di storage vSphere a Spazio dei nomi vSphere, il criterio di storage viene reso disponibile come classe di storage Kubernetes per ogni cluster TKG in tale spazio dei nomi.

TKG supporta il provisioning dinamico e statico di volumi persistenti. Con il provisioning dinamico, non è necessario eseguire prima il provisioning del volume persistente. Si emette una richiesta di volume persistente (PVC) che fa riferimento a una classe di storage disponibile nello Spazio dei nomi vSphere. TKG esegue automaticamente il provisioning del volume persistente corrispondente con un disco virtuale di supporto. Vedere Creazione dinamica di volumi di storage persistenti.

Con il provisioning statico, è possibile utilizzare un oggetto di storage esistente e renderlo disponibile a un cluster. Si definisce il volume persistente host fornendo i dettagli dell'oggetto di storage esistente, le relative configurazioni supportate e le opzioni di montaggio. Vedere Creazione statica di volumi di storage persistenti.

Il diagramma illustra il workflow di provisioning del volume dinamico persistente. È possibile creare un PVC utilizzando kubectl nel cluster TKG. Questa azione genera un PVC corrispondente in Supervisore e attiva il driver CNS-CSI, che richiama l'API di creazione del volume di CNS.

""

Edizioni della classe di storage per i cluster Servizio TKG

Per configurare un Spazio dei nomi vSphere, assegnare uno o più criteri di storage vSphere. Quando viene applicato il criterio di storage vSphere, viene convertito in una classe di storage Kubernetes e replicato su Supervisore. Allo stesso modo il controller TKG replica la classe di storage in ciascun cluster TKG distribuito in tale Spazio dei nomi vSphere.

Sul lato cluster TKG verranno visualizzate due edizioni della classe di storage: una con il nome definito dall'utente specificato al momento della creazione del criterio di storage di vSphere e l'altra con *-latebinding aggiunto al nome.

La versione successiva del binding della classe di storage può essere utilizzata dagli sviluppatori per eseguire l'associazione a un volume di storage persistente dopo che il nodo di elaborazione è stato selezionato dall'unità di pianificazione del pod TKG. Per ulteriori informazioni sulla classe di storage da utilizzare e quando, vedere Utilizzo delle classi di storage per i volumi persistenti.
kubectl get sc
NAME                                    PROVISIONER              RECLAIMPOLICY   VOLUMEBINDINGMODE      ALLOWVOLUMEEXPANSION   AGE
wcpglobal-storage-profile               csi.vsphere.vmware.com   Delete          Immediate              true                   2m43s
wcpglobal-storage-profile-latebinding   csi.vsphere.vmware.com   Delete          WaitForFirstConsumer   true                   2m43s

Creazione di Spazio dei nomi vSphere

Esistono diversi modi per creare Spazi dei nomi vSphere.

Gli amministratori possono creare Spazi dei nomi vSphere utilizzando vSphere Client. Vedere Creazione di uno Spazio dei nomi vSphere per ospitare i cluster Servizio TKG.

Gli utenti di vCenter Single Sign-On a cui viene concessa l'autorizzazione del ruolo Proprietario per Spazio dei nomi vSphere possono creare Spazi dei nomi vSphere in modalità self-service utilizzando kubectl. Vedere Abilitazione della creazione di Spazio dei nomi vSphere utilizzando Kubectl.

VMware espone API di vCenter Server per la gestione del ciclo di vita di Spazi dei nomi vSphere e fornisce SDK (Software Development Kit), tra cui: