Aiutaci a migliorare questa pagina
Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Per contribuire a questa guida per l'utente, scegli il GitHub link Modifica questa pagina nel riquadro destro di ogni pagina.
Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Preparare la rete per i nodi ibridi
Questo argomento fornisce una panoramica della configurazione di rete che devi aver configurato prima di creare il cluster Amazon EKS e collegare nodi ibridi. Questa guida presuppone che tu abbia soddisfatto i requisiti preliminari per la connettività di rete ibrida utilizzando AWS Site-to-Site VPN, AWS Direct Connect o la tua soluzione VPN.

Configurazione di rete locale
Requisiti minimi di rete
Per un'esperienza ottimale, AWS consiglia una connettività di rete affidabile di almeno 100 Mbps e una latenza massima di 200 ms di andata e ritorno per la connessione dei nodi ibridi alla Regione. AWS I requisiti di larghezza di banda e latenza possono variare in base al numero di nodi ibridi e alle caratteristiche del carico di lavoro, come la dimensione dell'immagine dell'applicazione, l'elasticità dell'applicazione, le configurazioni di monitoraggio e registrazione e la dipendenza delle applicazioni dall'accesso ai dati archiviati in altri servizi. AWS
Nodo e pod locali CIDRs
Identifica il nodo e il pod CIDRs che utilizzerai per i tuoi nodi ibridi e i carichi di lavoro in esecuzione su di essi. Il nodo CIDR viene allocato dalla rete locale e il pod CIDR viene allocato dalla Container Network Interface (CNI) se si utilizza una rete overlay per il CNI. Trasmetti il nodo locale CIDRs e, facoltativamente, il pod CIDRs come input quando crei il tuo cluster Amazon EKS con i RemoteNodeNetwork
campi and. RemotePodNetwork
I blocchi CIDR del nodo e del pod locali devono soddisfare i seguenti requisiti:
-
Rientrare in uno dei seguenti intervalli
IPv4
RFC-1918:,, o.10.0.0.0/8
172.16.0.0/12
192.168.0.0/16
-
Non si sovrappongono tra loro, il CIDR VPC per il tuo cluster Amazon EKS o il tuo servizio Kubernetes CIDR.
IPv4
Se il tuo CNI esegue NAT (Network Address Translation) per il traffico dei pod in uscita dagli host locali, non devi pubblicizzare il tuo pod CIDR sulla tua rete locale o configurare il cluster Amazon EKS con la tua rete di pod remota affinché i nodi ibridi siano pronti per i carichi di lavoro. Se il tuo CNI non utilizza NAT per il traffico dei pod quando esce dai tuoi host locali, devi pubblicizzare il tuo pod CIDR con la tua rete locale e devi configurare il tuo cluster Amazon EKS con la tua rete di pod remota affinché i nodi ibridi siano pronti per i carichi di lavoro. Se esegui webhook sui tuoi nodi ibridi, devi pubblicizzare il tuo pod CIDR sulla tua rete locale e configurare il cluster Amazon EKS con la tua rete di pod remoti in modo che il piano di controllo di Amazon EKS possa connettersi direttamente ai webhook in esecuzione su nodi ibridi.
Accesso richiesto durante l'installazione e l'aggiornamento del nodo ibrido
È necessario avere accesso ai seguenti domini durante il processo di installazione in cui si installano le dipendenze dei nodi ibridi sui propri host. Questo processo può essere eseguito una sola volta durante la creazione delle immagini del sistema operativo oppure può essere eseguito su ciascun host in fase di esecuzione. Ciò include l'installazione iniziale e l'aggiornamento della versione Kubernetes dei nodi ibridi.
Componente | URL | Protocollo | Porta |
---|---|---|---|
Artefatti del nodo EKS (S3) |
https://hybrid-assets.eks.amazonaws.com |
HTTPS |
443 |
https://eks. |
HTTPS |
443 |
|
Endpoint EKS ECR |
Vedi Visualizza i registri delle immagini dei container Amazon per i componenti aggiuntivi Amazon EKS per gli endpoint regionali. |
HTTPS |
443 |
Endpoint binario SSM 1 |
https://amazon-ssm - |
HTTPS |
443 |
https://ssm. |
HTTPS |
443 |
|
Endpoint binario IAM Anywhere 2 |
https://rolesanywhere.amazonaws.com |
HTTPS |
443 |
https://rolesanywhere. |
HTTPS |
443 |
Nota
1 L'accesso agli endpoint AWS SSM è richiesto solo se utilizzi attivazioni ibride AWS SSM per il tuo provider di credenziali IAM locale.
2 L'accesso agli endpoint AWS IAM è richiesto solo se utilizzi IAM Roles Anywhere per il tuo provider di credenziali AWS IAM locale.
Accesso richiesto per le operazioni in corso del cluster
Il seguente accesso alla rete per il firewall locale è necessario per le operazioni in corso del cluster.
Importante
A seconda della scelta del CNI, è necessario configurare regole di accesso alla rete aggiuntive per le porte CNI. Consulta la documentazione di Cilium e la documentazione
Tipo | Protocollo | Direzione | Porta | Origine | Destinazione | Utilizzo |
---|---|---|---|---|---|---|
HTTPS |
TCP |
In uscita |
443 |
CIDR del nodo remoto (i) |
Cluster EKS 1 IPs |
da kubelet al server API Kubernetes |
HTTPS |
TCP |
In uscita |
443 |
CIDR (i) Pod remoto |
Cluster EKS 1 IPs |
Da Pod al server API Kubernetes |
HTTPS |
TCP |
In uscita |
443 |
CIDR (i) del nodo remoto |
Attivazioni ibride SSM, aggiornamento delle credenziali e battiti cardiaci SSM ogni 5 minuti |
|
HTTPS |
TCP |
In uscita |
443 |
CIDR del nodo remoto |
Aggiornamento delle credenziali IAM Roles Anywhere |
|
HTTPS |
TCP |
In uscita |
443 |
CIDR (i) Pod remoto |
Da Pod a endpoint STS, richiesto solo per IRSA |
|
HTTPS |
TCP |
In uscita |
443 |
CIDR del nodo remoto |
Da nodo a endpoint di autenticazione Amazon EKS, richiesto solo per Amazon EKS Pod Identity |
|
HTTPS |
TCP |
In entrata |
10250 |
Cluster EKS 1 IPs |
CIDR (i) del nodo remoto |
da kubelet al server API Kubernetes |
HTTPS |
TCP |
In entrata |
Porte Webhook |
Cluster EKS 1 IPs |
CIDR (i) Pod remoto |
Server API Kubernetes per webhook |
HTTPS |
TCP, UDP |
In entrata, in uscita |
53 |
CIDR del pod remoto |
CIDR del pod remoto |
Da Pod a CoredNS. Se esegui almeno 1 replica di CoreDNS nel cloud, devi consentire il traffico DNS al VPC su cui è in esecuzione CoredNS. |
Definito dall'utente |
Definito dall'utente |
In entrata, in uscita |
Porte per app |
CIDR (i) Pod remoto |
CIDR del pod remoto |
Da Pod a Pod |
Nota
1 Il IPs cluster Amazon EKS. Consulta la sezione seguente sulle interfacce di rete elastiche di Amazon EKS.
Interfacce di rete Amazon EKS
Amazon EKS collega le interfacce di rete alle sottoreti del VPC che passi durante la creazione del cluster per abilitare la comunicazione tra il piano di controllo di Amazon EKS e il tuo VPC. Le interfacce di rete create da Amazon EKS possono essere trovate dopo la creazione del cluster nella EC2 console Amazon o con la AWS CLI. Le interfacce di rete originali vengono eliminate e vengono create nuove interfacce di rete quando vengono applicate modifiche al cluster Amazon EKS, come gli aggiornamenti di versione di Kubernetes. Puoi limitare l'intervallo IP per le interfacce di rete Amazon EKS utilizzando dimensioni di sottoreti vincolate per le sottoreti passate durante la creazione del cluster, il che semplifica la configurazione del firewall locale per consentire la connettività in entrata/uscita a questo set noto e vincolato di. IPs Per controllare in quali sottoreti vengono create le interfacce di rete, è possibile limitare il numero di sottoreti specificato quando si crea un cluster oppure è possibile aggiornare le sottoreti dopo la creazione del cluster.
Le interfacce di rete fornite da Amazon EKS hanno una descrizione del formato. Amazon EKS
Guarda l'esempio seguente per un comando AWS CLI che puoi usare per trovare gli indirizzi IP delle interfacce di rete fornite da Amazon EKS. Sostituisci your-cluster-name
VPC_ID
con l'ID del VPC passato durante la creazione del cluster.
aws ec2 describe-network-interfaces \ --query 'NetworkInterfaces[?(VpcId ==
VPC_ID
&& contains(Description,Amazon EKS
))].PrivateIpAddress'
AWS Configurazione di VPC e sottorete
I requisiti esistenti di VPC e sottorete per Amazon EKS si applicano ai cluster con nodi ibridi. Inoltre, il tuo VPC CIDR non può sovrapporsi al nodo e al pod locali. CIDRs È necessario configurare i percorsi nella tabella di routing VPC per il nodo locale e, facoltativamente, il pod. CIDRs Questi percorsi devono essere configurati per indirizzare il traffico verso il gateway utilizzato per la connettività di rete ibrida, che di solito è un gateway privato virtuale (VGW) o un gateway di transito (TGW). Se utilizzi TGW o VGW per connettere il tuo VPC all'ambiente locale, devi creare un allegato TGW o VGW per il tuo VPC. Il VPC deve supportare il nome host DNS e la risoluzione DNS.
I passaggi seguenti utilizzano la AWS CLI. Puoi anche creare queste risorse in AWS Management Console o con altre interfacce come AWS CDK o AWS CloudFormation Terraform.
Fase 1: Creare un VPC
-
Esegui il seguente comando per creare un VPC. Sostituisci
VPC_CIDR
con un intervalloIPv4
CIDR RFC-1918 (privato) o non RFC-1918 (pubblico) (ad esempio).10.0.0.0/16
Nota: la risoluzione DNS, che è un requisito EKS, è abilitata per impostazione predefinita per il VPC.aws ec2 create-vpc --cidr-block
VPC_CIDR
-
Abilita i nomi host DNS per il tuo VPC. Nota, la risoluzione DNS è abilitata per impostazione predefinita per il VPC. Sostituisci
VPC_ID
con l'ID del VPC creato nel passaggio precedente.aws ec2 modify-vpc-attribute --vpc-id
VPC_ID
--enable-dns-hostnames
Fase 2: Creare sottoreti
Creare almeno 2 sottoreti. Amazon EKS utilizza queste sottoreti per le interfacce di rete del cluster. Per ulteriori informazioni, consulta i requisiti e le considerazioni sulle sottoreti.
-
È possibile trovare le zone di disponibilità per una AWS regione con il seguente comando. Sostituisci
us-west-2
con la tua regione.aws ec2 describe-availability-zones \ --query 'AvailabilityZones[?(RegionName ==
us-west-2
)].ZoneName' -
Crea una sottorete. Sostituisci
VPC_ID
con l'ID del VPC. SostituisciSUBNET_CIDR
con il blocco CIDR per la tua sottorete (ad esempio 10.0.1.0/24). SostituisciAZ
con la zona di disponibilità in cui verrà creata la sottorete (ad esempio us-west-2a). Le sottoreti create devono trovarsi in almeno 2 zone di disponibilità diverse.aws ec2 create-subnet \ --vpc-id
VPC_ID
\ --cidr-blockSUBNET_CIDR
\ --availability-zoneAZ
(Facoltativo) Fase 3: collegare il VPC con Amazon VPC Transit Gateway (TGW) o il gateway privato virtuale AWS Direct Connect (VGW)
Se utilizzi un TGW o VGW, collega il tuo VPC al TGW o VGW. Per ulteriori informazioni, consulta gli allegati Amazon VPC nelle associazioni di gateway di transito Amazon VPC o gateway privati virtuali AWS Direct Connect.
Gateway di transito
Esegui il comando seguente per collegare un Transit Gateway. Sostituisci VPC_ID
con l'ID del VPC. Sostituisci SUBNET_ID1
e SUBNET_ID2
con IDs le sottoreti che hai creato nel passaggio precedente. TGW_ID
Sostituiscilo con l'ID del tuo TGW.
aws ec2 create-transit-gateway-vpc-attachment \ --vpc-id
VPC_ID
\ --subnet-idsSUBNET_ID1 SUBNET_ID2
\ --transit-gateway-idTGW_ID
Gateway privato virtuale
Esegui il comando seguente per collegare un Transit Gateway. VPN_ID
Sostituiscilo con l'ID del tuo VGW. Sostituisci VPC_ID
con l'ID del VPC.
aws ec2 attach-vpn-gateway \ --vpn-gateway-id
VPN_ID
\ --vpc-idVPC_ID
(Facoltativo) Fase 4: Creazione della tabella dei percorsi
È possibile modificare la tabella di routing principale per il VPC o creare una tabella di routing personalizzata. I passaggi seguenti creano una tabella di routing personalizzata con i percorsi verso il nodo e il pod locali. CIDRs Per ulteriori informazioni, consulta Tabelle di routing di sottorete. Sostituisci VPC_ID
con l'ID del VPC.
aws ec2 create-route-table --vpc-id
VPC_ID
Fase 5: Creare percorsi per nodi e pod locali
Crea percorsi nella tabella delle rotte per ciascuno dei tuoi nodi remoti locali. È possibile modificare la tabella di routing principale per il VPC o utilizzare la tabella di routing personalizzata creata nel passaggio precedente.
Gli esempi seguenti mostrano come creare percorsi per il nodo e il pod locali. CIDRs Negli esempi, viene utilizzato un gateway di transito (TGW) per connettere il VPC all'ambiente locale. Se disponi di più nodi e pod locali CIDRs, ripeti i passaggi per ogni CIDR.
-
Se utilizzi un gateway Internet o un gateway privato virtuale (VGW) sostituiscilo con.
--transit-gateway-id
--gateway-id
-
Sostituisci
RT_ID
con l'ID della tabella di routing creata nel passaggio precedente. -
Sostituisci
REMOTE_NODE_CIDR
con l'intervallo CIDR che utilizzerai per i tuoi nodi ibridi. -
Sostituiscilo
REMOTE_POD_CIDR
con l'intervallo CIDR che utilizzerai per i pod in esecuzione su nodi ibridi. L'intervallo CIDR del pod corrisponde alla configurazione Container Networking Interface (CNI), che più comunemente utilizza una rete overlay locale. Per ulteriori informazioni, consulta Configurare un CNI per nodi ibridi. -
Sostituiscilo
TGW_ID
con l'ID del tuo TGW.
Rete a nodi remoti
aws ec2 create-route \ --route-table-id
RT_ID
\ --destination-cidr-blockREMOTE_NODE_CIDR
\ --transit-gateway-idTGW_ID
Rete Pod remota
aws ec2 create-route \ --route-table-id
RT_ID
\ --destination-cidr-blockREMOTE_POD_CIDR
\ --transit-gateway-idTGW_ID
(Opzionale) Fase 6: Associare le sottoreti alla tabella delle rotte
Se hai creato una tabella di routing personalizzata nel passaggio precedente, associa ciascuna delle sottoreti create nel passaggio precedente alla tabella di routing personalizzata. Se stai modificando la tabella di routing principale del VPC, le sottoreti vengono automaticamente associate alla tabella di routing principale del VPC e puoi saltare questo passaggio.
Esegui il comando seguente per ciascuna delle sottoreti che hai creato nei passaggi precedenti. Sostituiscilo RT_ID
con la tabella di routing creata nel passaggio precedente. Sostituisci SUBNET_ID
con l'ID di una sottorete.
aws ec2 associate-route-table --route-table-id
RT_ID
--subnet-idSUBNET_ID
Configurazione del gruppo di sicurezza del cluster
Il seguente accesso per il tuo gruppo di sicurezza del cluster Amazon EKS è necessario per le operazioni continue del cluster.
Tipo | Protocollo | Direzione | Porta | Origine | Destinazione | Utilizzo |
---|---|---|---|---|---|---|
HTTPS |
TCP |
In entrata |
443 |
CIDR (i) del nodo remoto |
N/D |
Server API da Kubelet a Kubernetes |
HTTPS |
TCP |
In entrata |
443 |
CIDR (i) Pod remoto |
N/D |
Pod che richiedono l'accesso al server API K8s quando il CNI non utilizza NAT per il traffico dei pod. |
HTTPS |
TCP |
In uscita |
10250 |
N/D |
CIDR (i) del nodo remoto |
Da server API Kubernetes a Kubelet |
HTTPS |
TCP |
In uscita |
Porte Webhook |
N/D |
CIDR del pod remoto |
Da server API Kubernetes a webhook (se esegui webhook su nodi ibridi) |
Per creare un gruppo di sicurezza con le regole di accesso in entrata, esegui i seguenti comandi. Questo gruppo di sicurezza deve essere passato quando crei il tuo cluster Amazon EKS. Per impostazione predefinita, il comando seguente crea un gruppo di sicurezza che consente tutti gli accessi in uscita. È possibile limitare l'accesso in uscita in modo da includere solo le regole precedenti. Se state pensando di limitare le regole in uscita, vi consigliamo di testare a fondo tutte le applicazioni e la connettività dei pod prima di applicare le regole modificate a un cluster di produzione.
-
Nel primo comando, sostituisci SG_NAME con un nome per il tuo gruppo di sicurezza
-
Nel primo comando, sostituisci VPC_ID con l'ID del VPC creato nel passaggio precedente
-
Nel secondo comando, sostituisci SG_ID con l'ID del gruppo di sicurezza creato nel primo comando
-
Nel secondo comando, sostituite REMOTE_NODE_CIDR e REMOTE_POD_CIDR con i valori per i nodi ibridi e la rete locale.
aws ec2 create-security-group \ --group-name
SG_NAME
\ --description "security group for hybrid nodes" \ --vpc-idVPC_ID
aws ec2 authorize-security-group-ingress \ --group-id
SG_ID
\ --ip-permissions '[{"IpProtocol": "tcp", "FromPort": 443, "ToPort": 443, "IpRanges": [{"CidrIp": "REMOTE_NODE_CIDR"}, {"CidrIp": "REMOTE_POD_CIDR"}]}]'