Hilf mit, diese Seite zu verbessern
Möchten Sie zu diesem Benutzerhandbuch beitragen? Scrollen Sie zum Ende dieser Seite und wählen Sie Diese Seite bearbeiten am aus GitHub. Ihre Beiträge werden dazu beitragen, unser Benutzerhandbuch für alle zu verbessern.
Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Core DNS für DNS in EKS Amazon-Clustern verwalten
CoreDNS ist ein flexibler, erweiterbarer DNS Server, der als Kubernetes ClusterDNS. Wenn Sie einen EKS Amazon-Cluster mit mindestens einem Knoten starten, werden zwei Replikate des CoreDNS Images werden standardmäßig bereitgestellt, unabhängig von der Anzahl der in Ihrem Cluster bereitgestellten Knoten. Das Tool CoreDNS Pods stellen Sie die Namensauflösung für alle bereit Pods im Cluster. Das Tool CoreDNS Pods kann auf Fargate-Knoten bereitgestellt werden, wenn Ihr Cluster einen Definieren Sie, welche Pods Verwendung AWS Fargate beim Start verwendet wird mit einem Namespace enthält, der dem Namespace für den entspricht CoreDNS deployment
. Für weitere Informationen über CoreDNS, siehe Verwenden CoreDNS für Service Discovery
CoreDNS versions
In der folgenden Tabelle ist die jeweils neueste Version des EKS Amazon-Zusatztyps aufgeführt Kubernetes Version.
Kubernetes version | 1.31 |
1.30 |
1.29 |
1.28 |
1.27 |
1.26 |
1.25 |
1.24 |
1.23 |
---|---|---|---|---|---|---|---|---|---|
v1.11.3-eksbuild.1 |
v1.11.3-eksbuild.1 |
v1.11.3-eksbuild.1 |
v1.10.1-eksbuild.13 |
v1.10.1-eksbuild.13 |
v1.9.3-eksbuild.17 |
v1.9.3-eksbuild.17 |
v1.9.3-eksbuild.17 |
v1.8.7-eksbuild.16 |
Wichtig
Wenn Sie dieses Add-on selbst verwalten, stimmen die Versionen in der Tabelle möglicherweise nicht mit den verfügbaren selbstverwalteten Versionen überein. Weitere Hinweise zur Aktualisierung des selbstverwalteten Typs dieses Add-ons finden Sie unter Aktualisiere das CoreDNS EKSSelbstverwaltetes Amazon-Add-on.
Wichtig CoreDNS Überlegungen zum Upgrade
-
Zur Verbesserung der Stabilität und Verfügbarkeit des CoreDNS Deployment, Versionen
v1.9.3-eksbuild.6
und höher undv1.10.1-eksbuild.3
werden mit einem bereitgestelltPodDisruptionBudget
. Wenn Sie ein vorhandenesPodDisruptionBudget
bereitgestellt haben, schlägt Ihr Upgrade auf diese Versionen möglicherweise fehl. Schlägt das Upgrade fehl, sollte das Problem durch Ausführen einer der folgenden Aufgaben gelöst werden:-
Wählen Sie beim Upgrade des EKS Amazon-Add-ons, die vorhandenen Einstellungen als Konfliktlösungsoption außer Kraft zu setzen. Wenn Sie andere benutzerdefinierte Einstellungen an der vorgenommen haben Deployment, stellen Sie sicher, dass Sie Ihre Einstellungen vor dem Upgrade sichern, damit Sie Ihre anderen benutzerdefinierten Einstellungen nach dem Upgrade erneut anwenden können.
-
Entfernen Sie Ihr vorhandenes
PodDisruptionBudget
und versuchen Sie das Upgrade erneut.
-
-
In EKS Zusatzversionen
v1.9.3-eksbuild.3
und späteren Versionenv1.10.1-eksbuild.6
und immer später CoreDNS Deployment legt festreadinessProbe
, dass der/ready
Endpunkt verwendet wird. Dieser Endpunkt ist in derCorefile
Konfigurationsdatei für aktiviert CoreDNS.Wenn Sie ein benutzerdefiniertes Plugin verwenden
Corefile
, müssen Sie dasready
Plugin zur Konfiguration hinzufügen, damit der/ready
Endpunkt in aktiv ist CoreDNS damit die Sonde verwendet werden kann. -
In EKS Zusatzversionen
v1.9.3-eksbuild.7
v1.10.1-eksbuild.4
und späteren Versionen können Sie die ändernPodDisruptionBudget
. Sie können das Add-on bearbeiten und diese Einstellungen in den optionalen Konfigurationseinstellungen mithilfe der Felder im folgenden Beispiel ändern. Dieses Beispiel zeigt das Standard-PodDisruptionBudget
.{ "podDisruptionBudget": { "enabled": true, "maxUnavailable": 1 } }
Sie können
maxUnavailable
oderminAvailable
festlegen, aber Sie können nicht beide gleichzeitig in einem einzelnenPodDisruptionBudget
festlegen. Weitere Informationen zu finden SiePodDisruptionBudgets
unter Spezifizieren von aPodDisruptionBudget
im Kubernetes Dokumentation. Beachten Sie, dass, wenn Sie
enabled
auffalse
festlegen, dasPodDisruptionBudget
nicht entfernt wird. Nachdem Sie dieses Feld auffalse
gesetzt haben, müssen Sie dasPodDisruptionBudget
-Objekt löschen. Ähnlich verhält es sich, wenn Sie das Add-on bearbeiten, um nach dem Upgrade auf eine Version mit einemPodDisruptionBudget
eine ältere Version des Add-ons zu verwenden (das Add-On herunterstufen). DasPodDisruptionBudget
wird nicht entfernt. Führen Sie den folgenden Befehl aus, um dasPodDisruptionBudget
zu löschen:kubectl delete poddisruptionbudget coredns -n kube-system
-
Ändern Sie in EKS Add-On-Versionen
v1.10.1-eksbuild.5
und höher die Standardtoleranz vonnode-role.kubernetes.io/master:NoSchedule
auf, sodassnode-role.kubernetes.io/control-plane:NoSchedule
sie KEP 2067 entspricht. Weitere Informationen zu KEP 2067 finden Sie unter KEP-2067: Benennen Sie das kubeadm „master“ -Label und Taint um in den KubernetesEnhancement Proposals () auf KEPs GitHub. In EKS Add-On-Versionen
v1.8.7-eksbuild.8
v1.9.3-eksbuild.9
und späteren Versionen sind beide Toleranzen so eingestellt, dass sie mit allen kompatibel sind Kubernetes Version. -
In EKS Add-On-Versionen
v1.9.3-eksbuild.11
v1.10.1-eksbuild.7
und später CoreDNS Deployment legt einen Standardwert für festtopologySpreadConstraints
. Der Standardwert stellt sicher, dass CoreDNS Pods sind auf die Availability Zones verteilt, wenn Knoten in mehreren Availability Zones verfügbar sind. Sie können einen benutzerdefinierten Wert festlegen, der anstelle des Standardwerts verwendet wird. Der Standardwert lautet wie folgt:topologySpreadConstraints: - maxSkew: 1 topologyKey: topology.kubernetes.io/zone whenUnsatisfiable: ScheduleAnyway labelSelector: matchLabels: k8s-app: kube-dns
CoreDNS Überlegungen zum 1.11
Upgrade
-
In EKS Zusatzversionen
v1.11.1-eksbuild.4
und späteren Versionen basiert das Container-Image auf einem minimalen Basis-Image, das von Amazon EKS Distro verwaltet wird. Es enthält nur minimale Pakete und keine Shells. Weitere Informationen finden Sie unter Amazon EKS Distro . Die Verwendung und Fehlerbehebung des CoreDNS Das Bild bleibt gleich.