Come posso evitare conflitti di configurazione quando creo o aggiorno i miei componenti aggiuntivi gestiti da Amazon EKS?
Desidero evitare conflitti di configurazione quando creo o aggiorno i miei componenti aggiuntivi gestiti da Amazon Elastic Kubernetes Service (Amazon EKS).
Breve descrizione
Quando utilizzi l'Interfaccia della linea di comando AWS (AWS CLI) per modificare le configurazioni dei componenti aggiuntivi gestiti da Amazon EKS, potrebbero verificarsi conflitti di configurazione. Se non specifichi come gestire questi conflitti, ricevi il seguente messaggio di errore:
"Conflicts found when trying to apply. Will not continue due to resolve conflicts mode."
Per risolvere il problema, intraprendi una delle seguenti azioni:
- Utilizza la console Amazon EKS che gestisce automaticamente i conflitti di configurazione per aggiornare la configurazione.
- Utilizza AWS CLI con il parametro resolve-conflicts OVERWRITE per sovrascrivere esplicitamente la configurazione esistente.
Risoluzione
Nota: se ricevi errori quando esegui i comandi dell'Interfaccia della linea di comando AWS (AWS CLI), consulta Risoluzione degli errori relativi ad AWS CLI. Inoltre, assicurati di utilizzare la versione più recente di AWS CLI.
Scrivi le configurazioni in un file JSON
Scrivi le configurazioni in un file JSON in base al componente aggiuntivo che utilizzi. Per informazioni sulle opzioni di configurazione dei componenti aggiuntivi, consulta amazon-vpc-cni-k8s, aws-ebs-csi-driver e coredns sul sito web GitHub.
Componente aggiuntivo CNI di Amazon Virtual Private Cloud (Amazon VPC):
cat <<EOF > example-json-file { "env": { "MINIMUM_IP_TARGET": "example-minimum-ip-target", "WARM_ENI_TARGET": "example-warm-eni-target", "WARM_IP_TARGET": "example-ip-target" } } EOF
Nota: sostituisci example-minimum-ip-target con il numero minimo di indirizzi IP che ogni nodo deve mantenere. Inoltre, sostituisci example-warm-eni-target con il numero di interfacce di rete elastiche che il compnente aggiuntivo deve tenere disponibili per l'assegnazione dei pod. Infine, sostituisci example-ip-target con il numero di indirizzi IP che il componente aggiuntivo deve tenere disponibili per l'assegnazione dei pod.
Componente aggiuntivo driver CSI di Amazon Elastic Block Store (Amazon EBS):
cat <<EOF > example-json-file { "node": { "volumeAttachLimit": example-volume-limit } } EOF
Nota: sostituisci example-volume-limit con il numero massimo di volumi che il componente aggiuntivo driver Amazon CSI EBS può collegare a un nodo. Questo valore deve essere inferiore o uguale alla quota di collegamenti del volume del tipo di istanza Amazon Elastic Compute Cloud (Amazon EC2).
CoreDNS:
cat <<EOF > example-json-file { "resources": { "limits": { "cpu": "example-cpu-limit", "memory": "example-memory-limit", }, "requests": { "cpu": "example-cpu-request", "memory": "example-memory-request" } } } EOF
Nota: sostituisci example-cpu-limit con la CPU massima che CoreDNS può utilizzare e **example-memory-limit ** con le risorse di memoria massime che CoreDNS può utilizzare. Inoltre, sostituisci example-cpu-request con la CPU minima richiesta da CoreDNS per l'esecuzione e **example-memory-request ** con le risorse di memoria minime richieste da CoreDNS per l'esecuzione.
Applica il file JSON al componente aggiuntivo
Utilizza la console Amazon EKS
Completa i seguenti passaggi:
- Apri la console Amazon EKS.
- Scegli la scheda Componenti aggiuntivi.
- Seleziona il componente aggiuntivo, quindi scegli Modifica.
- Scegli Impostazioni di configurazione facoltative.
- Per Valori di configurazione, inserisci le configurazioni dal file JSON.
Utilizza AWS CLI
Per applicare il file JSON quando installi il componente aggiuntivo per la prima volta, esegui questo comando create-addon:
aws eks create-addon --addon-name add-on ---cluster-name example-cluster-name --resolve-conflicts OVERWRITE --configuration-values file://example-json-file
Nota: sostituisci example-cluster-name con il nome del tuo cluster Amazon EKS. Inoltre, sostituisciadd-on con vpc-cni per il componente aggiuntivo CNI di Amazon VPC, aws-ebs-csi-driver per il componente aggiuntivo driver CSI di Amazon EBS o coredns per il componente aggiuntivo CoreDNS. Infine, sostituisci example-json-file con il nome del tuo file di configurazione JSON.
Per applicare il file JSON a un componente aggiuntivo esistente, esegui questo comando update-addon:
aws eks update-addon --addon-name add-on ---cluster-name example-cluster-name --resolve-conflicts OVERWRITE --configuration-values file://example-json-file
Nota: sostituisci example-cluster-name con il nome del tuo cluster Amazon EKS. Inoltre, sostituisciadd-on con vpc-cni per il componente aggiuntivo CNI di Amazon VPC, aws-ebs-csi-driver per il componente aggiuntivo driver CSI di Amazon EBS o coredns per il componente aggiuntivo CoreDNS. Infine, sostituisci example-json-file con il nome del tuo file di configurazione JSON.
Verifica gli aggiornamenti
Per verificare che il componente aggiuntivo utilizzi la configurazione aggiornata, esegui questo comando in base al componente aggiuntivo utilizzato.
CNI di Amazon VPC e CoreDNS:
kubectl get pods -n kube-system example-aws-node-pod-ID -o jsonpath='{.spec.containers[*].env}'
Nota: sostituisci example-aws-node-pod-ID con l'ID del pod del tuo o con l'ID del pod CoreDNS.
Driver CSI di Amazon EBS:
kubectl get ds -n kube-system ebs-csi-node -o jsonpath='{.spec.template.spec.containers[*].args}'
Aggiornare le tolleranze
Quando devi aggiornare le tolleranze dei nodi per i componenti aggiuntivi, puoi includerle nel file di configurazione. Come altre modifiche alla configurazione, puoi applicare gli aggiornamenti utilizzando la console Amazon EKS o AWS CLI con il parametro resolve-conflicts OVERWRITE.
-
Crea la configurazione delle tolleranze in formato YAML:
cat <<EOF > example-yaml-file tolerations: - effect: example-effect key: example-key operator: example-operator value: example-value EOFNota: sostituisci example-yaml-file con il nome del tuo file di configurazione YAML. Inoltre, sostituisci example-effect con NoSchedule, PreferNoSchedule o NoExecute e example-operator con Equal o Exists. Infine, sostituisci example-key con la chiave della taint del tuo node e example-value con il valore della taint del tuo nodo.
-
Applica la configurazione. Utilizza una delle seguenti opzioni:
- Console Amazon EKS: segui gli stessi passaggi indicati nella sezione "Utilizza la console Amazon EKS".
-oppure- - AWS CLI: Utilizza il comando create-addon o update-addon con il parametro --resolve-conflicts OVERWRITE come illustrato nella sezione "Utilizza AWS CLI".
- Console Amazon EKS: segui gli stessi passaggi indicati nella sezione "Utilizza la console Amazon EKS".
Informazioni correlate
Determina i campi che puoi personalizzare per i componenti aggiuntivi di Amazon EKS
Amazon EKS add-ons: Advanced configuration (Componenti aggiuntivi di Amazon EKS: configurazione avanzata)
- Argomenti
- Containers
- Lingua
- Italiano

Contenuto pertinente
AWS UFFICIALEAggiornata un anno fa
AWS UFFICIALEAggiornata 2 anni fa