IBM Cloud Docs
HTTP-Proxy für Ihre Satellite-Hosts konfigurieren

HTTP-Proxy für Ihre Satellite-Hosts konfigurieren

Sie können einen HTTP-Proxy so konfigurieren, dass der gesamte ausgehende Datenverkehr von Ihren Satellite-Hosts über den Proxy weitergeleitet wird.

Die Einrichtung eines HTTP-Proxys ist nur für Konten in der Zulassungsliste verfügbar.

Welchen Standorttyp benötige ich für die Verwendung des HTTP-Proxys?

Betrachten Sie die folgenden Standorttypen.

Vorhandene RHEL-basierte Standorte
Um einen Proxy einzurichten, muss Ihr Standort für Red Hat CoreOS (RHCOS) aktiviert sein. Wenn Ihre vorhandene Position nicht RHCOS-fähig ist, können Sie keinen HTTP-Proxy konfigurieren. Erstellen Sie einen RHCOS-fähigen Standort und konfigurieren Sie anschließend Ihren HTTP-Proxy.
Vorhandene Red Hat CoreOS-fähige Positionen mit angeschlossenen Hosts
Um einen HTTP-Proxy einzurichten, müssen Sie Ihre Hosts zuerst aus Ihren Standort entfernen. Nachdem Sie Ihre Hosts entfernt haben, lesen Sie den Abschnitt HTTP-Proxy konfigurieren. Beachten Sie, dass Sie auch die Hosts aktualisieren müssen, die Ihre Standortsteuerebene bilden. Siehe Hosts der Steuerebene für Satellite-Standort aktualisieren.
Neue Red Hat CoreOS-aktivierte Positionen
Bevor Sie Ihre Hosts an Ihren Standort anhängen, konfigurieren Sie Ihren HTTP-Proxy.

Welchen Hosttyp kann ich verwenden?

Sie können RHEL oder Red Hat CoreOS-Hosts verwenden, wenn Sie einen HTTP-Proxy einrichten. Sie müssen jeden Host bearbeiten, der an Ihren Standort angeschlossen ist, einschließlich der Hosts, die die Steuerebene bilden. Denken Sie daran, http oder https in Ihre Datei proxy.conf einzuschließen.

Was muss ich noch über HTTP-Proxy wissen?

Damit Ihr Satellite-Standort und Ihre Cluster mit einem Proxy arbeiten können, muss das Kubelet auf den Infrastrukturknoten der Steuerebene, die an einem Satellite-Ort bereitgestellt werden, mit dem API-Server des IBM Cloud-Steuerebenenknotens kommunizieren können. Um diese Kommunikation zu ermöglichen, müssen Sie eine der folgenden Voraussetzungen erfüllen.

  • Option 1: Verwenden Sie das reduzierte Script zum Anhängen der Firewall.

  • Option 2: Der aktuelle Proxy kann TCP-Verbindungen mit langer Lebensdauer (TCP-Tunnelung) unterstützen.

  • Option 3: Sie können einen sekundären Proxy auf einer VSI in demselben Netz erstellen wie Ihre Satellite-Hosts, die langlebige TCP-Verbindungen unterstützen.

  • Option 4: Sie können die abgehende Firewall öffnen, um die TCP-Verbindungen zuzulassen. Weitere Informationen finden Sie unter Erforderliche abgehende Konnektivität für Hosts in allen Regionen. Suchen Sie dann die spezifischen Anforderungen für abgehende Netze für Ihre Region.

Sie können keinen HTTP-Proxy für die Kommunikation zwischen Worker und Master oder für die Verbindung zu den Paketspiegeln konfigurieren.

TCP-Tunnelung einrichten

Ihr Proxy muss mit TCP-Tunnelung eingerichtet sein. Bestimmte Schritte können je nach Provider variieren. Führen Sie die folgenden allgemeinen Schritte aus, um die TCP-Tunnelung einzurichten.

  1. Richten Sie Ihren HTTP-Proxy für die Tunnelung des Datenverkehrs für alle vier öffentlichen Serviceendpunkte Ihres Standorts ein. Um Ihre Endpunkte zu finden,

    ibmcloud sat location get --location LOCATION_NAME
    

    Suchen Sie in der Ausgabe das Feld URL des öffentlichen Serviceendpunkts. Aus diesem Feld können Sie die Endpunkte ableiten. Wenn der Feldwert beispielsweise https://c131-e.us-south.satellite.cloud.ibm.com:31726 lautet, sind die Endpunkte https://c131-1.us-south.satellite.cloud.ibm.com:31726, https://c131-2.us-south.satellite.cloud.ibm.com:31726 und https://c131-3.us-south.satellite.cloud.ibm.com:31726.

  2. Stellen Sie sicher, dass der Listener-Port auf dem HTTP-Proxy mit dem in IBM Cloudidentisch ist.

  3. Aktualisieren Sie die Datei /etc/hosts auf allen Ihren Satellite-Hosts, um die öffentlichen Serviceendpunkte des Standorts einzuschließen, die Datenverkehr nicht an die IBM Cloud-Endpunkte, sondern an den Proxy weiterleiten.

Ihre Konfiguration kann je nach Provider unterschiedlich sein. Sie sollten Ihren Proxy außerhalb der Satellite-Umgebung einrichten, um sicherzustellen, dass die Konfiguration für Ihre Infrastruktur funktioniert. Konfigurieren Sie anschließend Ihren Proxy in der Satellite-Umgebung. Weitere Informationen zum Einrichten und Konfigurieren Ihres HTTP-Proxys finden Sie im Blog Proxying In Cluster Kube-APIServer Traffic in IBM Cloud Satellite.

Zugriff auf Zulassungsliste anfordern

Um Zugriff auf die Zulassungsliste für HTTP-Proxy zu erhalten, erstellen Sie ein Ticket beim IBM Support.

Verwenden Sie beispielsweise die folgende Anfrage als Vorlage.

Title: Request for addition of HTTP_PROXY config to
       location <LOCATION_ID>

Request Body:
We are requesting the following HTTP_PROXY info be added to
the location_ID listed in the title of this ticket.

Use the following HTTP_PROXY info
BE SURE to include the protocol (http:// or https://)
AND the port (`:PORT_NUMBER`) in the endpoint.


HTTP_PROXY: https://my-proxy-endpoint.com:PORT_NUMBER
HTTPS_PROXY: https://my-proxy-endpoint.com:PORT_NUMBER

Nachdem der Support das Ticket verarbeitet hat, erhalten Sie eine Benachrichtigung über die Aktualisierung Ihres Standorts. Wenn eine Änderung erforderlich ist, muss ein neues Ticket mit den neuen Parametern geöffnet werden. Um Ihre LOCATIONID zu finden, führen Sie ibmcloud sat locations aus.

HTTP-Proxy konfigurieren

Um einen HTTP-Proxy zu konfigurieren, müssen Sie jeden Ihrer Hosts bearbeiten, einschließlich der Hosts in der Steuerebene. Wenn Ihre Hosts bereits an einen Standort angehängt sind, also auch an die Hosts, aus denen die Steuerebene besteht, müssen Sie sie aus dem Standort entfernen, bevor Sie sie bearbeiten können. Nachdem Sie den Proxy konfiguriert haben, hängen Sie Ihre Hosts erneut an den Standort an. Weitere Informationen zum Aktualisieren der Steuerebenenhosts finden Sie unter Satellite-Positionssteuerebenenhosts aktualisieren.

  1. Wählen Sie eine Spiegelposition aus, die Sie für einen Proxy verwenden wollen. Dieser Spiegelungsstandort wird beim Einrichten des Proxys verwendet.

  2. Suchen Sie den Wert für NO_PROXY.

    • Verwenden Sie als Host der Steuerebene 172.20.0.1 für RHCOS und NO_PROXY=172.20.0.1,$<REDHAT_PACKAGE_MIRROR_LOCATION> für RHEL.

    • Bei Red Hat OpenShift-Hosts müssen die NO_PROXY for Red Hat OpenShift-Hosts die erste IP des Serviceteilnetzes enthalten, das für den Red Hat OpenShift-Cluster verwendet wird. Führen Sie den Befehl cluster get aus, um diese IP zu finden.

      ibmcloud ks cluster get --cluster <ClusterID>
      

      Beispielausgabe

      Name:                           hyp-20220306-1-d2   
      ID:                             <ClusterID>  
      ...
      Service Subnet:                 172.21.0.0/16
      ...
      

      Beachten Sie bei dieser Ausgabe, dass die erste IP-Adresse 172.21.0.1 ist. Dadurch wird die vollständige Ausgabe für Hosts erstellt, die diesem speziellen Cluster in diesem Beispiel NO_PROXY=172.20.0.1,172.21.0.1,$REDHAT_PACKAGE_MIRROR_LOCATION für RHEL-Hosts und NO_PROXY=172.20.0.1,172.21.0.1,.REGION.satellite.appdomain.cloud für RHCOS-Hosts zugeordnet sind. Beispiel: NO_PROXY=172.20.0.1,172.21.0.1,.eu-gb.satellite.appdomain.cloud ist für eine Spiegelposition in London für RHCOS-Hosts korrekt. Beachten Sie, dass der RHCOS-Wert . vor der Region enthält.

      Der gesamte Datenverkehr von dem Workerknoten zu Cluster-Services muss in NO_PROXY eingeschlossen werden. Um beispielsweise den Image-Registry-Service zum Speichern von Images zu verwenden, fügen Sie image-registry.openshift-image-registry.svc zu NO_PROXY für jeden Workerknoten hinzu. Dieser Wert muss nicht für die Steuerebene eingeschlossen werden.

  3. Navigieren Sie auf Ihrem Host zu /etc/systemd/system.conf.d. Ist diese Datei nicht vorhanden, erstellen Sie sie mit dem folgenden Befehl. Geben Sie <VALUE> für NO_PROXY aus Schritt 2 ein.

    mkdir -p /etc/systemd/system.conf.d
    cat >"/etc/systemd/system.conf.d/proxy.conf" <<EOF
    [Manager]
    DefaultEnvironment="HTTP_PROXY=https://my-proxy-endpoint.com:PORT_NUMBER" "HTTPS_PROXY=https://my-proxy-endpoint.com:PORT_NUMBER" "NO_PROXY=<VALUE>"
    EOF
    chmod 0644 /etc/systemd/system.conf.d/proxy.conf
    
  4. Erstellen Sie die Datei ibm-proxy.sh, indem Sie den folgenden Befehl ausführen. Geben Sie <VALUE> für NO_PROXY aus Schritt 2 ein.

    mkdir -p /etc/profile.d
    cat >"/etc/profile.d/ibm-proxy.sh" <<EOF
    #!/usr/bin/env bash
    HTTP_PROXY="https://my-proxy-endpoint.com:PORT_NUMBER"
    HTTPS_PROXY="https://my-proxy-endpoint.com:PORT_NUMBER"
    NO_PROXY="<VALUE>"
    export HTTP_PROXY
    export HTTPS_PROXY
    export NO_PROXY
    EOF
    chmod 0755 /etc/profile.d/ibm-proxy.sh
    
  5. Starten Sie Ihren Host neu, um diese Änderung zu übernehmen.

  6. Führen Sie für Ihren Host eine Zuordnung oder erneute Zuordnung zum Standort aus.

  7. Ordnen Sie den Host wieder der Steuerebene oder dem Service zu, wo er zuvor zugeordnet wurde.

  8. Wiederholen Sie diese Schritte für jeden Host.

Der Wert für REDHAT_PACKAGE_MIRROR_LOCATION hängt vom Standort der Red Hat-Paketspiegel ab. Bei REDHAT_PACKAGE_MIRROR_LOCATION kann es sich um ein Platzhalterzeichen handeln, wenn mehrere Spiegel verwendet werden. Weitere Informationen finden Sie unter Systemweiten Proxy anwenden.

Allgemeine Standorte für Spiegelungen

Die folgende Liste enthält einige allgemeine Spiegelungsstandorte.

Azure
separat definieren: rhui-1.microsoft.com, rhui-2.microsoft.com, rhui-3.microsoft.com
/etc/yum.repos.d/rh-cloud.repo unter baseurl
Google Cloud Provider
cds.rhel.updates.googlecloud.com
/etc/yum.repos.d/rh-cloud.repo unter mirrorlist
Amazon-Web-Service
Platzhalter: aws.ce.redhat.com
rhui3.REGION.aws.ce.redhat.com
/etc/yum.repos.d/redhat-rhui.repo unter mirrorlist
IBM Cloud
Platzhalter: service.networklayer.com
dal10: rhncapdal1001.service.networklayer.com
/etc/yum.repos.d/redhat.repo unter baseurl