3.5. Cluster Network Operator のカスタムリソース (CR、Custom Resource)

Network.operator.openshift.io カスタムリソース (CR) のクラスターネットワーク設定は、Cluster Network Operator (CNO) の設定内容を保存します。Operator はクラスターネットワークを管理します。

defaultNetwork パラメーターのパラメーターを CNO CR に設定することにより、OpenShift Container Platform クラスターのクラスターネットワーク設定を指定できます。以下の CR は、CNO のデフォルト設定を表示し、設定可能なパラメーターと有効なパラメーターの値の両方について説明しています。

Cluster Network Operator CR

apiVersion: operator.openshift.io/v1
kind: Network
metadata:
  name: cluster
spec:
  clusterNetwork: 1
  - cidr: 10.128.0.0/14
    hostPrefix: 23
  serviceNetwork: 2
  - 172.30.0.0/16
  defaultNetwork: 3
    ...
  kubeProxyConfig: 4
    iptablesSyncPeriod: 30s 5
    proxyArguments:
      iptables-min-sync-period: 6
      - 30s

1
Pod ID の割り当て、サブネットプレフィックスの長さの個別ノードへの割り当てに使用される IP アドレスのブロックを指定する一覧です。
2
サービスの IP アドレスのブロック。OpenShift SDN Container Network Interface (CNI) プラグインは、サービスネットワークの単一 IP アドレスブロックのみをサポートします。
3
クラスターネットワークの SDN (software-defined networking) を設定します。
4
このオブジェクトのパラメーターは、Kubernetes ネットワークプロキシー (kube-proxy) 設定を指定します。
5
iptables ルールの更新期間。デフォルト値は 30s です。有効なサフィックスには、sm、および hなどが含まれ、これらについては、Go time package ドキュメントで説明されています。
6
iptables ルールを更新する前の最小期間。このパラメーターにより、更新の頻度が高くなり過ぎないようにできます。有効なサフィックスには、sm、および h が含まれ、これらについては、Go time package で説明されています。

3.5.1. OpenShift SDN の設定パラメーター

以下の YAML オブジェクトは OpenShift SDN の設定パラメーターについて説明しています。

defaultNetwork:
  type: OpenShiftSDN 1
  openshiftSDNConfig: 2
    mode: NetworkPolicy 3
    mtu: 1450 4
    vxlanPort: 4789 5
1
使用されている Software Defined Networking (SDN) プラグイン。 OpenShift SDN は OpenShift Container Platform 4.2 でサポートされている唯一のプラグインです。
2
OpenShift SDN 固有の設定パラメーター。
3
OpenShift SDN CNI プラグインのネットワーク分離モード。
4
VXLAN オーバーレイネットワークの MTU。通常、この値は自動的に設定されます。
5
すべての VXLAN パケットに使用するポート。デフォルト値は 4789 です。

3.5.2. Cluster Network Operator のサンプル CR

以下の例のように、CNO の完全な CR が表示されます。

Cluster Network Operator のサンプル CR

apiVersion: operator.openshift.io/v1
kind: Network
metadata:
  name: cluster
spec:
  clusterNetwork:
  - cidr: 10.128.0.0/14
    hostPrefix: 23
  serviceNetwork:
  - 172.30.0.0/16
  defaultNetwork:
    type: OpenShiftSDN
    openshiftSDNConfig:
      mode: NetworkPolicy
      mtu: 1450
      vxlanPort: 4789
  kubeProxyConfig:
    iptablesSyncPeriod: 30s
    proxyArguments:
      iptables-min-sync-period:
      - 30s