コントロール・プレーン・サブネットの作成(VCNネイティブ・ポッド)

次のリソースを、リストされた順序で作成します。

  1. コントロール・プレーン・セキュリティ・リスト

  2. コントロール・プレーン・サブネット

コントロール・プレーン・セキュリティ・リストの作成

セキュリティ・リストを作成します。「セキュリティ・リストの作成」を参照してください。Terraform入力については、Terraformスクリプトの例(VCNネイティブ・ポッド)を参照してください。

この例では、コントロール・プレーン・サブネット・セキュリティ・リストに次の入力を使用します。kubernetes_api_portは、Kubernetes APIへのアクセスに使用されるポート(ポート6443)です。ワークロード・クラスタ・ネットワーク・ポート(VCNネイティブ・ポッド)も参照してください。

コンソール・プロパティ

CLIプロパティー

  • 名前: kmi-seclist

  • --vcn-id: ocid1.vcn.oke_vcn_id

  • --display-name: kmi-seclist

1つのエグレス・セキュリティ・ルール:

  • ステートレス: ボックスの選択解除

  • エグレスCIDR: 0.0.0.0/0

  • IPプロトコル: すべてのプロトコルの場合

  • 説明: 「すべての送信トラフィックを許可します。」

1つのエグレス・セキュリティ・ルール:

--egress-security-rules

  • isStateless: false

  • destination: 0.0.0.0/0

  • destinationType: CIDR_BLOCK

  • protocol: all

  • description: 「すべての送信トラフィックを許可します。」

11のイングレス・セキュリティ・ルール:

11のイングレス・セキュリティ・ルール:

--ingress-security-rules

イングレス・ルール 1

  • ステートレス: ボックスをクリア

  • イングレスCIDR: kube_client_cidr

  • IPプロトコル: TCP

    • 宛先ポートの範囲: kubernetes_api_port

  • 説明: 「クライアントがKubernetes APIと通信できるようにします。」

イングレス・ルール 1
  • isStateless: false

  • source: kube_client_cidr

  • sourceType: CIDR_BLOCK

  • protocol: 6

  • tcpOptions

    destinationPortRange

    • max: kubernetes_api_port

    • min: kubernetes_api_port

  • description: クライアントによるKubernetes APIとの通信を許可します。

イングレス・ルール 2
  • ステートレス: ボックスをクリア

  • イングレスCIDR: kmilb_cidr

  • IPプロトコル: TCP

    • 宛先ポートの範囲: kubernetes_api_port

  • 説明: 「ロード・バランサがKubernetesコントロール・プレーンAPIと通信できるようにします。」

イングレス・ルール 2
  • isStateless: false

  • source: kmilb_cidr

  • sourceType: CIDR_BLOCK

  • protocol: 6

  • tcpOptions

    destinationPortRange

    • max: kubernetes_api_port

    • min: kubernetes_api_port

  • description: ロード・バランサがKubernetesコントロール・プレーンAPIと通信できるようにします。

イングレス・ルール 3
  • ステートレス: ボックスをクリア

  • イングレスCIDR: kmilb_cidr

  • IPプロトコル: TCP

    • 宛先ポート範囲: 12250

  • 説明: 「コントロール・プレーン・ロード・バランサを介したKubernetesワーカーからKubernetes APIエンドポイントへの通信を許可します。」

イングレス・ルール 3
  • isStateless: false

  • source: kmilb_cidr

  • sourceType: CIDR_BLOCK

  • protocol: 6

  • tcpOptions

    destinationPortRange

    • max: 12250

    • min: 12250

  • description: 「コントロール・プレーン・ロード・バランサを介したKubernetes APIエンドポイント通信へのKubernetesワーカーを許可します。」

イングレス・ルール 4
  • ステートレス: ボックスをクリア

  • イングレスCIDR: worker_cidr

  • IPプロトコル: TCP

    • 宛先ポートの範囲: kubernetes_api_port

  • 説明: 「ワーカー・ノードがKubernetes APIにアクセスできるようにします。」

イングレス・ルール 4
  • isStateless: false

  • source: worker_cidr

  • sourceType: CIDR_BLOCK

  • protocol: 6

  • tcpOptions

    destinationPortRange

    • max: kubernetes_api_port

    • min: kubernetes_api_port

  • description: ワーカー・ノードがKubernetes APIにアクセスできるようにします。

イングレス・ルール 5
  • ステートレス: ボックスをクリア

  • イングレスCIDR: worker_cidr

  • IPプロトコル: TCP

    • 宛先ポート範囲: 12250

  • 説明: 「KubernetesワーカーからKubernetes APIエンドポイントへの通信を許可します。」

イングレス・ルール 5
  • isStateless: false

  • source: worker_cidr

  • sourceType: CIDR_BLOCK

  • protocol: 6

  • tcpOptions

    destinationPortRange

    • max: 12250

    • min: 12250

  • description: KubernetesワーカーからKubernetes APIエンドポイントへの通信を許可します。

イングレス・ルール 6
  • ステートレス: ボックスをクリア

  • イングレスCIDR: kmi_cidr

  • IPプロトコル: TCP

    • 宛先ポートの範囲: kubernetes_api_port

  • 説明: 「コントロールプレーンが自分自身に到達することを許可します。」

イングレス・ルール 6
  • isStateless: false

  • source: kmi_cidr

  • sourceType: CIDR_BLOCK

  • protocol: 6

  • tcpOptions

    destinationPortRange

    • max: kubernetes_api_port

    • min: kubernetes_api_port

  • description: 「コントロール・プレーンが自身に到達できるようにします。」

イングレス・ルール 7
  • ステートレス: ボックスをクリア

  • イングレスCIDR: kmi_cidr

  • IPプロトコル: TCP

    • 移動先ポート範囲: 2379-2381

  • 説明: コントロール・プレーンがetcdサービスおよびメトリックに到達することを許可します。ポート2379および2380は、etcdサーバーと通信するためにKubernetesによって使用されます。ポート2381は、etcdからメトリックを収集するためにKubernetesによって使用されます。

イングレス・ルール 7
  • isStateless: false

  • source: kmi_cidr

  • sourceType: CIDR_BLOCK

  • protocol: 6

  • tcpOptions

    destinationPortRange

    • max: 2381

    • min: 2379

  • description: コントロール・プレーンがetcdサービスおよびメトリックに到達できるようにします。ポート2379および2380は、etcdサーバーと通信するためにKubernetesによって使用されます。ポート2381は、etcdからメトリックを収集するためにKubernetesによって使用されます。

イングレス・ルール 8
  • ステートレス: ボックスをクリア

  • イングレスCIDR: kmi_cidr

  • IPプロトコル: TCP

    • 宛先ポート範囲: 10250

  • 説明: 「Kubernetes APIエンドポイントによるコントロール・プレーン・ノード通信の許可」

イングレス・ルール 8
  • isStateless: false

  • source: kmi_cidr

  • sourceType: CIDR_BLOCK

  • protocol: 6

  • tcpOptions

    destinationPortRange

    • max: 10250

    • min: 10250

  • description: Kubernetes APIエンドポイントによるコントロール・プレーン・ノード通信の許可。

イングレス・ルール 9
  • ステートレス: ボックスをクリア

  • イングレスCIDR: kmi_cidr

  • IPプロトコル: TCP

    • 宛先ポートの範囲: 10257-10260

  • 説明: 「Kubernetesコンポーネントのインバウンド接続を許可します。」

イングレス・ルール 9
  • isStateless: false

  • source: kmi_cidr

  • sourceType: CIDR_BLOCK

  • protocol: 6

  • tcpOptions

    destinationPortRange

    • max: 10260

    • min: 10257

  • description: "Kubernetesコンポーネントのインバウンド接続を許可します。"

イングレス・ルール 10
  • ステートレス: ボックスをクリア

  • イングレスCIDR: pod_cidr

  • IPプロトコル: TCP

    • 宛先ポートの範囲: kubernetes_api_port

  • 説明: 「ポッドがKubernetes APIと通信できるようにします。」

イングレス・ルール 10
  • isStateless: false

  • source: pod_cidr

  • sourceType: CIDR_BLOCK

  • protocol: 6

  • tcpOptions

    destinationPortRange

    • max: kubernetes_api_port

    • min: kubernetes_api_port

  • description: ポッドがKubernetes APIと通信できるようにします。

イングレス・ルール 11
  • ステートレス: ボックスをクリア

  • イングレスCIDR: pod_cidr

  • IPプロトコル: TCP

    • 宛先ポート範囲: 12250

  • 説明: 「KubernetesポッドからKubernetes APIエンドポイントへの通信を許可します。」

イングレス・ルール 11
  • isStateless: false

  • source: pod_cidr

  • sourceType: CIDR_BLOCK

  • protocol: 6

  • tcpOptions

    destinationPortRange

    • max: 12250

    • min: 12250

  • description: 「KubernetesポッドからKubernetes APIエンドポイントへの通信を許可します。」

コントロール・プレーン・サブネットの作成

サブネットの作成「サブネットの作成」を参照してください。Terraform入力については、Terraformスクリプトの例(VCNネイティブ・ポッド)を参照してください。

次の入力を使用して、コントロール・プレーン・サブネットを作成します。VCN (VCNネイティブ・ポッド)の作成で作成したVCNのOCIDを使用します。VCNを作成したのと同じコンパートメントにコントロール・プレーン・サブネットを作成します。

NATプライベート・コントロール・プレーン・サブネットまたはVCNプライベート・コントロール・プレーン・サブネットを作成します。VCN外部と通信するためのNATプライベート・コントロール・プレーン・サブネットを作成します。

重要

このサブネットの名前は、正確に「コントロールプレーン」である必要があります。

データ・センターのプライベート・コントロール・プレーン・サブネットの作成

コンソール・プロパティ

CLIプロパティー

  • 名前: 制御平面

  • CIDRブロック: kmi_cidr

  • ルート表: リストから「nat_private」を選択します。

  • Private Subnet: チェックボックスをオンにします。

  • DNSホスト名:

    このサブネットでDNSホスト名を使用: チェック・ボックスを選択します

    • DNSラベル: kmi

  • セキュリティ・リスト: リストから「kmi-seclist」および「oketest-vcnのデフォルト・セキュリティ・リスト」を選択します。

  • --vcn-id: ocid1.vcn.oke_vcn_id

  • --display-name: control-plane

  • --cidr-block: kmi_cidr

  • --dns-label: kmi

  • --prohibit-public-ip-on-vnic: true

  • --route-table-id: nat_privateルート表のOCID

  • --security-list-ids: 「kmi-seclist」セキュリティ・リストのOCIDsおよび「oketest-vcnのデフォルト・セキュリティ・リスト」セキュリティ・リスト

次のプライベート・サブネットの違いは、NATプライベート・ルート表のかわりにVCNプライベート・ルート表が使用されることです。

VCNプライベート・コントロール・プレーン・サブネットの作成

コンソール・プロパティ

CLIプロパティー

  • 名前: 制御平面

  • CIDRブロック: kmi_cidr

  • ルート表: リストから「vcn_private」を選択します。

  • Private Subnet: チェックボックスをオンにします。

  • DNSホスト名:

    このサブネットでDNSホスト名を使用: チェック・ボックスを選択します

    • DNSラベル: kmi

  • セキュリティ・リスト: リストから「kmi-seclist」および「oketest-vcnのデフォルト・セキュリティ・リスト」を選択します。

  • --vcn-id: ocid1.vcn.oke_vcn_id

  • --display-name: control-plane

  • --cidr-block: kmi_cidr

  • --dns-label: kmi

  • --prohibit-public-ip-on-vnic: true

  • --route-table-id: vcn_privateルート表のOCID

  • --security-list-ids: 「kmi-seclist」セキュリティ・リストのOCIDsおよび「oketest-vcnのデフォルト・セキュリティ・リスト」セキュリティ・リスト