5.4. インストール後のプロキシーの設定

Red Hat OpenShift Service on AWS (ROSA) クラスターを既存の Virtual Private Cloud (VPC)にインストールした後に、HTTP または HTTPS プロキシーを設定できます。Red Hat OpenShift Cluster Manager または ROSA CLI (rosa) を使用して、インストール後にプロキシーを設定できます。

5.4.1. OpenShift Cluster Manager を使用したインストール後のプロキシーの設定

Red Hat OpenShift Cluster Manager を使用して、Virtual Private Cloud (VPC) の既存の Red Hat OpenShift Service on AWS クラスターにクラスター全体のプロキシー設定を追加できます。

OpenShift Cluster Manager を使用して、既存のクラスター全体のプロキシー設定を更新することもできます。たとえば、プロキシーのネットワークアドレスを更新するか、プロキシーの認証局のいずれかが期限切れになる場合は追加の信頼バンドルを置き換える必要がある場合があります。

重要

クラスターはプロキシー設定をコントロールプレーンおよびコンピュートノードに適用します。設定の適用時に、各クラスターノードは一時的にスケジュール不可能な状態になり、そのワークロードがドレイン (解放) されます。プロセスの一環として各ノードが再起動されます。

前提条件

  • Red Hat OpenShift Service on AWS クラスターがある。
  • クラスターが VPC にデプロイされている。

手順

  1. OpenShift Cluster Manager Hybrid Cloud Console に移動し、クラスターを選択します。
  2. Networking ページの Virtual Private Cloud (VPC) セクションで、Edit cluster-wide proxy をクリックします。
  3. Edit cluster-wide proxy ページで、プロキシー設定の詳細を指定します。

    1. 次のフィールドの少なくとも 1 つに値を入力します。

      • 有効な HTTP proxy URL を指定します。
      • 有効な HTTPS proxy URL を指定します。
      • Additional trust bundle フィールドに、PEM でエンコードされた X.509 証明書バンドルを指定します。既存の信頼バンドルファイルを置き換える場合は、Replace file を選択して フィールドを表示します。このバンドルはクラスターノードの信頼済み証明書ストアに追加されます。プロキシーのアイデンティティー証明書が Red Hat Enterprise Linux CoreOS (RHCOS) 信頼バンドルからの認証局によって署名されない限り、追加の信頼バンドルファイルが必要です。

        追加のプロキシー設定が必要ではなく、追加の認証局 (CA) を必要とする MITM の透過的なプロキシーネットワークを使用する場合には、MITM CA 証明書を指定する必要があります。

        注記

        HTTP または HTTPS プロキシー URL を指定せずに追加の信頼バンドルファイルをアップロードする場合、バンドルはクラスターに設定されますが、プロキシーで使用するように設定されていません。

    2. Confirm をクリックします。

検証

  • Networking ページの Virtual Private Cloud (VPC) セクションで、クラスターのプロキシー設定が想定どおりであることを確認します。

5.4.2. CLI を使用したインストール後のプロキシーの設定

Red Hat OpenShift Service on AWS (ROSA) CLI (rosa) を使用して、Virtual Private Cloud (VPC) の既存の ROSA クラスターにクラスター全体のプロキシー設定を追加できます。

rosa を使用して、既存のクラスター全体のプロキシー設定を更新することもできます。たとえば、プロキシーのネットワークアドレスを更新するか、プロキシーの認証局のいずれかが期限切れになる場合は追加の信頼バンドルを置き換える必要がある場合があります。

重要

クラスターはプロキシー設定をコントロールプレーンおよびコンピュートノードに適用します。設定の適用時に、各クラスターノードは一時的にスケジュール不可能な状態になり、そのワークロードがドレイン (解放) されます。プロセスの一環として各ノードが再起動されます。

前提条件

  • インストールホストに、最新の ROSA (rosa) および OpenShift (oc) CLI をインストールして設定している。
  • VPC にデプロイされた ROSA クラスターがある。

手順

  • クラスター設定を編集して、クラスター全体のプロキシーの詳細を追加または更新します。

    $ rosa edit cluster \
     --cluster $CLUSTER_NAME \
     --additional-trust-bundle-file <path_to_ca_bundle_file> \ 1 2 3
     --http-proxy http://<username>:<password>@<ip>:<port> \ 4 5
     --https-proxy https://<username>:<password>@<ip>:<port> \ 6 7
      --no-proxy example.com 8
    1 4 6
    additional-trust-bundle-filehttp-proxy 引数、および https-proxy 引数はすべてオプションです。
    2
    http-proxy または https-proxy 引数を指定せずに additional-trust-bundle-file 引数を使用する場合、信頼バンドルはトラストストアに追加され、クラスターシステムの egress トラフィックの検証に使用されます。このシナリオでは、バンドルがプロキシーで使用するように設定されていません。
    3
    additional-trust-bundle-file 引数は、PEM でエンコードされた X.509 証明書のバンドルを指すファイルパスであり、これはすべて連結されています。additionalTrustBundle パラメーターは、プロキシーのアイデンティティー証明書が RHCOS 信頼バンドルからの認証局によって署名されない限り必要になります。追加のプロキシー設定が必要ではなく、追加の CA を必要とする MITM の透過的なプロキシーネットワークを使用する場合には、MITM CA 証明書を指定する必要があります。
    注記

    プロキシーまたは追加の信頼バンドル設定をクラスターで直接変更しようとしないでください。これらの変更は、ROSA CLI (rosa) または Red Hat OpenShift Cluster Manager を使用して適用する必要があります。クラスターに直接加えられた変更はすべて自動的に元に戻されます。

    5 7
    http-proxy 引数および https-proxy 引数は、有効な URL を指している必要があります。
    8
    プロキシーを除外する宛先ドメイン名、IP アドレス、またはネットワーク CIDR のコンマ区切りのリスト。

    サブドメインのみと一致するように、ドメインの前に . を付けます。たとえば、.y.comx.y.com に一致しますが、 y.com には一致しません。* を使用し、すべての宛先のプロキシーをバイパスします。インストール設定で networking.machineNetwork[].cidr フィールドで定義されるネットワークに含まれていないワーカーをスケールアップする場合、それらをこの一覧に追加し、接続の問題を防ぐ必要があります。

    httpProxy または httpsProxy フィールドのいずれも設定されていない場合に、このフィールドは無視されます。

検証

  1. マシン設定プールのステータスを一覧表示し、それらが更新されていることを確認します。

    $ oc get machineconfigpools

    出力例

    NAME     CONFIG                                             UPDATED   UPDATING   DEGRADED   MACHINECOUNT   READYMACHINECOUNT   UPDATEDMACHINECOUNT   DEGRADEDMACHINECOUNT   AGE
    master   rendered-master-d9a03f612a432095dcde6dcf44597d90   True      False      False      3              3                   3                     0                      31h
    worker   rendered-worker-f6827a4efe21e155c25c21b43c46f65e   True      False      False      6              6                   6                     0                      31h

  2. クラスターのプロキシー設定を表示し、詳細が想定通りに表示されていることを確認します。

    $ oc get proxy cluster -o yaml

    出力例

    apiVersion: config.openshift.io/v1
    kind: Proxy
    spec:
      httpProxy: http://proxy.host.domain:<port>
      httpsProxy: https://proxy.host.domain:<port>
      <...more...>
    status:
      httpProxy: http://proxy.host.domain:<port>
      httpsProxy: https://proxy.host.domain:<port>
      <...more...>