6.2. ネットワークポリシーの作成

クラスター管理者は、namespace のネットワークポリシーを作成できます。

6.2.1. ネットワークポリシーの作成

クラスターのプロジェクトに許可される Ingress ネットワークトラフィックを記述する詳細なルールを定義するには、ネットワークポリシーを作成できます。

前提条件

  • クラスターは、NetworkPolicy オブジェクトをサポートするデフォルトの CNI ネットワークプロバイダーを使用している (例: mode: NetworkPolicy が設定された OpenShift SDN ネットワークプロバイダー)。このモードは OpenShiftSDN のデフォルトです。
  • OpenShift CLI (oc) がインストールされている。
  • cluster-admin 権限を持つユーザーとしてクラスターにログインしていること。

手順

  1. ポリシールールを作成します。

    1. <policy-name>.yaml ファイルを作成します。<policy-name> はポリシールールを記述します。
    2. 作成したばかりのファイルで、以下の例のようなポリシーオブジェクトを定義します。

      kind: NetworkPolicy
      apiVersion: networking.k8s.io/v1
      metadata:
        name: <policy-name> 1
      spec:
        podSelector:
        ingress: []
      1
      ポリシーオブジェクトの名前を指定します。
  2. 以下のコマンドを実行してポリシーオブジェクトを作成します。

    $ oc create -f <policy-name>.yaml -n <project>

    以下の例では、新規 NetworkPolicy オブジェクトが project1 という名前のプロジェクトに作成されます。

    $ oc create -f default-deny.yaml -n project1

    出力例

    networkpolicy "default-deny" created