Podnetworking
Erfahren Sie mehr über die Kommunikation mit und von Pods auf Worker-Knoten in Clustern, die mit der Kubernetes Engine (OKE) erstellt wurden.
Im Kubernetes-Networkingmodell wird angenommen, dass Pods eindeutige und weiterleitbare IP-Adressen innerhalb eines Clusters aufweisen. Im Kubernetes-Netzwerkmodell verwenden Pods diese IP-Adressen, um miteinander, mit den Control-Plane-Knoten des Clusters, mit Pods auf anderen Clustern, mit anderen Services (wie Speicherservices) und mit dem Internet zu kommunizieren. Kubernetes hat die Container Network Interface-(CNI-)Spezifikation für die Netzwerkressourcenverwaltung übernommen. Das CNI besteht aus einer Spezifikation und Bibliotheken zum Schreiben von Plugins zur Konfiguration von Netzwerkschnittstellen in Linux-Containern sowie einer Reihe von unterstützten Plugins.
Kubernetes-Cluster verwenden CNI-Plug-ins, um die Netzwerkkonnektivität für Pods zu implementieren, die auf Worker-Knoten ausgeführt werden. CNI-Plug-ins konfigurieren Netzwerkschnittstellen, stellen IP-Adressen bereit und pflegen die Konnektivität.
- Wenn Sie natives VCN-Podnetworking als Netzwerktyp auswählen, wird das CNI-Plug-in für das OCI-VCN-native Podnetworking für Podnetworking verwendet (siehe CNI-Plug-in für Podnetworking für OCI-VCN-natives Podnetwork verwenden)
- Wenn Sie Flannel-CNI-Plug-in als Netzwerktyp auswählen, wird das Flannel-CNI-Plug-in für Podnetworking verwendet (siehe Flannel-CNI-Plug-in für Podnetzwerke verwenden)
Alle Knotenpools in einem Cluster verwenden dasselbe CNI-Plug-in. Nachdem ein Cluster erstellt wurde, können Sie das ursprünglich ausgewählte CNI-Plug-in nicht mehr ändern. Das für Pod-Networking verwendete CNI-Plug-in gilt als wesentliches Cluster-Add-on. Wenn Sie den Netzwerktyp eines Clusters angeben, verwenden das Cluster und seine Knotenpools zunächst die neueste Version des entsprechenden CNI-Plug-ins. Updates an den CNI-Plugins werden regelmäßig veröffentlicht. Im Fall des Flannel-CNI-Plug-ins (und der Versionen des OCI-VCN-nativen Podnetzwerks-CNI-Plug-ins vor Version 2.3.0) können Sie angeben, dass Oracle die Updates automatisch im Cluster bereitstellen soll, oder Sie können angeben, dass Sie die bereitzustellende Version auswählen möchten. Wenn Sie sich für die Version entscheiden, übernehmen Sie die Verantwortung, das Add-on auf dem neuesten Stand zu halten. Siehe Cluster-Add-ons konfigurieren.
Mit Calico können Sie Kubernetes-Ressourcen der NetworkPolicy-Version implementieren. Netzwerk-Policys erhöhen die Granularität der Clustersicherheit, indem Sie mit Labels Pods auswählen und Regeln definieren, die angeben, welcher Traffic zu den ausgewählten Pods zulässig ist. Calico ist eine Open-Source-Networking- und Netzwerksicherheitslösung für Container, virtuelle Maschinen und native hostbasierte Workloads. Informationen hierzu finden Sie unter Beispiel: Calico installieren und Netzwerk-Policys einrichten.
Sie können das CNI-Plug-in für OCI-VCN-natives Podnetzwerk sowohl mit virtuellen Knotenpools als auch mit verwalteten Knotenpools verwenden. Sie können das flannel-CNI-Plug-in mit verwalteten Knotenpools verwenden.
Sie können sowohl das CNI-Plug-in für OCI-VCN-native Podnetworking als auch das CNI-Plug-in für Flannel mit selbstverwalteten Knoten verwenden. Weitere Informationen finden Sie unter Mit selbstverwalteten Knoten arbeiten.
Beachten Sie, dass Sie das CNI-Plug-in für OCI-VCN-native Podnetworking nur mit Clustern verwenden können, auf denen Kubernetes 1.22 oder höher ausgeführt wird. In Releases vor Juli 2022 haben die Cluster, die Sie mit der Kubernetes-Engine erstellt haben, immer das Flannel-CNI-Plug-in für das Podnetzwerk verwendet. In Releases nach Juli 2022 ist das OCI-VCN-native Podnetzwerk-CNI-Plug-in der Standard, wenn Sie mit der Konsole Cluster erstellen (Kubernetes 1.22 oder höher ausführen). Wenn Sie jedoch den Workflow "Benutzerdefinierte Erstellung" verwenden, können Sie auch Cluster erstellen, die das Flannel-CNI-Plug-in verwenden. Das Flannel-CNI-Plug-in ist weiterhin der Standard, wenn Sie die API verwenden. Sie können jedoch das OCI-VCN-native Podnetworking-CNI-Plug-in verwenden.