23.9. ロードバランサーの許可された送信元範囲を使用した Ingress クラスタートラフィックの設定
IngressController
の IP アドレス範囲の一覧を指定できます。endpointPublishingStrategy
が LoadBalancerService
の場合、これにより、ロードバランサーサービスへのアクセスが制限されます。
23.9.1. ロードバランサーの許可されるソース範囲の設定
spec.endpointPublishingStrategy.loadBalancer.allowedSourceRanges
フィールドを有効にして設定できます。ロードバランサーの許可されるソース範囲を設定することで、Ingress Contoller のロードバランサーへのアクセスを、指定された IP アドレス範囲のリストに制限できます。Ingress Operator はロードバランサー Service を調整し、AllowedSourceRanges
に基づいて spec.loadBalancerSourceRanges
フィールドを設定します。
以前のバージョンの OpenShift Container Platform で spec.loadBalancerSourceRanges
フィールドまたはロードバランサーサービスアノテーション service.beta.kubernetes.io/load-balancer-source-ranges
をすでに設定している場合、Ingress Controller はアップグレード後に Progressing=True
のレポートを開始します。.これを修正するには、spec.loadBalancerSourceRanges
フィールドを上書きし、service.beta.kubernetes.io/load-balancer-source-ranges
アノテーションをクリアする AllowedSourceRanges
を設定します。Ingress Controller は、再び Progressing=False
の報告を開始します。
前提条件
- 実行中のクラスターにデプロイされた Ingress Controller があります。
手順
次のコマンドを実行して、Ingress Controller の許可されるソース範囲 API を設定します。
$ oc -n openshift-ingress-operator patch ingresscontroller/default \ --type=merge --patch='{"spec":{"endpointPublishingStrategy": \ {"type":"LoadBalancerService", "loadbalancer": \ {"scope":"External", "allowedSourceRanges":["0.0.0.0/0"]}}}}' 1
- 1
- 例の値
0.0.0.0/0
は、許可されるソース範囲を指定します。
23.9.2. ロードバランサーの許可されたソース範囲への移行
注釈 service.beta.kubernetes.io/load-balancer-source-ranges
をすでに設定している場合は、ロードバランサーの許可されたソース範囲に移行できます。AllowedSourceRanges
を設定すると、Ingress Controller は AllowedSourceRanges
値に基づいて spec.loadBalancerSourceRanges
フィールドを設定し、service.beta.kubernetes.io/load-balancer-source-ranges
アノテーションを設定解除します。
以前のバージョンの OpenShift Container Platform で spec.loadBalancerSourceRanges
フィールドまたはロードバランサーサービスアノテーション service.beta.kubernetes.io/load-balancer-source-ranges
をすでに設定している場合、Ingress Controller はアップグレード後に Progressing=True
のレポートを開始します。.これを修正するには、spec.loadBalancerSourceRanges
フィールドを上書きし、service.beta.kubernetes.io/load-balancer-source-ranges
アノテーションをクリアする AllowedSourceRanges
を設定します。Ingress Controller は再び Progressing=False
の報告を開始します。
前提条件
-
service.beta.kubernetes.io/load-balancer-source-ranges
アノテーションを設定しました。
手順
service.beta.kubernetes.io/load-balancer-source-ranges
が設定されていることを確認します。$ oc get svc router-default -n openshift-ingress -o yaml
出力例
apiVersion: v1 kind: Service metadata: annotations: service.beta.kubernetes.io/load-balancer-source-ranges: 192.168.0.1/32
spec.loadBalancerSourceRanges
フィールドが設定されていないことを確認します。$ oc get svc router-default -n openshift-ingress -o yaml
出力例
... spec: loadBalancerSourceRanges: - 0.0.0.0/0 ...
- クラスターを OpenShift Container Platform 4.16 に更新します。
次のコマンドを実行して、
ingresscontroller
の許可されるソース範囲 API を設定します。$ oc -n openshift-ingress-operator patch ingresscontroller/default \ --type=merge --patch='{"spec":{"endpointPublishingStrategy": \ {"loadBalancer":{"allowedSourceRanges":["0.0.0.0/0"]}}}}' 1
- 1
- 例の値
0.0.0.0/0
は、許可されるソース範囲を指定します。