Konfigurowanie uwierzytelniania proxy

Istnieje możliwość skonfigurowania środowiska Kubernetes k3s oraz instancji produktu Edge Gateway do korzystania z serwera proxy, gdy sieć wymaga serwera proxy do łączenia się z ośrodkami, takimi jak quay.io i źródła danych. Jeśli uwierzytelnianie jest wymagane, należy znać ustawienia serwera proxy, takie jak nazwa DNS, adres IP i nazwa konta.

Serwer proxy musi obsługiwać zarówno protokoły HTTP, jak i STOMP.

Skonfigurowanie połączenia z serwerem proxy dla jednego komponentu nie konfiguruje go dla żadnego innego komponentu. Konfigurując ustawienia proxy, należy skonfigurować osobno następujące komponenty:
  • Środowisko Kubernetes k3s .
  • Każda instancja produktu Edge Gateway.
  • Każde źródło danych, które wymaga połączenia z serwerem proxy.

Aby wykonać to zadanie, należy użyć programu sudo . Aby skonfigurować środowisko Kubernetes k3s , zaloguj się jako użytkownik produktu appadmin i wykonaj następujące kroki:

  1. W systemie, w którym znajduje się Edge Gateway, zmodyfikuj plik /etc/systemd/system/k3s.service.env i ustaw następujące zmienne środowiskowe:
    HTTP_PROXY=<proxy>
    HTTPS_PROXY=<proxy info>
    NO_PROXY=<localhost and other IPs that do not need proxy>

    The <proxy info> format is http://<user>:<password>@<domain or IP address>:<port> where <user> and <password> are URL encoded strings.

    Na przykład:
    HTTP_PROXY=http://proxy.corp.com:8080
    HTTPS_PROXY=http://proxy.corp.com:8080
    NO_PROXY=localhost,127.0.0.1,localaddress,corp.com,10.0.0.0/8
    W poniższym przykładzie przedstawiono uwierzytelnianie proxy przy założeniu, że nazwa użytkownika to user1 , a hasło to p@ssword:
    HTTP_PROXY=http://user1:p%40ssword@proxy.corp.com:8080 &&
    HTTPS_PROXY=http://user1:p%40ssword@proxy.corp.com:8080 &&
    NO_PROXY=localhost,127.0.0.1,localaddress,corp.com,10.0.0.0/8
    Uwaga: HTTP_PROXY i HTTPS_PROXY są przekierowaniami, dzięki czemu możliwe jest przekierowanie ruchu HTTPS HTTPS_PROXY na adres URL HTTP.
  2. Zaktualizuj cacerts systemu, aby zaufał certyfikatowi CA z samego serwera proxy, dodając certyfikat w kodowaniu PEM do produktu /etc/pki/ca-trust/source/anchors, a następnie uruchom komendę:
    sudo update-ca-trust
  3. Zrestartuj Kubernetes K3s: .
    sudo systemctl restart k3s
  4. Po zakończeniu restartu wprowadź następującą komendę, aby wyświetlić listę wszystkich kontenerów systemowych. Sprawdź, czy ich status to Running lub Completed.
    sudo kubectl get pods -n kube-system
Ważne: Jeśli używany jest serwer proxy między serwerem Edge Gateway i platformą, należy użyć opcji --https-proxy-url . Produktu --https-from-http można używać z produktem --http-proxy-url , jeśli proxy HTTP i HTTPS są takie same. Sam --http-proxy-url nie jest obsługiwany.

Jeśli używana jest opcja --no-proxy między Edge Gateway a platformą, należy podać pełną nazwę domeny (FQDN) lub adres IP określony jako host w pliku app.config . Znaki wieloznaczne i zakresy adresów IP nie są obsługiwane tylko między Edge Gateway i platformą.

Aby skonfigurować ustawienia proxy dla każdej instancji Edge Gateway, należy wykonać następujące czynności. Przed skonfigurowaniem połączenia z serwerem proxy należy utworzyć parę Edge Gateway .
  • Jeśli zainstalowano Edge Gateway, można skonfigurować Edge Gateway do łączenia się za pośrednictwem serwera proxy przy użyciu następującej komendy.
    manageAppHost proxy --http-proxy-url <http://URL:port# of proxy>
    Jeśli uwierzytelnianie proxy jest wymagane, wprowadź następującą komendę. Zostanie wyświetlone zapytanie o hasło serwera proxy.
    manageAppHost proxy --http-proxy-url <http://URL:port# of proxy> --proxy-user <user>

    Jeśli w systemie istnieje wiele sparowanych Edge Gateway , zostanie wyświetlona prośba o wybranie Edge Gateway do skonfigurowania.

  • Jeśli nie zainstalowano Edge Gateway, można wprowadzić ustawienia proxy w następujący sposób:
    manageAppHost install --http-proxy-url <http://URL:port# of proxy>
    Jeśli uwierzytelnianie proxy jest wymagane, wprowadź następującą komendę: zostanie wyświetlona prośba o podanie hasła proxy:
    manageAppHost install --http-proxy-url <http://URL:port# of proxy> --proxy-user <user>
Aby usunąć ustawienie proxy, należy użyć następującej komendy:
manageAppHost proxy --clear