Auswahl einer Container-Netzwerkschnittstelle
Virtual Private Cloud
Lesen Sie die folgenden Informationen zur Auswahl einer Container-Netzwerkschnittstelle (CNI) durch.
In der Version IBM Cloud Kubernetes Service 4.20 und höher ist Calico die Standard-CNI, aber VPC-Cluster, die RHCOS-Worker-Knoten verwenden, haben die Möglichkeit, Open Virtual Network (OVN) als ihre Cluster-CNI auszuwählen.
- Calico Standard
- Calico ist eine einheitliche Plattform für Netzwerke, Netzwerksicherheit und Observability für jede Kubernetes-Distribution in der Cloud, vor Ort oder am Netzwerkrand. Ganz gleich, ob Sie gerade erst mit Kubernetes beginnen oder bereits in großem Maßstab arbeiten – die Open-Source-, Enterprise- und Cloud-Editionen von Calico bieten Ihnen die Netzwerkfunktionen, Sicherheit und Überwachungsmöglichkeiten, die Sie benötigen. Weitere Informationen finden Sie in der Dokumentation zu Calico.
- OVN-Kubernetes (OVN) 4.20 und spätere VersionenNur RHCOS-Worker-Knoten
- OVN- Kubernetes basiert auf Open Virtual Network (OVN) und bietet eine Overlay-basierte Netzwerkimplementierung. Ein Cluster, der das OVN- Kubernetes-Plugin verwendet, führt außerdem auf jedem Knoten Open vSwitch s (OVS) aus. OVN konfiguriert OVS auf jedem Knoten, um die angegebene Netzwerkkonfiguration zu implementieren. Weitere Informationen finden Sie in der Dokumentation zu Red Hat.
Vergleich zwischen Calico und OVN
Sehen Sie sich die folgende Tabelle an, um die Merkmale und Funktionen von Calico und OVN zu vergleichen.
Bei der Verwendung von OVN müssen Sie sicherstellen, dass sich Ihre VPC-Subnetze nicht mit den in der folgenden Tabelle angegebenen zusätzlichen Subnetzen überschneiden. Bei einer Überlappung von Subnetzen schlägt die Netzwerkverbindung zwischen den Pods fehl.
Layer2 layer3-benutzerdefinierte Netzwerke (UDN) werden bei Workloads, die DHCP verwenden, wie z. B. Virtualisierungs-VMs von OpenShift, nicht unterstützt.
| Komponente | Calico | OVN- Kubernetes |
|---|---|---|
| Kapselung |
|
|
| Standard-Cluster-Netzwerk / Pod-MTU | Standardmäßig 1.480 Byte (20-Byte- IPinIP-Header). Dies kann geändert werden. | Standardmäßig 1.400 Byte (100-Byte-Geneve-Header). Dies kann geändert werden. Daemonset muss eine NetworkManager-Datei erstellen, anstatt nur die Datei auszuführen ip link set dev ens3 mtu. Außerdem müssen Sie neue Worker-Knoten
neu starten. |
| Pod IPAM | Calico Weist jedem neuen Knoten zunächst ein /26-Subnetz zu (64 IP-Adressen, von denen in der Regel mindestens eine als tunl0-IP verwendet wird; die übrigen stehen für Pods zur Verfügung). Wenn alle Pod-IP-Adressen in einem /26-Subnetz
belegt sind, weist Calico dem Knoten ein zweites /26-Subnetz zu und bei Bedarf weitere. Mit dem können Sie die jedem Knoten zugewiesenen Subnetze calicoctl ipam check anzeigen. |
OVN weist jedem neuen Cluster-Knoten zunächst ein /24-Pod-Subnetz (256 IP-Adressen) zu. Es besteht keine Möglichkeit, weitere Pod-Subnetze hinzuzufügen. Außerdem wird jedem neuen Knoten eine Join-Subnetz-IP zugewiesen, die intern von OVN verwendet wird |
| Pod-zu-Pod-Routing |
|
|
| Kubernetes-Netzrichtlinien |
|
|
| Richtlinien für Host-Netzwerke | Calico GlobalNetworkPolicies | Keine |
| Zusätzliche Subnetze | Keine |
|
| APIserver-Überwachung |
|
|
| CNI | Die und calico calico-ipam CNI-Binärdateien werden vom initContainerinstall-cni auf dem Pod calico-node auf jeden Knoten kopiert. |
Der Container ovnkube-controller des ovnkube-node Pods führt die CNI-Binärdatei für Add- und Delete-Aufrufe aus. |
| Ressourcen erstellt |
|
|
| Verbindungen zwischen Pods |
|
|