Impedisci Pods la pianificazione su nodi specifici - Amazon EKS

Aiutaci a migliorare questa pagina

Vuoi contribuire a questa guida per l'utente? Scorri fino alla fine di questa pagina e seleziona Modifica questa pagina su GitHub. I tuoi contributi contribuiranno a rendere la nostra guida utente migliore per tutti.

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

Impedisci Pods la pianificazione su nodi specifici

Amazon EKS supporta la configurazione di Kubernetes taints tramite gruppi di nodi gestiti. I taint e le tolleranze agiscono insieme per garantire che i Pods non siano pianificati su nodi inappropriati. Ad un nodo possono essere applicati uno o più taint. Questo indica che il nodo non dovrebbe accettare alcun Pods che non tollera i taint. Le tolleranze vengono applicate ai Pods e consentono, ma non forzano, la pianificazione dei Pods su nodi con taint corrispondenti. Per ulteriori informazioni consulta Taint e tolleranze nella documentazione di Kubernetes.

Kubernetesle contaminazioni dei nodi possono essere applicate a gruppi di nodi gestiti nuovi ed esistenti utilizzando AWS Management Console o tramite Amazon EKSAPI.

  • Per informazioni sulla creazione di un gruppo di nodi con una macchia utilizzando il AWS Management Console, consulta. Crea un gruppo di nodi gestito per il tuo cluster

  • Di seguito è riportato un esempio di creazione di un gruppo di nodi con un taint utilizzando la AWS CLI:

    aws eks create-nodegroup \ --cli-input-json ' { "clusterName": "my-cluster", "nodegroupName": "node-taints-example", "subnets": [ "subnet-1234567890abcdef0", "subnet-abcdef01234567890", "subnet-021345abcdef67890" ], "nodeRole": "arn:aws:iam::111122223333:role/AmazonEKSNodeRole", "taints": [ { "key": "dedicated", "value": "gpuGroup", "effect": "NO_SCHEDULE" } ] }'

Per ulteriori informazioni ed esempi di utilizzo, consulta taint nella documentazione di riferimento di Kubernetes.

Nota
  • I taint possono essere aggiornati dopo aver creato il gruppo di nodi utilizzando. UpdateNodegroupConfig API

  • La chiave del taint deve iniziare con una lettera o un numero. Può includere lettere, numeri, trattini (-), punti (.) e trattini bassi (_). Può contenere fino a 63 caratteri.

  • Facoltativamente, la chiave taint può iniziare con un prefisso di DNS sottodominio e un prefisso singolo. / Se inizia con un prefisso di DNS sottodominio, può avere una lunghezza di 253 caratteri.

  • Il valore è facoltativo e deve iniziare con una lettera o un numero. Può includere lettere, numeri, trattini (-), punti (.) e trattini bassi (_). Può contenere fino a 63 caratteri.

  • Quando si utilizza Kubernetes direttamente o la AWS Management Console, l'effetto taint deve essere NoSchedule, PreferNoSchedule o NoExecute. Tuttavia, quando si utilizza AWS CLI oAPI, l'effetto contaminazione deve essereNO_SCHEDULE, PREFER_NO_SCHEDULE o. NO_EXECUTE

  • Sono consentiti un massimo di 50 taint per un gruppo di nodi.

  • Se le contaminazioni create utilizzando un gruppo di nodi gestito vengono rimosse manualmente da un nodo, Amazon EKS non le aggiunge nuovamente al nodo. Questo è vero anche se i taint sono specificati nella configurazione del gruppo di nodi gestito.

Puoi utilizzare il aws eks update-nodegroup-config AWS CLI comando per aggiungere, rimuovere o sostituire i taint per i gruppi di nodi gestiti.