Contribuisci a migliorare questa pagina
Per contribuire a questa guida per l’utente, seleziona il link Edit this page on GitHub che si trova nel riquadro destro di ogni pagina.
Connessione di nodi ibridi
Nota
I seguenti passaggi si applicano ai nodi ibridi che eseguono sistemi operativi compatibili ad eccezione di Bottlerocket. Per i passaggi per connettere un nodo ibrido che esegue Bottlerocket, consultare Connessione dei nodi ibridi con Bottlerocket.
In questo argomento viene descritto come connettere nodi ibridi a un cluster Amazon EKS. Dopo che i nodi ibridi si sono uniti al cluster, verranno visualizzati con lo stato Not Ready nella console Amazon EKS e in strumenti compatibili con Kubernetes come kubectl. Dopo aver completato i passaggi in questa pagina, procedi su Configurazione della CNI per nodi ibridi per preparare i nodi ibridi per l’esecuzione delle applicazioni.
Prerequisiti
Prima di connettere i nodi ibridi al cluster Amazon EKS, assicurati di aver completato tutti i passaggi relativi ai prerequisiti.
-
Disponi di una connettività di rete dal proprio ambiente on-premises alla Regione AWS che ospita il cluster Amazon EKS. Per ulteriori informazioni, consulta Preparazione della rete per i nodi ibridi.
-
Si dispone di un sistema operativo compatibile per i nodi ibridi installato sugli host on-premises. Per ulteriori informazioni, consulta Preparazione del sistema operativo per i nodi ibridi.
-
Hai creato il ruolo IAM Nodi ibridi e configurato il provider di credenziali on-premises (attivazioni ibride di Systems Manager di AWS o IAM Roles Anywhere di AWS). Per ulteriori informazioni, consulta Preparazione delle credenziali per i nodi ibridi.
-
Hai creato il cluster Amazon EKS abilitato per i nodi ibridi. Per ulteriori informazioni, consulta Creazione di un cluster Amazon EKS con nodi ibridi.
-
Hai associato il ruolo IAM Nodi ibridi alle autorizzazioni con il controllo degli accessi basato sui ruoli (RBAC) di Kubernetes. Per ulteriori informazioni, consulta Preparazione dell’accesso al cluster per i nodi ibridi.
Passaggio 1: installazione della CLI per nodi ibridi (nodeadm) su ogni host on-premises
Se si include la CLI Amazon EKS Hybrid Nodes (nodeadm) nelle immagini predefinite del sistema operativo, è possibile saltare questo passaggio. Per maggiori informazioni sulla versione per nodi ibridi del nodeadm, consultare Riferimento nodeadm dei nodi ibridi.
La versione di nodeadm per nodi ibridi è ospitata in Amazon S3 e gestita da Amazon CloudFront. Per installare nodeadm su ciascun host on-premises, puoi eseguire il seguente comando dagli host on-premises.
Per host x86_64:
curl -OL 'https://hybrid-assets.eks.amazonaws.com/releases/latest/bin/linux/amd64/nodeadm'
Per host ARM
curl -OL 'https://hybrid-assets.eks.amazonaws.com/releases/latest/bin/linux/arm64/nodeadm'
Aggiungi l’autorizzazione per i file eseguibili al file binario scaricato su ciascun host.
chmod +x nodeadm
Passaggio 2: installazione delle dipendenze dei nodi ibridi con nodeadm
Se si stanno installando le dipendenze dei nodi ibridi in immagini del sistema operativo predefinite, è possibile ignorare questo passaggio. Il comando nodeadm install può essere utilizzato per installare tutte le dipendenze richieste per i nodi ibridi. Le dipendenze dei nodi ibridi includono containerd, kubelet, kubectl e i componenti SSM di AWS o IAM Roles Anywhere di AWS. Consultare Riferimento nodeadm dei nodi ibridi per ulteriori informazioni sui componenti e le posizioni dei file installati da nodeadm install. Consultare la sezione Preparazione della rete per i nodi ibridi dedicata ai nodi ibridi per ulteriori informazioni sui domini che devono essere consentiti nel firewall on-premises per il processo nodeadm install.
Eseguire il comando seguente per installare le dipendenze dei nodi ibridi sull’host on-premises. Il comando seguente deve essere eseguito con un utente con accesso sudo/root sull’host.
Importante
La CLI per nodi ibridi (nodeadm) deve essere eseguita con un utente con accesso sudo/root sull’host.
-
Sostituire
K8S_VERSIONcon la versione secondaria Kubernetes del cluster Amazon EKS, ad esempio1.31. Consultare Amazon EKS supported versions per un elenco delle versioni Kubernetes supportate. -
Sostituire
CREDS_PROVIDERcon il provider di credenziali on-premises che si sta utilizzando. I valori validi sonossmper SSM di AWS eiam-raper IAM Roles Anywhere di AWS.
nodeadm installK8S_VERSION--credential-providerCREDS_PROVIDER
Passaggio 3: connessione dei nodi ibridi al cluster
Prima di connettere i nodi ibridi al cluster, assicurati di aver consentito l’accesso richiesto nel firewall on-premises e nel gruppo di sicurezza del cluster per il piano di controllo di Amazon EKS da/verso la comunicazione tra nodi ibridi. La maggior parte dei problemi in questa Passaggio riguarda la configurazione del firewall, la configurazione del gruppo di sicurezza o la configurazione del ruolo IAM dei nodi ibridi.
Importante
La CLI per nodi ibridi (nodeadm) deve essere eseguita con un utente con accesso sudo/root sull’host.
-
Crea un file
nodeConfig.yamlsu ogni host con i valori per la tua implementazione. Per una descrizione completa delle impostazioni di configurazione disponibili, consulta Riferimento nodeadm dei nodi ibridi. Se il ruolo IAM dei nodi ibridi non dispone dell’autorizzazione per l’azioneeks:DescribeCluster, devi passare l’endpoint dell’API Kubernetes, il cluster CA bundle e il servizio Kubernetes IPv4 CIDR nella sezione cluster del tuonodeConfig.yaml.-
Utilizza il
nodeConfig.yamldi esempio seguente se utilizzi attivazioni ibride SSM di AWS per il tuo provider di credenziali on-premises.-
Sostituisci
CLUSTER_NAMEcon il nome del cluster. -
Sostituisci
AWS_REGIONcon la Regione AWS in cui si trova il cluster. Ad esempio,us-west-2. -
Sostituisci
ACTIVATION_CODEcon il codice di attivazione che hai ricevuto durante la creazione dell’attivazione ibrida SSM di AWS. Per ulteriori informazioni, consulta Preparazione delle credenziali per i nodi ibridi. -
Sostituisci
ACTIVATION_IDcon l’ID di attivazione che hai ricevuto durante la creazione dell’attivazione ibrida SSM di AWS. È possibile recuperare queste informazioni dalla console Systems Manager di AWS o dal comandoaws ssm describe-activationsdella AWS CLI.apiVersion: node.eks.aws/v1alpha1 kind: NodeConfig spec: cluster: name: CLUSTER_NAME region: AWS_REGION hybrid: ssm: activationCode: ACTIVATION_CODE activationId: ACTIVATION_ID
-
-
Utilizza il
nodeConfig.yamldi esempio seguente se utilizzi IAM Roles Anywhere di AWS per il tuo provider di credenziali on-premises.-
Sostituisci
CLUSTER_NAMEcon il nome del cluster. -
Sostituisci
AWS_REGIONcon la Regione AWS in cui si trova il cluster. Ad esempio,us-west-2. -
Sostituisci
NODE_NAMEcon il nome del ruolo del nodo. Il nome del nodo deve corrispondere al CN del certificato sull’host se hai configurato la policy di attendibilità del ruolo IAM di Hybrid Nodes con la condizione della risorsa"sts:RoleSessionName": "${aws:PrincipalTag/x509Subject/CN}". IlnodeNameche usi non deve superare i 64 caratteri. -
Sostituisci
TRUST_ANCHOR_ARNcon l’ARN dell’ancora di fiducia che hai configurato nei passaggi per Preparare le credenziali per i nodi ibridi. -
Sostituisci
PROFILE_ARNcon l’ARN dell’ancora di fiducia che hai configurato nei passaggi per Preparazione delle credenziali per i nodi ibridi. -
Sostituisci
ROLE_ARNcon l’ARN del ruolo IAM dei nodi ibridi. -
Sostituisci
CERTIFICATE_PATHcon il percorso su disco del certificato del tuo nodo. Se non lo specifichi, il valore predefinito è/etc/iam/pki/server.pem. -
Sostituisci
KEY_PATHcon il percorso su disco della chiave privata del certificato. Se non lo specifichi, il valore predefinito è/etc/iam/pki/server.key.apiVersion: node.eks.aws/v1alpha1 kind: NodeConfig spec: cluster: name: CLUSTER_NAME region: AWS_REGION hybrid: iamRolesAnywhere: nodeName: NODE_NAME trustAnchorArn: TRUST_ANCHOR_ARN profileArn: PROFILE_ARN roleArn: ROLE_ARN certificatePath: CERTIFICATE_PATH privateKeyPath: KEY_PATH
-
-
-
Esegui il comando
nodeadm initcon il tuonodeConfig.yamlper connettere i nodi ibridi al cluster Amazon EKS.nodeadm init -c file://nodeConfig.yaml
Se il comando precedente viene effettuato correttamente, il nodo ibrido si unisce al cluster Amazon EKS. Puoi verificarlo nella console Amazon EKS accedendo alla scheda Calcolo del tuo cluster (assicurati che il principale IAM disponga delle autorizzazioni per la visualizzazione) o con kubectl get nodes.
Importante
I nodi avranno lo stato Not Ready previsto, dovuto alla mancanza di una CNI in esecuzione sui nodi ibridi. Se i tuoi nodi non si sono uniti al cluster, consulta Risoluzione dei problemi relativi ai nodi ibridi.
Passaggio 4: configurazione di una CNI per i nodi ibridi
Per preparare i nodi ibridi all’esecuzione delle applicazioni, continua con i passaggi su Configurazione della CNI per nodi ibridi.