17.2. ファイアウォールの設定

ファイアウォールを使用する場合、OpenShift Container Platform が機能するために必要なサイトにアクセスできるように設定する必要があります。一部のサイトにはアクセスを常に付与し、クラスターをホストするために Red Hat Insights、Telemetry サービス、クラウドを使用したり、特定のビルドストラテジーをホストする場合に追加のアクセスを付与する必要があります。

17.2.1. OpenShift Container Platform のファイアウォールの設定

OpenShift Container Platform をインストールする前に、ファイアウォールを、OpenShift Container Platform が必要とするサイトへのアクセスを付与するように設定する必要があります。

コントローラーノードのみで実行されるサービスとワーカーノードで実行されるサービスの設定に関する特別な考慮事項はありません。

手順

  1. 以下のレジストリー URL を許可リストに指定します。

    URLポート関数

    registry.redhat.io

    443, 80

    コアコンテナーイメージを指定します。

    quay.io

    443, 80

    コアコンテナーイメージを指定します。

    *.quay.io

    443, 80

    コアコンテナーイメージを指定します。

    sso.redhat.com

    443, 80

    https://console.redhat.com/openshift サイトは、sso.redhat.com からの認証を使用します。

    openshift.org

    443, 80

    Red Hat Enterprise Linux CoreOS (RHCOS) イメージを提供します。

    quay.io などのサイトを許可リストに追加するには、*.quay.io などのワイルドカードエントリーを拒否リストに加えないでください。ほとんどの場合、イメージレジストリーはコンテンツ配信ネットワーク (CDN) を使用してイメージを提供します。ファイアウォールでアクセスがブロックされた場合に、最初のダウンロード要求が cdn01.quay.io などのホスト名にリダイレクトされた時点で、イメージのダウンロードが拒否されます。

    cdn01.quay.io などの CDN ホスト名は、許可リストに *.quay.io などのワイルドカードエントリーを追加すると、そちらで対応されます。

  2. ビルドに必要な言語またはフレームワークのリソースを提供するサイトを許可リストに指定します。
  3. Telemetry を無効にしていない場合は、以下の URL へのアクセスを許可して Red Hat Insights にアクセスできるようにする必要があります。

    URLポート関数

    cert-api.access.redhat.com

    443, 80

    Telemetry で必須

    api.access.redhat.com

    443, 80

    Telemetry で必須

    infogw.api.openshift.com

    443, 80

    Telemetry で必須

    console.redhat.com/api/ingress

    443, 80

    Telemetry および insights-operator で必須

  4. Amazon Web Services (AWS) 、Microsoft Azure、または Google Cloud Platform (GCP) を使用してクラスターをホストする場合、クラウドプロバイダー API およびそのクラウドの DNS を提供する URL へのアクセスを付与する必要があります。

    クラウドURLポート関数

    AWS

    *.amazonaws.com

    443, 80

    AWS サービスおよびリソースへのアクセスに必要です。AWS ドキュメントの「AWS Service Endpoints」を参照し、使用するリージョンを許可するエンドポイントを判別します。

    oso-rhc4tp-docker-registry.s3-us-west-2.amazonaws.com

    443, 80

    厳密なセキュリティー要件を適用する際に AWS サービスおよびリソースにアクセスするために必要です。AWS ドキュメントの「AWS Service Endpoints」を参照し、使用するリージョンを許可するエンドポイントを判別します。

    GCP

    *.googleapis.com

    443, 80

    GCP サービスおよびリソースへのアクセスに必要です。GCP ドキュメントの「 Cloud Endpoints」を参照し、API を許可するエンドポイントを判別します。

    accounts.google.com

    443, 80

    GCP アカウントへのアクセスに必要です。

    Azure

    management.azure.com

    443, 80

    Azure サービスおよびリソースへのアクセスに必要です。Azure ドキュメントで「Azure REST API Reference」を参照し、API を許可するエンドポイントを判別します。

  5. 以下の URL を許可リストに指定します。

    URLポート関数

    mirror.openshift.com

    443, 80

    ミラーリングされたインストールのコンテンツおよびイメージへのアクセスに必要。Cluster Version Operator には単一の機能ソースのみが必要ですが、このサイトはリリースイメージ署名のソースでもあります。

    storage.googleapis.com/openshift-release

    443, 80

    リリースイメージ署名のソース (ただし、Cluster Version Operator には単一の機能ソースのみが必要)。

    *.apps.<cluster_name>.<base_domain>

    443, 80

    Ingress ワイルドカードをインストール時に設定しない限り、デフォルトのクラスタールートへのアクセスに必要。

    quay-registry.s3.amazonaws.com

    443, 80

    AWS で Quay イメージコンテンツにアクセスするために必要。

    api.openshift.com

    443, 80

    クラスタートークンの両方が必要であり、クラスターに更新が利用可能かどうかを確認するために必要です。

    art-rhcos-ci.s3.amazonaws.com

    443, 80

    Red Hat Enterprise Linux CoreOS (RHCOS) イメージをダウンロードするために必要。

    console.redhat.com/openshift

    443, 80

    クラスタートークンに必須

    registry.access.redhat.com

    443, 80

    odo CLI に必須

    Operator にはヘルスチェックを実行するためのルートアクセスが必要です。具体的には、認証および Web コンソール Operator は 2 つのルートに接続し、ルートが機能することを確認します。クラスター管理者として操作を実行しており、*.apps.<cluster_name>.<base_domain> を許可しない場合は、これらのルートを許可します。

    • oauth-openshift.apps.<cluster_name>.<base_domain>
    • console-openshift-console.apps.<cluster_name>.<base_domain>、またはフィールドが空でない場合に consoles.operator/cluster オブジェクトの spec.route.hostname フィールドに指定されるホスト名。
  6. デフォルトの Red Hat Network Time Protocol (NTP) サーバーを使用する場合は、以下の URL を許可します。

    • 1.rhel.pool.ntp.org
    • 2.rhel.pool.ntp.org
    • 3.rhel.pool.ntp.org
注記

デフォルトの Red Hat NTP サーバーを使用しない場合は、プラットフォームの NTP サーバーを確認し、ファイアウォールでこれを許可します。