17.5. ネットワークロードバランサーを使用した AWS での ingress クラスタートラフィックの設定

OpenShift Container Platform は、クラスター内で実行されるサービスを使ってクラスター外からの通信を可能にする方法を提供します。この方法では、クライアントの IP アドレスをノードに転送する Network Load Balancer (NLB) を使用します。NLB を新規または既存の AWS クラスターに設定することができます。

17.5.1. Ingress コントローラー Classic ロードバランサーをネットワークロードバランサーに置き換える

Classic Load Balancer(CLB)を使用する Ingress コントローラーは、AWS で Network Load Balancer(NLB)を使用するものに置き換えることができます。

警告

この手順では、新規 DNS レコードの伝播、新規ロードバランサーのプロビジョニング、およびその他の要因により、過去に数分かかることが予想されます。Ingress コントローラーロードバランサーの IP アドレスおよび正規名は、この手順の適用後に変更される可能性があります。

手順

  1. 新規のデフォルト Ingress コントローラーでファイルを作成します。以下の例では、デフォルトの Ingress コントローラーに External スコープがあり、他のカスタマイズがないことを前提としています。

    ingresscontroller.yml ファイルの例

    apiVersion: operator.openshift.io/v1
    kind: IngressController
    metadata:
      creationTimestamp: null
      name: default
      namespace: openshift-ingress-operator
    spec:
      endpointPublishingStrategy:
        loadBalancer:
          scope: External
          providerParameters:
            type: AWS
            aws:
              type: NLB
        type: LoadBalancerService

    デフォルト Ingress コントローラーに他のカスタマイズがある場合、ファイルを適宜変更するようにしてください。

  2. Ingress コントローラー YAML ファイルを強制的に置き換えます。

    $ oc replace --force --wait -f ingresscontroller.yml

    Ingress コントローラーが置き換えられるまで待機します。サーバー停止時間(停止時間)が想定されます。