Control-Plane-Subnetz (VCN-nativer Pod) erstellen

Erstellen Sie die folgenden Ressourcen in der aufgeführten Reihenfolge:

  1. Control-Plane-Sicherheitsliste

  2. Control-Plane-Subnetz

Sicherheitsliste für Control-Plane erstellen

Erstellen einer Sicherheitsliste. Siehe Sicherheitsliste erstellen. Informationen zur Terraform-Eingabe finden Sie unter Terraform-Beispielskripte (VCN-nativer Pod).

Verwenden Sie in diesem Beispiel die folgende Eingabe für die Sicherheitsliste des Control-Plane-Subnetzes. kubernetes_api_port ist der Port, mit dem auf die Kubernetes-API zugegriffen wird: Port 6443. Siehe auch Workload-Clusternetzwerkports (nativer VCN-Pod).

Konsoleneigenschaft

CLI-Eigenschaft

  • Name: kmi-seclist

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

  • --display-name: kmi-seclist

Eine Egress-Sicherheitsregel:

  • Zustandslos: deaktivieren Sie das Kontrollkästchen

  • Egress-CIDR: 0.0.0.0/0

  • IP-Protokoll: Alle Protokollen

  • Beschreibung: "Allow outgoing traffic".

Eine Egress-Sicherheitsregel:

--egress-security-rules

  • isStateless: false

  • destination: 0.0.0.0/0

  • destinationType: CIDR_BLOCK

  • protocol: all

  • description: "Alle ausgehenden Datenverkehr zulassen".

Elf Ingress-Sicherheitsregeln:

Elf Ingress-Sicherheitsregeln:

--ingress-security-rules

Ingress-Regel 1

  • Zustandslos: Kontrollkästchen deaktivieren

  • Ingress-CIDR: kube_client_cidr

  • IP-Protokoll: TCP

    • Zielportbereich: kubernetes_api_port

  • Beschreibung: "Erlauben Sie Clients, mit der Kubernetes-API zu kommunizieren."

Ingress-Regel 1
  • isStateless: false

  • source: kube_client_cidr

  • sourceType: CIDR_BLOCK

  • protocol: 6

  • tcpOptions

    destinationPortRange

    • max: kubernetes_api_port

    • min: kubernetes_api_port

  • description: "Erlauben Sie Clients die Kommunikation mit der Kubernetes-API."

Ingress-Regel 2
  • Zustandslos: Kontrollkästchen deaktivieren

  • Ingress-CIDR: kmilb_cidr

  • IP-Protokoll: TCP

    • Zielportbereich: kubernetes_api_port

  • Beschreibung: "Erlauben Sie dem Load Balancer die Kommunikation mit Kubernetes-Control-Plane-APIs."

Ingress-Regel 2
  • isStateless: false

  • source: kmilb_cidr

  • sourceType: CIDR_BLOCK

  • protocol: 6

  • tcpOptions

    destinationPortRange

    • max: kubernetes_api_port

    • min: kubernetes_api_port

  • description: "Kommunikation des Load Balancers mit Kubernetes-Control-Plane-APIs zulassen."

Ingress-Regel 3
  • Zustandslos: Kontrollkästchen deaktivieren

  • Ingress-CIDR: kmilb_cidr

  • IP-Protokoll: TCP

    • Zielportbereich: 12250

  • Beschreibung: "Kubernetes-Worker die Kubernetes-API-Endpunktkommunikation über den Control-Plane-Load-Balancer zulassen."

Ingress-Regel 3
  • isStateless: false

  • source: kmilb_cidr

  • sourceType: CIDR_BLOCK

  • protocol: 6

  • tcpOptions

    destinationPortRange

    • max: 12250

    • min: 12250

  • description: "Kubernetes-Worker die Kommunikation des Kubernetes-API-Endpunkts über den Control-Plane-Load Balancer zulassen."

Ingress-Regel 4
  • Zustandslos: Kontrollkästchen deaktivieren

  • Ingress-CIDR: worker_cidr

  • IP-Protokoll: TCP

    • Zielportbereich: kubernetes_api_port

  • Beschreibung: "Worker-Knoten Zugriff auf die Kubernetes-API gewähren".

Ingress-Regel 4
  • isStateless: false

  • source: worker_cidr

  • sourceType: CIDR_BLOCK

  • protocol: 6

  • tcpOptions

    destinationPortRange

    • max: kubernetes_api_port

    • min: kubernetes_api_port

  • description: "Worker-Knoten können auf die Kubernetes-API zugreifen."

Ingress-Regel 5
  • Zustandslos: Kontrollkästchen deaktivieren

  • Ingress-CIDR: worker_cidr

  • IP-Protokoll: TCP

    • Zielportbereich: 12250

  • Beschreibung: "Kommunikation zwischen Kubernetes-Worker und Kubernetes-API-Endpunkt zulassen."

Ingress-Regel 5
  • isStateless: false

  • source: worker_cidr

  • sourceType: CIDR_BLOCK

  • protocol: 6

  • tcpOptions

    destinationPortRange

    • max: 12250

    • min: 12250

  • description: "Kommunikation zwischen Kubernetes-Worker und Kubernetes-API-Endpunkt zulassen."

Ingress-Regel 6
  • Zustandslos: Kontrollkästchen deaktivieren

  • Ingress-CIDR: kmi_cidr

  • IP-Protokoll: TCP

    • Zielportbereich: kubernetes_api_port

  • Beschreibung: "Erlaube der Kontrollebene, sich selbst zu erreichen."

Ingress-Regel 6
  • isStateless: false

  • source: kmi_cidr

  • sourceType: CIDR_BLOCK

  • protocol: 6

  • tcpOptions

    destinationPortRange

    • max: kubernetes_api_port

    • min: kubernetes_api_port

  • description: "Erlauben Sie, dass die Control Plane sich selbst erreicht."

Ingress-Regel 7
  • Zustandslos: Kontrollkästchen deaktivieren

  • Ingress-CIDR: kmi_cidr

  • IP-Protokoll: TCP

    • Zielportbereich: 2379-2381

  • Beschreibung: "Erlauben Sie der Control Plane, etcd-Services und -Metriken zu erreichen. Die Ports 2379 und 2380 werden von Kubernetes für die Kommunikation mit dem etcd-Server verwendet. Port 2381 wird von Kubernetes verwendet, um Metriken von etcd zu erfassen."

Ingress-Regel 7
  • isStateless: false

  • source: kmi_cidr

  • sourceType: CIDR_BLOCK

  • protocol: 6

  • tcpOptions

    destinationPortRange

    • max: 2381

    • min: 2379

  • description: "Erlauben Sie der Control Plane, etcd-Services und -Metriken zu erreichen. Die Ports 2379 und 2380 werden von Kubernetes für die Kommunikation mit dem etcd-Server verwendet. Port 2381 wird von Kubernetes verwendet, um Metriken von etcd zu erfassen."

Ingress-Regel 8
  • Zustandslos: Kontrollkästchen deaktivieren

  • Ingress-CIDR: kmi_cidr

  • IP-Protokoll: TCP

    • Zielportbereich: 10250

  • Beschreibung: "Kubernetes-API-Endpunkt zur Steuerung der Plane-Knotenkommunikation zulassen."

Ingress-Regel 8
  • isStateless: false

  • source: kmi_cidr

  • sourceType: CIDR_BLOCK

  • protocol: 6

  • tcpOptions

    destinationPortRange

    • max: 10250

    • min: 10250

  • description: "Kubernetes-API-Endpunkt zur Kontrolle der Plane-Knotenkommunikation zulassen."

Ingress-Regel 9
  • Zustandslos: Kontrollkästchen deaktivieren

  • Ingress-CIDR: kmi_cidr

  • IP-Protokoll: TCP

    • Zielportbereich: 10257-10260

  • Beschreibung: "Eingehende Verbindung für Kubernetes-Komponenten zulassen."

Ingress-Regel 9
  • isStateless: false

  • source: kmi_cidr

  • sourceType: CIDR_BLOCK

  • protocol: 6

  • tcpOptions

    destinationPortRange

    • max: 10260

    • min: 10257

  • description: "Eingehende Verbindung für Kubernetes-Komponenten zulassen".

Ingress-Regel 10
  • Zustandslos: Kontrollkästchen deaktivieren

  • Ingress-CIDR: pod_cidr

  • IP-Protokoll: TCP

    • Zielportbereich: kubernetes_api_port

  • Beschreibung: "Kommunikation von Pods mit Kubernetes-APIs zulassen."

Ingress-Regel 10
  • isStateless: false

  • source: pod_cidr

  • sourceType: CIDR_BLOCK

  • protocol: 6

  • tcpOptions

    destinationPortRange

    • max: kubernetes_api_port

    • min: kubernetes_api_port

  • description: "Kommunikation von Pods mit Kubernetes-APIs zulassen".

Ingress-Regel 11
  • Zustandslos: Kontrollkästchen deaktivieren

  • Ingress-CIDR: pod_cidr

  • IP-Protokoll: TCP

    • Zielportbereich: 12250

  • Beschreibung: "Kubernetes-Pods zur Kommunikation mit dem Kubernetes-API-Endpunkt zulassen."

Ingress-Regel 11
  • isStateless: false

  • source: pod_cidr

  • sourceType: CIDR_BLOCK

  • protocol: 6

  • tcpOptions

    destinationPortRange

    • max: 12250

    • min: 12250

  • description: "Kubernetes-Pods zur Kommunikation mit dem Kubernetes-API-Endpunkt zulassen."

Control Plane-Subnetz erstellen

Subnetz erstellen. Siehe Subnetz erstellen. Informationen zur Terraform-Eingabe finden Sie unter Terraform-Beispielskripte (VCN-nativer Pod).

Verwenden Sie die folgende Eingabe, um das Control-Plane-Subnetz zu erstellen. Verwenden Sie die OCID des VCN, das unter VCN (nativer VCN-Pod) erstellen erstellt wurde. Erstellen Sie das Control-Plane-Subnetz in demselben Compartment, in dem Sie das VCN erstellt haben.

Erstellen Sie ein privates NAT-Control-Plane-Subnetz oder ein privates VCN-Control-Plane-Subnetz. Erstellen Sie ein privates NAT-Control-Plane-Subnetz für die Kommunikation außerhalb des VCN.

Wichtig

Der Name dieses Subnetzes muss genau "Control-Plane" lauten.

Privates Data Center-Control-Plane-Subnetz erstellen

Konsoleneigenschaft

CLI-Eigenschaft

  • Name: Steuerungsebene

  • CIDR-Block: kmi_cidr

  • Routentabelle: Wählen Sie "nat_private" aus der Liste

  • Privates Subnetz: Aktivieren Sie das Kontrollkästchen

  • DNS-Hostnamen:

    DNS-Hostnamen in diesem Subnetz verwendet: Aktivieren Sie das Kontrollkästchen

    • DNS-Label: kmi

  • Sicherheitslisten: Wählen Sie aus der Liste "kmi-seclist" und "Default Security List for oketest-vcn" aus

  • --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: OCID der Routentabelle "nat_private"

  • --security-list-ids: OCIDs der Sicherheitsliste "kmi-seclist" und der Sicherheitsliste "Standardsicherheitsliste für oketest-vcn"

Der Unterschied im folgenden privaten Subnetz ist, dass die private VCN-Routentabelle anstelle der privaten NAT-Routentabelle verwendet wird.

Privates VCN-Control-Plane-Subnetz erstellen

Konsoleneigenschaft

CLI-Eigenschaft

  • Name: Steuerungsebene

  • CIDR-Block: kmi_cidr

  • Routentabelle: Wählen Sie "vcn_private" aus der Liste

  • Privates Subnetz: Aktivieren Sie das Kontrollkästchen

  • DNS-Hostnamen:

    DNS-Hostnamen in diesem Subnetz verwendet: Aktivieren Sie das Kontrollkästchen

    • DNS-Label: kmi

  • Sicherheitslisten: Wählen Sie aus der Liste "kmi-seclist" und "Default Security List for oketest-vcn" aus

  • --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: OCID der Routentabelle "vcn_private"

  • --security-list-ids: OCIDs der Sicherheitsliste "kmi-seclist" und der Sicherheitsliste "Standardsicherheitsliste für oketest-vcn"