Configurare l'accesso alla rete all'endpoint del server API del cluster - Amazon EKS

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à.

Configurare l'accesso alla rete all'endpoint del server API del cluster

È possibile modificare l'accesso agli endpoint del server API del cluster utilizzando AWS Management Console o la AWS CLI nelle sezioni seguenti.

Configura l'accesso agli endpoint - console AWS

  1. Aprire la Console Amazon EKS.

  2. Scegliere il nome del cluster per visualizzare le informazioni sul cluster.

  3. Scegli la scheda Rete e scegli Gestisci l'accesso agli endpoint.

  4. Per l'accesso privato, scegli se abilitare o disabilitare l'accesso privato per l'endpoint del server Kubernetes API del cluster. Se abiliti l'accesso privato, le richieste Kubernetes API che provengono dal VPC del cluster utilizzano l'endpoint VPC privato. Per disabilitare l'accesso pubblico è necessario abilitare l'accesso privato.

  5. Per l'accesso pubblico, scegli se abilitare o disabilitare l'accesso pubblico per l'endpoint del server Kubernetes API del cluster. Se disabiliti l'accesso pubblico, il server Kubernetes API del cluster può ricevere richieste solo dall'interno del VPC del cluster.

  6. (Facoltativo) Se hai abilitato l'accesso pubblico, puoi specificare quali indirizzi da Internet possono comunicare con l'endpoint pubblico. Selezionare Advanced settings (Impostazioni avanzate). Immettere un blocco CIDR, ad esempio 203.0.113.5/32. Il blocco non può includere indirizzi riservati. È possibile immettere blocchi aggiuntivi selezionando Add Source (Aggiungi origine). È possibile specificare un numero massimo di blocchi CIDR. Per ulteriori informazioni, consulta Visualizza e gestisci le quote dei servizi Amazon EKS e Fargate. Se non specifichi nessun blocco, l'endpoint del server API pubblico riceve le richieste da tutti gli indirizzi IP sia per () che per () in aggiunta IPv4 IPv6 (0.0.0.0/0::/0) per il cluster IPv6 dual-stack. Se limiti l'accesso al tuo endpoint pubblico utilizzando blocchi CIDR, ti consigliamo di abilitare anche l'accesso privato agli endpoint in modo che i nodi e Fargate Pods (se li usi) possano comunicare con il cluster. Senza l'endpoint privato abilitato, le origini CIDR dell'endpoint di accesso pubblico devono includere le origini di uscita dal VPC. Ad esempio, se si dispone di un nodo in una sottorete privata che comunica su Internet tramite un gateway NAT, sarà necessario aggiungere l'indirizzo IP in uscita del gateway NAT come parte di un blocco CIDR nella whitelist nell'endpoint pubblico.

  7. Scegliere Update (Aggiorna) per terminare.

Configurazione dell'accesso agli endpoint - AWS CLI

Completa i seguenti passaggi utilizzando la versione AWS CLI 1.27.160 o successiva. È possibile verificare la versione corrente con aws --version. Per installare o aggiornare la AWS CLI, vedi Installazione della AWS CLI.

  1. Aggiorna l'accesso agli endpoint del server API del cluster con il seguente comando AWS CLI. Sostituire il nome del cluster e i valori di accesso dell'endpoint desiderati. Se si imposta endpointPublicAccess=true, è possibile (facoltativamente) immettere un singolo blocco CIDR o un elenco separato da virgole di blocchi CIDR per publicAccessCidrs. I blocchi non possono includere indirizzi riservati. Se si specificano blocchi CIDR, l'endpoint del server API pubblico riceverà solo le richieste dai blocchi elencati. È possibile specificare un numero massimo di blocchi CIDR. Per ulteriori informazioni, consulta Visualizza e gestisci le quote dei servizi Amazon EKS e Fargate. Se limiti l'accesso all'endpoint pubblico utilizzando i blocchi CIDR, è consigliabile abilitare anche l'accesso agli endpoint privati in modo che i nodi e i Pods Fargate (se utilizzati) possano comunicare con il cluster. Senza l'endpoint privato abilitato, le origini CIDR dell'endpoint di accesso pubblico devono includere le origini di uscita dal VPC. Ad esempio, se si dispone di un nodo in una sottorete privata che comunica su Internet tramite un gateway NAT, sarà necessario aggiungere l'indirizzo IP in uscita del gateway NAT come parte di un blocco CIDR nella whitelist nell'endpoint pubblico. Se non si specifica alcun blocco CIDR, l'endpoint del server API pubblico riceve le richieste da tutti gli indirizzi IP (0.0.0.0/0) e in aggiunta () per il cluster dual-stack. IPv6 ::/0 IPv6

    Nota

    Il comando seguente consente l'accesso privato e l'accesso pubblico da un singolo indirizzo IP per l'endpoint del server API. Sostituire 203.0.113.5/32 con un singolo blocco CIDR o un elenco separato da virgole di blocchi CIDR a cui si desidera limitare l'accesso alla rete.

    aws eks update-cluster-config \ --region region-code \ --name my-cluster \ --resources-vpc-config endpointPublicAccess=true,publicAccessCidrs="203.0.113.5/32",endpointPrivateAccess=true

    Di seguito viene riportato un output di esempio:

    { "update": { "id": "e6f0905f-a5d4-4a2a-8c49-EXAMPLE00000", "status": "InProgress", "type": "EndpointAccessUpdate", "params": [ { "type": "EndpointPublicAccess", "value": "true" }, { "type": "EndpointPrivateAccess", "value": "true" }, { "type": "publicAccessCidrs", "value": "[\"203.0.113.5/32\"]" } ], "createdAt": 1576874258.137, "errors": [] } }
  2. Monitorare lo stato di aggiornamento dell'accesso all'endpoint con il comando seguente, utilizzando il nome del cluster, e aggiornare l'ID restituito dal comando precedente. L'aggiornamento è completo quando lo stato è illustrato come Successful.

    aws eks describe-update \ --region region-code \ --name my-cluster \ --update-id e6f0905f-a5d4-4a2a-8c49-EXAMPLE00000

    Di seguito viene riportato un output di esempio:

    { "update": { "id": "e6f0905f-a5d4-4a2a-8c49-EXAMPLE00000", "status": "Successful", "type": "EndpointAccessUpdate", "params": [ { "type": "EndpointPublicAccess", "value": "true" }, { "type": "EndpointPrivateAccess", "value": "true" }, { "type": "publicAccessCidrs", "value": "[\"203.0.113.5/32\"]" } ], "createdAt": 1576874258.137, "errors": [] } }

📝 Modifica questa pagina su GitHub