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.
Ermitteln Sie Felder, die Sie für EKS Amazon-Add-Ons anpassen können
EKSAmazon-Add-Ons werden mithilfe von standardmäßigen Best-Practice-Konfigurationen in Ihrem Cluster installiert. Weitere Informationen zum Hinzufügen eines EKS Amazon-Add-ons zu Ihrem Cluster finden Sie unterEKSAmazon-Add-Ons.
Möglicherweise möchten Sie die Konfiguration eines EKS Amazon-Add-ons anpassen, um erweiterte Funktionen zu aktivieren. Amazon EKS verwendet die Kubernetes serverseitige Apply-Funktion, um die Verwaltung eines Add-ons durch Amazon zu ermöglichen, EKS ohne Ihre Konfiguration für Einstellungen zu überschreiben, die nicht von Amazon verwaltet werden. EKS Weitere Informationen finden Sie unter Serverseitiges Anwendenkube-controller-manager
, z. B. ohne Probleme.
Wichtig
Wenn Sie ein von Amazon verwaltetes Feld ändernEKS, kann Amazon EKS das Add-on nicht verwalten. Dies kann dazu führen, dass Ihre Änderungen überschrieben werden, wenn ein Add-on aktualisiert wird.
Syntax für die Feldverwaltung
Wenn Sie Details für ein anzeigen Kubernetes Objekt, sowohl verwaltete als auch nicht verwaltete Felder werden in der Ausgabe zurückgegeben. Verwaltete Felder können einer der folgenden Typen sein:
-
Vollständig verwaltet — Alle Schlüssel für das Feld werden von Amazon verwaltetEKS. Änderungen an einem beliebigen Wert verursachen einen Konflikt.
-
Teilweise verwaltet — Einige Schlüssel für das Feld werden von Amazon verwaltetEKS. Nur Änderungen an den Schlüsseln, die explizit von Amazon verwaltet werden, EKS verursachen einen Konflikt.
Beide Arten von Feldern sind gekennzeichnet mit manager: eks
.
Jeder Schlüssel ist entweder ein .
, welches das Feld darstellt, das immer einem leeren Satz zugeordnet wird, oder eine Zeichenfolge, die ein Unterfeld oder Element darstellt. Die Ausgabe für die Feldverwaltung besteht aus folgenden Angabetypen:
-
f:
, woname
name
ist der Name eines Feldes in einer Liste. -
k:
, wokeys
keys
ist eine Zuordnung der Felder eines Listenelements. -
v:
, wovalue
value
ist der exakte JSON formatierte Wert eines Listenelements. -
i:
, woindex
index
ist die Position eines Eintrags in der Liste.
Die folgenden Teile der Ausgabe für CoreDNS Das Add-on illustriert die vorherigen Deklarationen:
-
Vollständig verwaltete Felder – Wenn ein verwaltetes Feld ein
f:
(Feld) festgelegt hat, aber keinenk:
(Schlüssel), dann wird das gesamte Feld verwaltet. Änderungen an Werten in diesem Feld verursachen einen Konflikt.In der folgenden Ausgabe sehen Sie, dass der Container mit dem Namen
coredns
verwaltet voneks
. Dieargs
,image
undimagePullPolicy
Unterfelder werden auch verwaltet voneks
. Änderungen an Werten in diesen Feldern verursachen einen Konflikt.[...] f:containers: k:{"name":"coredns"}: .: {} f:args: {} f:image: {} f:imagePullPolicy: {} [...] manager: eks [...]
-
Teilweise verwaltete Felder – Wenn für einen verwalteten Schlüssel ein Wert angegeben ist, werden die angegebenen Schlüssel für dieses Feld verwaltet. Das Ändern der angegebenen Schlüssel führt zu einem Konflikt.
In der folgenden Ausgabe sehen Sie, dass
eks
dieconfig-volume
undtmp
Volumes verwaltet, welche mit demname
-Schlüssel eingestellt wurden.[...] f:volumes: k:{"name":"config-volume"}: .: {} f:configMap: f:items: {} f:name: {} f:name: {} k:{"name":"tmp"}: .: {} f:name: {} [...] manager: eks [...]
-
Hinzufügen von Schlüsseln zu teilweise verwalteten Feldern – Wenn nur ein bestimmter Schlüsselwert verwaltet wird, können Sie sicher zusätzliche Schlüssel wie Argumente zu einem Feld hinzufügen, ohne einen Konflikt zu verursachen. Wenn Sie zusätzliche Schlüssel hinzufügen, stellen Sie sicher, dass das Feld nicht zuerst verwaltet wird. Das Hinzufügen oder Ändern eines verwalteten Werts verursacht einen Konflikt.
In der folgenden Ausgabe sehen Sie, dass sowohl der Schlüssel
name
als auch das Feldname
verwaltet werden. Das Hinzufügen oder Ändern eines Containernamens verursacht einen Konflikt mit diesem verwalteten Schlüssel.[...] f:containers: k:{"name":"coredns"}: [...] f:name: {} [...] manager: eks [...]
Verfahren
Sie können kubectl
damit sehen, welche Felder von Amazon EKS für jedes EKS Amazon-Add-on verwaltet werden.
Sie können alle Felder ändern, die nicht von Amazon EKS oder einem anderen verwaltet werden Kubernetes Prozess auf Steuerebenekube-controller-manager
, z. B. ohne Probleme.
-
Bestimmen Sie das Add-on, das Sie überprüfen möchten. Um alles zu sehen
deployments
und DaemonSets auf Ihrem Cluster bereitgestellt, finden Sie unterKubernetes-Ressourcen anzeigen in der AWS Management Console. -
Führen Sie den folgenden Befehl aus, um die verwalteten Felder für ein Add-on anzuzeigen:
kubectl get type/add-on-name -n add-on-namespace -o yaml
Sie können beispielsweise die verwalteten Felder für die sehen CoreDNS Add-on mit dem folgenden Befehl.
kubectl get deployment/coredns -n kube-system -o yaml
Die Feldverwaltung wird im folgenden Abschnitt in der zurückgegebenen Ausgabe aufgeführt.
[...] managedFields: - apiVersion: apps/v1 fieldsType: FieldsV1 fieldsV1: [...]
Anmerkung
Wenn Sie
managedFields
in der Ausgabe nichts sehen, ergänzen Sie--show-managed-fields
den Befehl und führen Sie ihn erneut aus. Die Versionkubectl
, die Sie verwenden, bestimmt, ob verwaltete Felder standardmäßig zurückgegeben werden.
Nächste Schritte
Passen Sie die Felder an, deren Eigentümer das Add-on nicht AWS für Sie ist.