Desidero aumentare la quota nf_conntrack_max dei miei nodi Amazon Elastic Kubernetes Service (Amazon EKS).
Risoluzione
Controlla il valore nf_conntrack_max attuale
Completa i seguenti passaggi:
- Utilizza SSH o Gestione sessione, una funzionalità di AWS Systems Manager, per connetterti al nodo worker.
- Esegui questo comando per ottenere il valore nf_conntrack_max attuale:
cat /proc/sys/net/netfilter/nf_conntrack_max
Modifica la ConfigMap di kube-proxy
Completa i seguenti passaggi:
-
Esegui questo comando per modificare la ConfigMap kube-proxy-config:
kubectl edit configmap kube-proxy-config -n kube-system
-
In conntrack, aumenta il valore min:
conntrack:
maxPerCore: 32768
min: 131072
Nota: sostituisci gli esempi di valore con i tuoi valori. Calcola il valore nf_conntrack_max come max(min, maxPerCore * number_of_CPU_cores). Ad esempio, imposti min su 131072 e maxPerCore su 32768 in un nodo con 2 core CPU. Il valore nf_conntrack_max diventa 131.072 perché 131.072 è maggiore di 32.768 moltiplicato per 2.
-
Salva le modifiche, quindi chiudi l'editor.
Riavvia il DaemonSet di kube-proxy
Dopo aver modificato la ConfigMap, esegui questo comando per riavviare il DaemonSet di kube-proxy e applicare le modifiche:
kubectl rollout restart daemonset kube-proxy -n kube-system
Verifica che il valore nf_conntrack_max sia aggiornato
Importante: quando aumenti nf_conntrack_max, l'utilizzo della memoria del nodo aumenta. Ogni voce di monitoraggio della connessione utilizza circa 300 byte di memoria. Assicurati di allocare memoria sufficiente.
Completa i seguenti passaggi:
- Utilizza SSH o Gestione sessione per connetterti al nodo worker.
- Esegui questo comando per verificare che il valore nf_conntrack_max sia stato aggiornato:
cat /proc/sys/net/netfilter/nf_conntrack_max
Informazioni correlate
Aggiornare il componente aggiuntivo autogestito kube-proxy Kubernetes
Gestione di componenti aggiuntivi di rete per i cluster Amazon EKS
kube-proxy sul sito web Kubernetes
Gestione sessione di AWS Systems Manager