Hilf mit, diese Seite 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.
Wenn Sie zu diesem Benutzerhandbuch beitragen möchten, wählen Sie den GitHub Link Diese Seite bearbeiten auf, der sich im rechten Bereich jeder Seite befindet.
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.
Auf dieser Seite werden Überlegungen zum Ausführen von AWS Add-Ons und Community-Add-Ons auf Amazon EKS-Hybridknoten beschrieben. Weitere Informationen zu Amazon EKS-Add-Ons und den Prozessen zum Erstellen, Aktualisieren und Entfernen von Add-Ons aus Ihrem Cluster finden Sie unterAmazon-EKS-Add-ons. Sofern auf dieser Seite nicht anders angegeben, sind die Verfahren zum Erstellen, Aktualisieren und Entfernen von Amazon EKS-Add-Ons für Amazon EKS-Cluster mit Hybridknoten identisch wie für Amazon EKS-Cluster mit Knoten, die in der AWS Cloud laufen. Nur die auf dieser Seite enthaltenen Add-Ons wurden auf ihre Kompatibilität mit Amazon EKS Hybrid Nodes überprüft.
Die folgenden AWS Add-Ons sind mit Amazon EKS Hybrid Nodes kompatibel.
AWS Add-on | Kompatible Zusatzversionen |
---|---|
kube-proxy |
v1.25.14-eksbuild.2 und höher |
CoreDNS |
v1.9.3-eksbuild.7 und höher |
AWS Distribution für (ADOT) OpenTelemetry |
v0.102.1-eksbuild.2 und höher |
CloudWatch Agent für Beobachtbarkeit |
v2.2.1-eksbuild.1 und höher |
EKS Pod Identity Agent |
v1.3.3-eksbuild.1 und höher |
CSI-Snapshot-Controller |
v8.1.0-eksbuild.1 und höher |
Die folgenden Community-Add-Ons sind mit Amazon EKS Hybrid Nodes kompatibel. Weitere Informationen zu Community-Add-Ons finden Sie unterCommunity-Erweiterungen.
Community-Add-on | Kompatible Zusatzversionen |
---|---|
Kubernetes Metrics Server |
v0.7.2-eksbuild.1 und höher |
Zusätzlich zu den Amazon EKS-Add-Ons in den obigen Tabellen sind der Amazon Managed Service für Prometheus Collector und der Load AWS Balancer Controller für Anwendungseingang (HTTP) und Load Balancing (TCP/UDP) mit Hybridknoten kompatibel.
Es gibt AWS Add-Ons und Community-Add-Ons, die nicht mit Amazon EKS Hybrid Nodes kompatibel sind. Die neuesten Versionen dieser Add-Ons verfügen über eine Anti-Affinitätsregel für das eks.amazonaws.com/compute-type: hybrid
Standardlabel, das auf Hybridknoten angewendet wird. Dadurch wird verhindert, dass sie auf Hybridknoten ausgeführt werden, wenn sie in Ihren Clustern eingesetzt werden. Wenn Sie Cluster mit sowohl Hybridknoten als auch Knoten haben, die in der AWS Cloud ausgeführt werden, können Sie diese Add-Ons in Ihrem Cluster auf Knoten bereitstellen, die in der AWS Cloud ausgeführt werden. Das Amazon VPC CNI ist nicht mit Hybridknoten kompatibel, und Cilium und Calico werden als Container Networking Interfaces (CNIs) für Amazon EKS-Hybridknoten unterstützt. Weitere Informationen finden Sie unter Ein CNI für Hybridknoten konfigurieren.
AWS Add-Ons
In den folgenden Abschnitten werden die Unterschiede zwischen der Ausführung kompatibler AWS Add-Ons auf Hybridknoten im Vergleich zu anderen Amazon EKS-Compute-Typen beschrieben.
kube-proxy und CoreDNS
EKS installiert Kube-Proxy und CoreDNS standardmäßig als selbstverwaltete Add-Ons, wenn Sie einen EKS-Cluster mit der AWS API und AWS SDKs, auch über die CLI, erstellen. AWS Sie können diese Add-Ons nach der Cluster-Erstellung mit Amazon EKS-Add-Ons überschreiben. Einzelheiten zu kube-proxyIn Amazon EKS-Clustern verwalten und CoreDNS für DNS in Amazon EKS-Clustern verwalten finden Sie in der EKS-Dokumentation. Wenn Sie einen Cluster im gemischten Modus mit Hybridknoten und Knoten in der AWS Cloud ausführen, wird empfohlen, mindestens ein CoreDNS-Replikat auf Hybridknoten und mindestens ein CoreDNS-Replikat auf Ihren Knoten in der Cloud zu haben. AWS Die Schritte zur Konfiguration finden Sie unter. CoreDNS-Replikate konfigurieren
CloudWatch Agent für Beobachtbarkeit
Der CloudWatch Observability-Agent-Operator verwendet Webhooks.
Metriken auf Knotenebene sind für Hybridknoten nicht verfügbar, da CloudWatch Container Insights von der Verfügbarkeit des Instance Metadata Service (IMDS) für Metriken auf Knotenebene abhängt. Metriken auf Cluster-, Workload-, Pod- und Container-Ebene sind für Hybridknoten verfügbar.
Nachdem Sie das Add-on mithilfe der unter Installieren des CloudWatch Agenten mit Amazon CloudWatch Observability beschriebenen Schritte installiert haben, muss das Zusatz-Manifest aktualisiert werden, bevor der Agent erfolgreich auf Hybridknoten ausgeführt werden kann. Bearbeiten Sie die amazoncloudwatchagents
Ressource im Cluster, um die RUN_WITH_IRSA
Umgebungsvariable hinzuzufügen, wie unten gezeigt.
kubectl edit amazoncloudwatchagents -n amazon-cloudwatch cloudwatch-agent
apiVersion: v1
items:
- apiVersion: cloudwatch.aws.amazon.com/v1alpha1
kind: AmazonCloudWatchAgent
metadata:
...
name: cloudwatch-agent
namespace: amazon-cloudwatch
...
spec:
...
env:
- name: RUN_WITH_IRSA # <-- Add this
value: "True" # <-- Add this
- name: K8S_NODE_NAME
valueFrom:
fieldRef:
fieldPath: spec.nodeName
...
Amazon Managed Prometheus Managed Collector für Hybridknoten
Ein von Amazon Managed Service for Prometheus (AMP) verwalteter Collector besteht aus einem Scraper, der Metriken aus den Ressourcen in einem Amazon EKS-Cluster erkennt und sammelt. AMP verwaltet den Scraper für Sie, sodass Sie keine Instanzen, Agenten oder Scraper selbst verwalten müssen.
Sie können AMP Managed Collectors ohne zusätzliche Konfiguration verwenden, die spezifisch für Hybridknoten ist. Die metrischen Endpunkte für Ihre Anwendungen auf den Hybridknoten müssen jedoch von der VPC aus erreichbar sein, einschließlich der Routen von der VPC zum Remote-Pod-Netzwerk CIDRs und der offenen Ports in Ihrer lokalen Firewall. Darüber hinaus muss Ihr Cluster über einen privaten Cluster-Endpunktzugriff verfügen.
Folgen Sie den Schritten unter Verwenden eines AWS verwalteten Collectors im Amazon Managed Service for Prometheus Benutzerhandbuch.
AWS Distribution für OpenTelemetry (ADOT)
Sie können das Add-on AWS Distro for OpenTelemetry (ADOT) verwenden, um Metriken, Protokolle und Ablaufverfolgungsdaten von Ihren Anwendungen zu sammeln, die auf Hybridknoten ausgeführt werden. ADOT verwendet Zugangswebhooks, um die Anfragen für benutzerdefinierte Collector-Ressourcen
Folgen Sie den Schritten unter Erste Schritte mit AWS Distro zur OpenTelemetry Verwendung von EKS-Add-Ons
AWS Load Balancer Balancer-Controller
Sie können den Load AWS Balancer Controller und den Application Load Balancer (ALB) oder den Network Load Balancer (NLB) mit dem Zieltyp ip für Workloads auf Hybridknoten verwenden, die mit Direct Connect oder VPN verbunden sind. AWS AWS Site-to-Site Die IP-Ziele, die mit dem ALB oder NLB verwendet werden, müssen von dort aus routbar sein. AWS Der AWS Load Balancer Balancer-Controller verwendet auch Webhooks
Um den Load AWS Balancer Controller zu installieren, folgen Sie den Schritten unter Installieren Sie den AWS Load Balancer Controller mit Helm oderInstallieren Sie den AWS Load Balancer Controller mit Manifesten.
Für den Dateneingang mit ALB müssen Sie die folgenden Anmerkungen angeben. Detaillierte Anweisungen finden Sie unter Weiterleiten von Anwendungs- und HTTP-Verkehr mit Application Load Balancers.
alb.ingress.kubernetes.io/target-type: ip
Für den Lastenausgleich mit NLB müssen Sie die folgenden Anmerkungen angeben. Detaillierte Anweisungen finden Sie unter Weiterleiten von TCP- und UDP-Verkehr mit Network Load Balancers.
service.beta.kubernetes.io/aws-load-balancer-type: "external"
service.beta.kubernetes.io/aws-load-balancer-nlb-target-type: "ip"
EKS Pod Identity Agent
Der ursprüngliche Amazon EKS Pod Identity Agent DaemonSet ist auf die Verfügbarkeit von EC2 IMDS auf dem Knoten angewiesen, um die erforderlichen AWS Anmeldeinformationen zu erhalten. Da IMDS ab der Add-On-Version 1.3.3-eksbuild.1
nicht auf Hybridknoten verfügbar ist, stellt das Pod Identity Agent-Add-on optional einen zweiten bereit DaemonSet , der speziell auf Hybridknoten abzielt. Dadurch werden die erforderlichen DaemonSet Anmeldeinformationen den Pods zugewiesen, die mit dem Pod Identity Agent-Add-on erstellt wurden.
-
Um den Pod Identity-Agenten auf Hybridknoten zu verwenden, legen Sie
enableCredentialsFile: true
im Hybrid-Abschnitt dernodeadm
Konfiguration wie folgt fest:apiVersion: node.eks.aws/v1alpha1 kind: NodeConfig spec: hybrid: enableCredentialsFile: true # <-- Add this
Dadurch wird eine Anmeldeinformationsdatei erstellt, die auf dem darunter
/eks-hybrid/.aws/credentials
liegenden Knoten konfiguriert wird und voneks-pod-identity-agent
Pods verwendet wird.nodeadm
Diese Anmeldeinformationsdatei enthält temporäre AWS Anmeldeinformationen, die regelmäßig aktualisiert werden. -
Nachdem Sie die
nodeadm
Konfiguration auf jedem Knoten aktualisiert haben, führen Sie den folgendennodeadm init
Befehl mit Ihrem aus,nodeConfig.yaml
um Ihre Hybridknoten mit Ihrem Amazon EKS-Cluster zu verbinden. Wenn Ihre Knoten dem Cluster schon einmal beigetreten sind, führen Sie deninit
Befehl trotzdem erneut aus.nodeadm init -c file://nodeConfig.yaml
-
Installieren Sie
eks-pod-identity-agent
mit aktivierter Unterstützung für Hybridknoten, entweder über die AWS CLI oder AWS Management Console.-
AWS CLI: Führen Sie auf dem Computer, den Sie zur Verwaltung des Clusters verwenden, den folgenden Befehl aus, um die Installation
eks-pod-identity-agent
mit aktivierter Unterstützung für Hybridknoten zu installieren. Ersetzen Siemy-cluster
mit dem Namen Ihres Clusters.aws eks create-addon \ --cluster-name my-cluster \ --addon-name eks-pod-identity-agent \ --configuration-values '{"daemonsets":{"hybrid":{"create": true}}}'
-
AWS Management Console: Wenn Sie das Pod Identity Agent-Add-on über die AWS Konsole installieren, fügen Sie der optionalen Konfiguration Folgendes hinzu, um das Daemonset bereitzustellen, das auf Hybridknoten abzielt.
{"daemonsets":{"hybrid":{"create": true}}}
-
CSI-Snapshot-Controller
Ab Version v8.1.0-eksbuild.2
wendet das CSI-Snapshot-Controller-Add-on eine Soft-Anti-Affinitätsregel für Hybridknoten an und bevorzugt es, deployment
dass der Controller EC2 in derselben AWS Region wie die Amazon EKS-Steuerungsebene ausgeführt wird. Die gemeinsame Platzierung deployment
in derselben AWS Region wie die Amazon EKS-Steuerebene verbessert die Latenz.
Community-Erweiterungen
In den folgenden Abschnitten werden die Unterschiede zwischen der Ausführung kompatibler Community-Add-Ons auf Hybridknoten im Vergleich zu anderen Amazon EKS-Compute-Typen beschrieben.
Kubernetes Metrics Server
Die Steuerungsebene muss die Pod-IP des Metrics Servers (oder die Knoten-IP, wenn HostNetwork aktiviert ist) erreichen. Sofern Sie Metrics Server nicht im HostNetwork-Modus ausführen, müssen Sie daher bei der Erstellung Ihres Amazon EKS-Clusters ein Remote-Pod-Netzwerk konfigurieren und Ihre Pod-IP-Adressen routingfähig machen. Die Implementierung des Border Gateway Protocol (BGP) mit dem CNI ist eine gängige Methode, um Ihre Pod-IP-Adressen routingfähig zu machen.