プロキシー認証の構成

ネットワークが quay.io やデータ・ソースなどのサイトに接続するためにプロキシーを必要とする場合、プロキシー・サーバーを使用するように Kubernetes k3s 環境および Edge Gateway インスタンスを構成できます。 認証が必要な場合は、プロキシー・サーバーの設定 (DNS 名、IP アドレス、アカウント名など) を知っておく必要があります。

プロキシサーバーは、 HTTP とSTOMPの両方のプロトコルをサポートしている必要があります。

1 つのコンポーネントでプロキシー・サーバーへの接続を構成しても、その接続は他のコンポーネントでは構成されません。 プロキシー設定を構成する場合は、以下のコンポーネントを個別に構成する必要があります。
  • Kubernetes k3s 環境。
  • Edge Gatewayの各インスタンス。
  • プロキシー・サーバーへの接続を必要とする各データ・ソース。

このタスクを完了するには、 sudo を使用する必要があります。 appadmin ユーザーとしてログインし、以下のステップを実行して Kubernetes k3s 環境を構成します。

  1. Edge Gatewayをホストするシステムで、ファイル /etc/systemd/system/k3s.service.env を編集し、以下の環境変数を設定します。
    HTTP_PROXY=<proxy>
    HTTPS_PROXY=<proxy info>
    NO_PROXY=<localhost and other IPs that do not need proxy>

    <proxy info> のフォーマットは、 http://<user>:<password>@<domain or IP address>:<port> です。 <user><password> は、 URL エンコードされた文字列です。

    例:
    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
    以下の例は、ユーザー名が user1 、パスワードが 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
    注: HTTP_PROXYとHTTPS_PROXYはリダイレクトなので、HTTPS_PROXYで HTTPS のトラフィックを HTTP URL にリダイレクトすることができます。
  2. PEM エンコードの証明書を /etc/pki/ca-trust/source/anchors に追加してから次のコマンドを実行することで、プロキシー自体からの CA 証明書を信頼するようにシステムの cacert を更新します。
    sudo update-ca-trust
  3. Kubernetes K3s を再始動します。
    sudo systemctl restart k3s
  4. 再始動が完了したら、以下のコマンドを入力して、すべてのシステム・コンテナーをリストします。 それらの状況が Running または Completed であることを確認します。
    sudo kubectl get pods -n kube-system
重要: Edge Gatewayプラットフォームの間でプロキシー・サーバーを使用する場合は、 --https-proxy-url オプションを使用してください。 HTTP プロキシーおよび HTTPS プロキシーが同じである場合、--https-from-http--http-proxy-url と共に使用できます。 --http-proxy-url は単独ではサポートされていません。

Edge Gatewayプラットフォームの間で --no-proxy オプションを使用する場合は、 app.config ファイルでホストとして指定されている完全修飾ドメイン名 (FQDN) または IP アドレスを指定します。 ワイルドカードおよび IP アドレス範囲は、 Edge Gatewayプラットフォームの間でのみサポートされません。

Edge Gatewayの各インスタンスのプロキシー設定を構成するには、以下の手順を実行します。 プロキシー・サーバーへの接続を構成する前に、 Edge Gateway をペアにする必要があります。
  • Edge Gatewayインストールした 場合は、以下のコマンドを使用して、プロキシーを介して接続するように Edge Gateway を構成できます。
    manageAppHost proxy --http-proxy-url <http://URL:port# of proxy>
    プロキシー認証が必要な場合は、代わりに次のコマンドを入力します。 プロキシー・パスワードを求めるプロンプトが表示されます。
    manageAppHost proxy --http-proxy-url <http://URL:port# of proxy> --proxy-user <user>

    システム上に複数のペアの Edge Gateway がある場合は、構成する Edge Gateway を選択するように求めるプロンプトが出されます。

  • Edge Gatewayインストールしていない 場合は、以下のようにプロキシー設定を入力できます。
    manageAppHost install --http-proxy-url <http://URL:port# of proxy>
    プロキシー認証が必要な場合は、代わりに次のコマンドを入力します。プロキシー・パスワードを求めるプロンプトが表示されます。
    manageAppHost install --http-proxy-url <http://URL:port# of proxy> --proxy-user <user>
プロキシー設定をクリアする必要がある場合、次のコマンドを使用します。
manageAppHost proxy --clear