Proxy für Hybridknoten konfigurieren - Amazon EKS

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 Ihr Betriebssystem konfigurieren und kube-proxy Ihren Proxyserver verwenden. containerd kubelet Sie müssen kube-proxy nach der Erstellung Ihres Amazon EKS-Clusters die Konfiguration vornehmen. Sie können die Änderungen für Ihr Betriebssystem und dann kubelet während des Erstellungsprozesses für Ihre Betriebssystem-Images oder vor der Ausführung nodeadm init auf jedem Hybridknoten vornehmen. containerd

Konfiguration auf Knotenebene

Die Konfigurationen in diesem Abschnitt müssen in Ihren Betriebssystem-Images oder vor der Ausführung nodeadm init auf jedem Hybridknoten angewendet werden.

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 echo 'Environment="HTTP_PROXY=http://proxy-domain:port"' >> /etc/systemd/system/containerd.service.d echo 'Environment="HTTPS_PROXY=http://proxy-domain:port"' >> /etc/systemd/system/containerd.service.d echo 'Environment="NO_PROXY=localhost"' >> /etc/systemd/system/containerd.service.d 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 echo 'Environment="HTTP_PROXY=http://proxy-domain:port"' >> /etc/systemd/system/kubelet.service.d echo 'Environment="HTTPS_PROXY=http://proxy-domain:port"' >> /etc/systemd/system/kubelet.service.d echo 'Environment="NO_PROXY=localhost"' >> /etc/systemd/system/kubelet.service.d systemctl daemon-reload systemctl restart containerd

Proxykonfiguration 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 

  1. Konfigurieren Sie snap die Konfiguration für die Verwendung Ihres Proxys mit den folgenden Befehlen:

    sudo snap set system proxy.https=http://proxy-domain:port sudo snap set system proxy.http=http://proxy-domain:port
  2. Um den Proxy für zu aktivierenapt, erstellen Sie eine Datei namens apt.conf in 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 und Red Hat Enterprise Linux

  1. Konfigurieren Sie yum für die Verwendung Ihres Proxys. Erstellen Sie eine Datei /etc/yum.conf mit den Proxy-Domain- und Port-Werten für Ihre Umgebung.

    proxy=http://proxy-domain:port

Clusterweite 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.

  1. Bearbeiten Sie das kube-proxy DaemonSet mit dem folgenden Befehl

    kubectl -n kube-system edit ds kube-proxy

    Dadurch wird die kube-proxy DaemonSet Definition in Ihrem konfigurierten Editor geöffnet.

  2. Fügen Sie die Umgebungsvariablen für HTTP_PROXY und hinzuHTTPS_PROXY. Beachten Sie, dass die NODE_NAME Umgebungsvariable bereits in Ihrer Konfiguration vorhanden sein sollte. Ersetzen Sie proxy-domain und port durch 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