Configurazione delle risorse di NSX-T in modalità Manager
NSX-T
in modalità ManagerSono disponibili due metodi per configurare determinate risorse di rete per NCP. In questa sezione viene descritta la configurazione delle risorse in modalità Manager.
Nel file di configurazione di NCP
ncp.ini
è possibile specificare le risorse di NSX-T
utilizzando i loro UUID o nomi. Router logici e commutatori logici
- Creare un commutatore logico per i nodi Kubernetes, ad esempioLS1.
- Creare un router logico di livello 0, ad esempioT0LR1. Impostare l'opzionetier0_routernella sezione[nsx_v3]dincp.inicon l'ID del router logico se non si dispone di una topologia di livello 1 condivisa. Per informazioni sulla configurazione di una topologia di livello 1 condivisa, vedere di seguito. Impostare la modalità HA su Attivo-Standby se si intende configurare regole NAT in questo router logico. In caso contrario, impostarla su Attivo-Attivo. Abilitare la ridistribuzione della route. Configurare inoltre questo router per l'accesso alla rete esterna.
- Creare un router logico di livello 1, ad esempioT1LR1. Connettere questo router logico al router logico di livello 0.
- Configurare l'annuncio del router perT1LR1. È necessario abilitare almeno le route connesse a NSX e NAT.
- ConnettereT1LR1aLS1. Assicurarsi che l'indirizzo IP della porta del router logico non sia in conflitto con gli indirizzi IP dei nodi Kubernetes.
- Per ogni macchina virtuale del nodo, assicurarsi che la vNIC per il traffico del container sia collegata al commutatore logico creato automaticamente. È disponibile nella schedaRetecon lo stesso nome del commutatore logico, ovveroLS1.
NCP deve conoscere l'ID VIF della vNIC. Le porte del commutatore logico corrispondenti devono avere i due tag seguenti. Per un tag, specificare il nome del nodo. Per l'altro tag, specificare il nome del cluster. Per l'ambito, specificare il valore appropriato come indicato di seguito.
Tag | Ambito |
---|---|
Nome nodo | ncp/node_name |
Nome cluster | ncp/cluster |
Se il nome del nodo cambia, è necessario aggiornare il tag. Per recuperare il nome del nodo, è possibile eseguire il comando seguente:
kubectl get nodes
Se si desidera estendere il cluster Kubernetes mentre NCP è in esecuzione, ad esempio aggiungendo altri nodi al cluster, è necessario aggiungere i tag alle porte del commutatore corrispondente prima di eseguire "kubeadm join". Se si dimentica di aggiungere i tag prima di eseguire "kubeadm join", i nuovi nodi non avranno connettività. In questo caso, sarà necessario aggiungere i tag e riavviare NCP per risolvere il problema.
Per identificare la porta del commutatore per la macchina virtuale di un nodo, è possibile effettuare la seguente chiamata API:
/api/v1/fabric/virtual-machines
Nella risposta cercare la macchina virtuale del nodo e recuperare il valore dell'attributo ''external_id''. Oppure è possibile effettuare la seguente chiamata API:
/api/v1/search -G --data-urlencode "query=(resource_type:VirtualMachine AND display_name:<node_vm_name>)"
Dopo aver configurato l'ID esterno, è possibile utilizzarlo per recuperare i VIF per la macchina virtuale con la seguente API. Si tenga presente che i VIF non vengono popolati finché la macchina virtuale non viene avviata.
/api/v1/search -G --data-urlencode \ "query=(resource_type:VirtualNetworkInterface AND external_id:<node_vm_ext_id> AND \ _exists_:lport_attachment_id)"
L'attributo
lport_attachment_id
è l'ID VIF per la macchina virtuale del nodo. È quindi possibile trovare la porta logica per questo VIF e aggiungere i tag necessari.Blocchi di IP per i pod Kubernetes
Passare a
per creare uno o più blocchi di IP. Specificare il blocco di IP in formato CIDR. In container_ip_blocks
nella sezione [nsx_v3]
di ncp.ini
immettere gli UUID dei blocchi di IP. Per impostazione predefinita, i progetti condividono i blocchi di IP specificati in
container_ip_blocks
. È possibile creare blocchi di IP in modo specifico per gli spazi dei nomi non SNAT (per Kubernetes) o i cluster (per TAS) impostando l'opzione no_snat_ip_blocks
nella sezione [nsx_v3]
di ncp.ini
. Se si creano blocchi di IP non SNAT mentre NCP è in esecuzione, è necessario riavviare NCP. In caso contrario, NCP continuerà a utilizzare i blocchi di IP condivisi finché non verranno esauriti.
Quando si crea un blocco di IP, il prefisso non può essere maggiore del valore dell'opzione
subnet_prefix
nel file di configurazione di NCP ncp.ini
. Il valore predefinito è 24. NCP allocherà subnet aggiuntive per uno spazio dei nomi se la subnet originariamente allocata è esaurita.
Pool di IP esterni
Un pool di IP esterni viene utilizzato per l'allocazione degli indirizzi IP che verranno usati per la conversione degli IP pod mediante le regole SNAT e per l'esposizione dei controller in ingresso e dei servizi di tipo LoadBalancer utilizzando le regole SNAT/DNAT, come gli IP mobili di OpenStack. Questi indirizzi IP vengono denominati anche IP esterni.
Passare a
per creare un pool di IP. Immettere nell'opzione external_ip_pools
nella sezione [nsx_v3]
di ncp.ini
gli UUID dei pool di IP. Più cluster Kubernetes utilizzano lo stesso pool di IP esterni. Ogni istanza di NCP utilizza un sottoinsieme di questo pool per il cluster Kubernetes che gestisce. Per impostazione predefinita, verrà utilizzato lo stesso prefisso di subnet per le subnet del pod. Per utilizzare dimensioni di subnet diverse, aggiornare l'opzione
external_subnet_prefix
nella sezione [nsx_v3]
di ncp.ini
. È possibile passare a un pool di IP diverso modificando il file di configurazione e riavviando NCP.
Topologia di livello 1 condivisa
Per abilitare una topologia di livello 1 condivisa, eseguire le configurazioni seguenti:
- Impostare l'opzionetop_tier_routersull'ID di un router logico di livello 0 o di un router logico di livello 1. Se si tratta di un router logico di livello 1, è necessario connetterlo a un router logico di livello 0 per le connessioni esterne. Questa opzione sostituisce l'opzionetier0_router.
- Se il traffico SNAT per pod è abilitato, disconnettereT1LR1daLS1(il commutatore logico per i nodi Kubernetes) e connettere aLS1il router di livello 0 o 1 impostato intop_tier_router.
- Impostare l'opzionesingle_tier_topologysuTrue. Il valore predefinito èFalse.
(Facoltativo) (Solo per Kubernetes) Sezioni segnaposto del firewall
Per consentire all'amministratore di creare regole del firewall che non interferiscano con le sezioni del firewall create da NCP in base ai criteri di rete, passare a
e creare due sezioni del firewall. Specificare le sezioni segnaposto del firewall impostando le opzioni
bottom_firewall_section_marker
e top_firewall_section_marker
nella sezione [nsx_v3]
di ncp.ini
. La sezione inferiore del firewall deve trovarsi sotto la sezione superiore del firewall. Dopo la creazione di queste sezioni del firewall, tutte le sezioni del firewall create da NCP per l'isolamento verranno create sopra la sezione inferiore del firewall e tutte le sezioni del firewall create da NCP per i criteri verranno create sotto la sezione superiore del firewall. Se queste sezioni segnaposto non vengono create, tutte le regole di isolamento verranno create nella parte inferiore e tutte le sezioni dei criteri verranno create nella parte superiore. Più sezioni segnaposto del firewall con lo stesso valore per cluster non sono supportate e causeranno un errore.