1.14.6. ネットワークポリシーについて
Red Hat OpenShift Service Mesh は、Service Mesh コントロールプレーンおよびアプリケーションネームスペースで多数の NetworkPolicies
リソースを自動的に作成し、管理します。これは、アプリケーションとコントロールプレーンが相互に通信できるようにするために使用されます。
たとえば、OpenShift Container Platform クラスターが SDN プラグインを使用するように設定されている場合、Red Hat OpenShift Service Mesh は各メンバープロジェクトで NetworkPolicy
リソースを作成します。これにより、他のメッシュメンバーおよびコントロールプレーンからのメッシュ内のすべての Pod に対する ingress が有効になります。また、これにより Ingress がメンバープロジェクトのみに制限されます。メンバー以外のプロジェクトの Ingress が必要な場合は、NetworkPolicy
を作成してそのトラフィックを許可する必要があります。Service Mesh から namespace を削除する場合、この NetworkPolicy
リソースはプロジェクトから削除されます。
1.14.6.1. NetworkPolicy 自動作成の無効化
NetworkPolicy
リソースの自動作成および管理を無効にする場合 (例: 会社のセキュリティーポリシーを適用したり、メッシュ内の Pod への直接アクセスを許可する場合など) はこれを実行できます。ServiceMeshControlPlane
を編集し、spec.security.manageNetworkPolicy
を false
に設定できます。
spec.security.manageNetworkPolicy
を無効にすると、Red Hat OpenShift Service Mesh は、NetworkPolicy
オブジェクトをひとつも作成しません。システム管理者は、ネットワークを管理し、この原因の問題を修正します。
前提条件
- Red Hat OpenShift Service Mesh Operator バージョン 2.1.1 以降がインストールされている。
-
ServiceMeshControlPlane
リソースはバージョン 2.1 以降に更新されている。
手順
-
OpenShift Container Platform Web コンソールで、Operators
Installed Operators をクリックします。 -
Project メニューから、Service Mesh コントロールプレーンをインストールしたプロジェクト (例:
istio-system
) を選択します。 -
Red Hat OpenShift Service Mesh Operator をクリックします。Istio Service Mesh Control Plane 列で、
ServiceMeshControlPlane
の名前 (basic-install
など) をクリックします。 -
Create ServiceMeshControlPlane Details ページで、
YAML
をクリックして設定を変更します。 以下の例のように、
ServiceMeshControlPlane
フィールドspec.security.manageNetworkPolicy
をfalse
に設定します。apiVersion: maistra.io/v2 kind: ServiceMeshControlPlane spec: security: manageNetworkPolicy: false
- Save をクリックします。