Comprendere le interfacce di rete virtuali nei cluster VPC

Cloud virtuale privato 4.20 e successivamente Solo nodi worker in metallo nudo

Le interfacce di rete virtuali (VNI) forniscono opzioni avanzate di connettività di rete per i carichi di lavoro in esecuzione su cluster VPC Red Hat OpenShift on IBM Cloud con nodi worker bare metal.

Cosa sono le interfacce di rete virtuali?

Una Virtual Network Interface (VNI) è un'astrazione VPC di IBM Cloud che rappresenta le singole connessioni di rete. I VNI incorporano le proprietà di una connessione di rete, tra cui:

  • Indirizzi IP (primario e secondario)
  • Indirizzi MAC
  • Associazione di sottorete VPC
  • Appartenenza al gruppo di sicurezza

Le VNI sono disponibili solo su cluster con nodi worker bare metal che eseguono Red Hat CoreOS (RHCOS).

Architettura VNI in cluster OpenShift

VNI statici

Quando si crea un cluster Red Hat OpenShift on IBM Cloud basato su bare metal o si aggiunge un nuovo pool di lavoratori bare metal in IBM Cloud VPC, vengono automaticamente create due VNI e collegate a ogni nodo lavoratore bare metal:

VNI primario
Gestisce il traffico regolare dei lavoratori, compresa la rete dei pod, le reti UDN (User Defined Network) in overlay e la comunicazione con il master del cluster.
VNI secondario (portatore)
Funge da vettore per gli allegati dinamici VNI gestiti dall'utente. Questa VNI consente di collegare interfacce di rete aggiuntive ai carichi di lavoro in esecuzione sul nodo worker.

VNI dinamici

Le VNI dinamiche vengono create e gestite su richiesta dopo la creazione del cluster. Queste VNI possono essere:

  • Collegato a specifici nodi worker
  • Configurato per fluttuare tra i lavoratori della stessa zona
  • Utilizzato per la connettività diretta alla rete VPC

Funzionalità chiave

Connettività VPC diretta
I VNI consentono ai carichi di lavoro di connettersi direttamente alle reti VPC, bypassando l'overlay della rete pod. Fornisce funzioni di rete VPC native come gruppi di sicurezza, ACL di rete e routing.
Integrazione dei gruppi di sicurezza
I VNI possono essere associati a gruppi di sicurezza VPC, fornendo un controllo dell'accesso alla rete a grana fine a livello di interfaccia.
Collegamento in rete specifico per zona
I VNI sono collegati a una sottorete e a una zona VPC specifiche. Possono gestire il traffico solo per i carichi di lavoro in esecuzione su cluster worker nella stessa zona in cui è stato effettuato il provisioning della VNI.
Conservazione della rete durante la migrazione
Per i carichi di lavoro che supportano la migrazione live (come le VM di OpenShift Virtualization), i VNI possono implicitamente fluttuare e seguire il carico di lavoro tra le istanze worker bare metal all'interno della stessa zona, preservando le connessioni di rete.

Casi di utilizzo

Virtualizzazione OpenShift
Abilitare la connettività di rete VPC diretta per le macchine virtuali, consentendo alle macchine virtuali di avere i propri indirizzi IP VPC. Vedere Gestione delle interfacce di rete virtuali per OpenShift Virtualization.
Carichi di lavoro multirete
Collegate i carichi di lavoro a più sottoreti VPC contemporaneamente, consentendo topologie di rete complesse e segregazione del traffico.
Migrazione di applicazioni legacy
Fornire una rete simile a VM per le applicazioni containerizzate che richiedono indirizzi IP specifici o accesso diretto alla rete.
Virtualizzazione delle funzioni di rete
Implementare le funzioni di rete che richiedono l'accesso diretto alle funzionalità di rete della VPC.

Limitazioni e considerazioni

Modifiche statiche del VNI
Non modificare i VNI statici creati automaticamente per ogni nodo worker. Sebbene questi VNI siano visibili nell'account VPC, qualsiasi modifica alle loro impostazioni non è supportata. Ciò include l'aggiunta di IP flottanti, la modifica dei gruppi di sicurezza o di qualsiasi altra proprietà della VNI. La modifica dei VNI statici può causare problemi di connettività del cluster.
Restrizioni alla modifica del VNI per gli allegati galleggianti
Non è possibile modificare le proprietà VNI per gli allegati dinamici fluttuanti (a livello di cluster). Questo include le modifiche al nome della VNI, agli indirizzi IP flottanti, alle impostazioni NAT dell'infrastruttura e alle assegnazioni dei gruppi di sicurezza. Per aggiornare queste impostazioni, è necessario prima staccare la VNI, apportare le modifiche e poi riattaccarla al cluster. Questa limitazione è temporanea.
Vincoli di zona
I VNI non possono fluttuare tra le zone. Nei cluster multizona, i VNI possono gestire il traffico solo per i carichi di lavoro della stessa zona in cui è stato effettuato il provisioning del VNI.
Requisiti del metallo nudo
Le VNI sono supportate solo sui nodi worker bare metal. I nodi worker dell'istanza server virtuale (VSI) non supportano i VNI.
Requisiti RHCOS
I nodi worker devono eseguire il sistema operativo Red Hat CoreOS (RHCOS).
OVN- Kubernetes CNI
I cluster devono utilizzare il plugin OVN- Kubernetes Container Network Interface (CNI).
Gestione trasversale dei conti
In Red Hat OpenShift on IBM Cloud, i nodi worker vengono forniti nell'account di IBM, non nell'account dell'utente. Ciò significa che la gestione del ciclo di vita delle VNI è diversa da quella delle istanze bare metal VPC standalone e che la visibilità sugli allegati VNI è diversa.
Requisito della versione
Il supporto VNI richiede il sito OpenShift 4.20 o successivo.

Prerequisiti

Prima di utilizzare le VNI nel cluster, assicurarsi di disporre di:

  • Un cluster Red Hat OpenShift on IBM Cloud alla versione 4.20 o successiva
  • Nodi worker in metallo nudo nel cluster
  • Red Hat CoreOS (RHCOS) sui nodi worker
  • OVN- Kubernetes CNI configurato
  • Infrastruttura VPC con sottoreti appropriate
  • Il ruolo di accesso alla piattaforma Operator per Kubernetes Service in IBM Cloud IAM
  • Il ruolo di accesso alla piattaforma Editor o Administrator per i servizi di infrastruttura VPC in IBM Cloud IAM

Gestione delle VNI

È possibile gestire le VNI dalla console IBM Cloud o utilizzando la CLI.

Collegamento di una VNI dalla console

  1. Dal sito Red Hat OpenShift on IBM Cloud console cluster, selezionare il proprio cluster.

  2. Nel menu di navigazione, fare clic su Rete > Allegati VNI.

  3. Fare clic su Allega VNI.

  4. Nel pannello Attach VNIs, configurare le seguenti impostazioni:

    • Sottorete: Selezionare la sottorete in cui si trova la VNI.
    • Nodo worker: Selezionare un nodo worker specifico o selezionare Tutti i nodi worker per un allegato VNI flottante.
    • VNI: selezionare il VNI da collegare.
    • ID VLAN: Inserire l'ID VLAN (intervallo: 1-500) che corrisponde alla configurazione di rete.
    • Cancellazione automatica: Opzionale. Selezionare per eliminare automaticamente la VNI quando viene rimossa dal cluster.
  5. Fai clic su Attach.

Collegamento di una VNI dalla CLI

Per collegare una VNI a un nodo worker bare metal specifico, usare il comando vni attach baremetal. È necessario specificare un ID VLAN (intervallo: 1-500) che corrisponda alla configurazione di rete.

ibmcloud ks vni attach baremetal --worker WORKER_ID --vni VNI_ID --vlan VLAN_ID [--auto-delete]

Per collegare un VNI fluttuante che può seguire i carichi di lavoro tra i lavoratori della stessa zona, specificare l'ID del cluster invece dell'ID del lavoratore:

ibmcloud ks vni attach baremetal --cluster-id CLUSTER_ID --vni VNI_ID --vlan VLAN_ID [--auto-delete]

Il flag --auto-delete elimina automaticamente la VNI quando viene rimossa dal cluster.

Visualizzazione degli allegati VNI dalla console

  1. Dal sito Red Hat OpenShift on IBM Cloud console cluster, selezionare il proprio cluster.

  2. Nel menu di navigazione, fare clic su Rete > Allegati VNI.

  3. Visualizza l'elenco delle VNI collegate con i dettagli che includono il nome della VNI, il nodo worker, la subnet, l'ID VLAN e l'IP primario.

Visualizzazione degli allegati VNI dalla CLI

Per elencare tutte le VNI collegate a un cluster:

ibmcloud ks vni ls --cluster-id CLUSTER_ID

Per elencare i VNI collegati a un nodo worker specifico:

ibmcloud ks vni ls --worker WORKER_ID

Rimozione di una VNI dalla console

  1. Dal sito Red Hat OpenShift on IBM Cloud console cluster, selezionare il proprio cluster.

  2. Nel menu di navigazione, fare clic su Rete > Allegati VNI.

  3. Individuare la VNI che si desidera staccare e fare clic sull'icona del menu Azioni (⋯).

  4. Selezionare Stacca e confermare l'azione.

Rimozione di una VNI dalla CLI

Per staccare una VNI da un nodo worker, specificare sia l'ID della VNI che l'ID del worker:

ibmcloud ks vni detach --worker WORKER_ID --vni VNI_ID

Per i VNI fluttuanti, elencare prima i VNI per trovare l'ID lavoratore corrente, quindi staccarsi utilizzando tale ID lavoratore.

Per esempi e casi d'uso più dettagliati, vedere Gestione delle interfacce di rete virtuali per OpenShift Virtualization.

Passi successivi