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.
Proxy für Hybridknoten konfigurieren
Wenn Sie in Ihrer lokalen Umgebung einen Proxyserver für den Datenverkehr verwenden, der Ihr Rechenzentrum oder Ihre Edge-Umgebung verlässt, müssen Sie Ihre Knoten und Ihren Cluster für die Verwendung Ihres Proxyservers separat konfigurieren.
- Cluster
-
In Ihrem Cluster müssen Sie die Verwendung Ihres Proxyservers konfigurieren
kube-proxy. Sie müssenkube-proxynach der Erstellung Ihres Amazon EKS-Clusters die Konfiguration vornehmen. - Knoten
-
Auf Ihren Knoten müssen Sie das Betriebssystem,
containerdkubelet, und den Amazon SSM-Agenten für die Verwendung Ihres Proxyservers konfigurieren. Sie können diese Änderungen während des Erstellungsprozesses für Ihre Betriebssystem-Images oder vor der Ausführungnodeadm initauf jedem Hybridknoten vornehmen.
Konfiguration auf Knotenebene
Sie müssen die folgenden Konfigurationen entweder in Ihren Betriebssystem-Images oder vor der Ausführung nodeadm init auf jedem Hybridknoten anwenden.
containerdProxy-Konfiguration
containerdist die Standard-Container-Verwaltungslaufzeit für Kubernetes. Wenn Sie einen Proxy für den Internetzugang verwenden, müssen Sie ihn containerd so konfigurieren, dass er die von Kubernetes und Amazon EKS benötigten Container-Images abrufen kann.
Erstellen Sie auf jedem im /etc/systemd/system/containerd.service.d Verzeichnis http-proxy.conf aufgerufenen Hybridknoten eine Datei mit dem folgenden Inhalt. Ersetzen Sie proxy-domain und port durch die Werte für Ihre Umgebung.
[Service] Environment="HTTP_PROXY=http://proxy-domain:port" Environment="HTTPS_PROXY=http://proxy-domain:port" Environment="NO_PROXY=localhost"
containerdKonfiguration anhand von Benutzerdaten
Das containerd.service.d Verzeichnis muss für diese Datei erstellt werden. Sie müssen Systemd neu laden, um die Konfigurationsdatei ohne Neustart abzurufen. In AL2 023 wird der Dienst wahrscheinlich bereits laufen, wenn Ihr Skript ausgeführt wird, sodass Sie ihn ebenfalls neu starten müssen.
mkdir -p /etc/systemd/system/containerd.service.d echo '[Service]' > /etc/systemd/system/containerd.service.d/http-proxy.conf echo 'Environment="HTTP_PROXY=http://proxy-domain:port"' >> /etc/systemd/system/containerd.service.d/http-proxy.conf echo 'Environment="HTTPS_PROXY=http://proxy-domain:port"' >> /etc/systemd/system/containerd.service.d/http-proxy.conf echo 'Environment="NO_PROXY=localhost"' >> /etc/systemd/system/containerd.service.d/http-proxy.conf systemctl daemon-reload systemctl restart containerd
kubeletProxy-Konfiguration
kubeletist der Kubernetes-Knotenagent, der auf jedem Kubernetes-Knoten ausgeführt wird und für die Verwaltung des Nodes und der darauf laufenden Pods verantwortlich ist. Wenn Sie einen Proxy in Ihrer lokalen Umgebung verwenden, müssen Sie ihn kubelet so konfigurieren, dass er mit den öffentlichen oder privaten Endpunkten Ihres Amazon EKS-Clusters kommunizieren kann.
Erstellen Sie auf jedem im /etc/systemd/system/kubelet.service.d/ Verzeichnis http-proxy.conf aufgerufenen Hybridknoten eine Datei mit dem folgenden Inhalt. Ersetzen Sie proxy-domain und port durch die Werte für Ihre Umgebung.
[Service] Environment="HTTP_PROXY=http://proxy-domain:port" Environment="HTTPS_PROXY=http://proxy-domain:port" Environment="NO_PROXY=localhost"
kubeletKonfiguration anhand von Benutzerdaten
Das kubelet.service.d Verzeichnis muss für diese Datei erstellt werden. Sie müssen Systemd neu laden, um die Konfigurationsdatei ohne Neustart abzurufen. In AL2 023 wird der Dienst wahrscheinlich bereits laufen, wenn Ihr Skript ausgeführt wird, sodass Sie ihn ebenfalls neu starten müssen.
mkdir -p /etc/systemd/system/kubelet.service.d echo '[Service]' > /etc/systemd/system/kubelet.service.d/http-proxy.conf echo 'Environment="HTTP_PROXY=http://proxy-domain:port"' >> /etc/systemd/system/kubelet.service.d/http-proxy.conf echo 'Environment="HTTPS_PROXY=http://proxy-domain:port"' >> /etc/systemd/system/kubelet.service.d/http-proxy.conf echo 'Environment="NO_PROXY=localhost"' >> /etc/systemd/system/kubelet.service.d/http-proxy.conf systemctl daemon-reload systemctl restart kubelet
ssmProxy-Konfiguration
ssmist einer der Anbieter von Anmeldeinformationen, mit denen ein Hybridknoten initialisiert werden kann. ssmist verantwortlich für die Authentifizierung AWS und Generierung temporärer Anmeldeinformationen, die von verwendet werden. kubelet Wenn Sie einen Proxy in Ihrer lokalen Umgebung verwenden und ihn ssm als Ihren Anmeldeinformationsanbieter auf dem Knoten verwenden, müssen Sie ihn ssm so konfigurieren, dass er mit Amazon SSM-Serviceendpunkten kommunizieren kann.
Erstellen Sie je nach Betriebssystem auf jedem Hybridknoten, der http-proxy.conf im folgenden Pfad aufgerufen wird, eine Datei
-
Ubuntu -
/etc/systemd/system/snap.amazon-ssm-agent.amazon-ssm-agent.service.d/http-proxy.conf -
Amazon Linux 2023 und Red Hat Enterprise Linux -
/etc/systemd/system/amazon-ssm-agent.service.d/http-proxy.conf
Füllen Sie die Datei mit dem folgenden Inhalt. Ersetzen Sie proxy-domain und port durch die Werte für Ihre Umgebung.
[Service] Environment="HTTP_PROXY=http://proxy-domain:port" Environment="HTTPS_PROXY=http://proxy-domain:port" Environment="NO_PROXY=localhost"
ssmKonfiguration anhand von Benutzerdaten
Das ssm Systemd-Dienstdateiverzeichnis muss für diese Datei erstellt werden. Der Verzeichnispfad hängt vom Betriebssystem ab, das auf dem Knoten verwendet wird.
-
Ubuntu -
/etc/systemd/system/snap.amazon-ssm-agent.amazon-ssm-agent.service.d -
Amazon Linux 2023 und Red Hat Enterprise Linux -
/etc/systemd/system/amazon-ssm-agent.service.d
Ersetzen Sie den Dienstnamen systemd im nachfolgenden Restart-Befehl, je nachdem, welches Betriebssystem auf dem Knoten verwendet wird
-
Ubuntu -
snap.amazon-ssm-agent.amazon-ssm-agent -
Amazon Linux 2023 und Red Hat Enterprise Linux -
amazon-ssm-agent
mkdir -psystemd-service-file-directory echo '[Service]' > [.replaceable]#systemd-service-file-directory/http-proxy.conf echo 'Environment="HTTP_PROXY=http://[.replaceable]#proxy-domain:port"' >>systemd-service-file-directory/http-proxy.conf echo 'Environment="HTTPS_PROXY=http://[.replaceable]#proxy-domain:port"' >> [.replaceable]#systemd-service-file-directory/http-proxy.conf echo 'Environment="NO_PROXY=localhost"' >> [.replaceable]#systemd-service-file-directory/http-proxy.conf systemctl daemon-reload systemctl restart [.replaceable]#systemd-service-name
Proxy-Konfiguration des Betriebssystems
Wenn Sie einen Proxy für den Internetzugang verwenden, müssen Sie Ihr Betriebssystem so konfigurieren, dass es die Abhängigkeiten der Hybridknoten aus dem Paketmanager Ihres Betriebssystems abrufen kann.
Ubuntu
-
Konfigurieren Sie
snapdie Konfiguration für die Verwendung Ihres Proxys mit den folgenden Befehlen:sudo snap set system proxy.https=http://proxy-domain:portsudo snap set system proxy.http=http://proxy-domain:port -
Um den Proxy für zu aktivieren
apt, erstellen Sie eine Datei namensapt.confin dem/etc/apt/Verzeichnis. Ersetzen Sie proxy-domain und port durch die Werte für Ihre Umgebung.Acquire::http::Proxy "http://proxy-domain:port"; Acquire::https::Proxy "http://proxy-domain:port";
Amazon Linux 2023
-
Konfigurieren Sie für
dnfdie Verwendung Ihres Proxys. Erstellen Sie eine Datei/etc/dnf/dnf.confmit den Proxy-Domain- und Port-Werten für Ihre Umgebung.proxy=http://proxy-domain:port
Red Hat Enterprise Linux
-
Konfigurieren Sie für
yumdie Verwendung Ihres Proxys. Erstellen Sie eine Datei/etc/yum.confmit den Proxy-Domain- und Port-Werten für Ihre Umgebung.proxy=http://proxy-domain:port
Proxykonfiguration von IAM Roles Anywhere
Der IAM Roles Anywhere-Anmeldeinformationsanbieterdienst ist für die Aktualisierung der Anmeldeinformationen verantwortlich, wenn IAM Roles Anywhere mit dem enableCredentialsFile Flag verwendet wird (siehe). EKS Pod Identity Agent Wenn Sie in Ihrer lokalen Umgebung einen Proxy verwenden, müssen Sie den Dienst so konfigurieren, dass er mit IAM Roles Anywhere-Endpunkten kommunizieren kann.
Erstellen Sie eine Datei namens http-proxy.conf in dem /etc/systemd/system/aws_signing_helper_update.service.d/ Verzeichnis mit dem folgenden Inhalt. Ersetzen Sie proxy-domain und port durch die Werte für Ihre Umgebung.
[Service] Environment="HTTP_PROXY=http://proxy-domain:port" Environment="HTTPS_PROXY=http://proxy-domain:port" Environment="NO_PROXY=localhost"
Cluster-weite Konfiguration
Die Konfigurationen in diesem Abschnitt müssen nach der Erstellung Ihres Amazon EKS-Clusters und vor der Ausführung nodeadm init auf jedem Hybridknoten angewendet werden.
Kube-Proxy-Proxy-Konfiguration
Amazon EKS wird automatisch kube-proxy auf jedem Hybridknoten installiert DaemonSet , wenn Ihre Hybridknoten dem Cluster beitreten. kube-proxyermöglicht das Routing zwischen Services, die von Pods auf Amazon EKS-Clustern unterstützt werden. Um jeden Host zu konfigurieren, kube-proxy ist eine DNS-Auflösung für Ihren Amazon EKS-Cluster-Endpunkt erforderlich.
-
Bearbeiten Sie das
kube-proxyDaemonSet mit dem folgenden Befehlkubectl -n kube-system edit ds kube-proxyDadurch wird die
kube-proxyDaemonSet Definition in Ihrem konfigurierten Editor geöffnet. -
Fügen Sie die Umgebungsvariablen für
HTTP_PROXYund hinzuHTTPS_PROXY. Beachten Sie, dass dieNODE_NAMEUmgebungsvariable bereits in Ihrer Konfiguration vorhanden sein sollte. Ersetzen Sieproxy-domainundportdurch Werte für Ihre Umgebung.containers: - command: - kube-proxy - --v=2 - --config=/var/lib/kube-proxy-config/config - --hostname-override=$(NODE_NAME) env: - name: HTTP_PROXY value: http://proxy-domain:port- name: HTTPS_PROXY value: http://proxy-domain:port- name: NODE_NAME valueFrom: fieldRef: apiVersion: v1 fieldPath: spec.nodeName