Dieses Dokument enthält ein Beispiel für die Zuweisung von IP-Adressen für einen Hochverfügbarkeits-Administratorcluster und zwei Hochverfügbarkeits-Nutzercluster.
Hinweise
Weitere Informationen zu Administratorclustern, Nutzerclustern und Hochverfügbarkeit finden Sie unter Bereitstellungsmodell auswählen.
Beispiel für die Zuweisung von IP-Adressen
Dieser Abschnitt enthält ein Beispiel für die Zuweisung von IP-Adressen in einer Installation, die diese Elemente enthält:
IP-Adressen für Clusterknoten
IP-Adressen für Pods
Cluster-IP-Adressen für Dienste
Virtuelle IP-Adressen (VIPs) für die Steuerungsebenen und Ingress-Proxys
VIPs, die als externe IP-Adressen für Dienste verwendet werden
Administratorcluster-Knoten
Der Administratorcluster in diesem Beispiel hat drei Knoten. Jeder Knoten führt Komponenten der Steuerungsebene aus.
Nutzerclusterknoten
In diesem Beispiel hat jeder Nutzercluster sechs Knoten: drei Knoten der Steuerungsebene und drei Worker-Knoten.
Load-Balancing
In diesem Beispiel wird davon ausgegangen, dass die Cluster den gebündelten MetalLB-Load-Balancer verwenden. Der Load-Balancer wird auf den Clusterknoten ausgeführt, sodass für das Load-Balancing keine zusätzlichen Maschinen erforderlich sind.
Subnetze
In diesem Beispiel wird davon ausgegangen, dass sich jeder Cluster in einer eigenen Layer-2-Domain befindet und sich die Cluster in diesen Subnetzen befinden:
Cluster | Subnetz | Standardgateway |
---|---|---|
Administratorcluster | 172.16.20.0/24 | 172.16.20.1 |
Nutzercluster 1 | 172.16.21.0/24 | 172.16.21.1 |
Nutzercluster 2 | 172.16.22.0/24 | 172.16.22.1 |
Das folgende Diagramm veranschaulicht die drei Subnetze. Beachten Sie, dass VIPs nicht in Verbindung mit einem bestimmten Knoten in einem Cluster angezeigt werden. Das liegt daran, dass der MetalLB-Load-Balancer wählen kann, welcher Knoten das VIP für einen einzelnen Dienst ankündigt. In Nutzercluster 1 könnte beispielsweise ein Knoten 172.16.21.52 und ein anderer Knoten 172.16.21.53 ankündigen.
Beispiel-IP-Adressen: Administratorclusterknoten
Sie benötigen drei IP-Adressen für Ihre Administratorclusterknoten, die alle Komponenten der Steuerungsebene ausführen. Für Knoten in Ihrem Administratorcluster können Sie beispielsweise die folgenden IP-Adressen verwenden: Die Adressen in diesem Beispiel sind aufeinanderfolgend, dies ist jedoch nicht zwingend erforderlich:
IP-Adressen für Knoten im Administratorcluster |
---|
172.16.20.2–172.16.20.4 |
Beispiel-IP-Adresse: virtuelle IP-Adresse der Steuerungsebene für den Administratorcluster
Sie müssen eine virtuelle IP-Adresse für den Kubernetes API-Server des Administratorclusters reservieren.
In der Clusterkonfigurationsdatei heißt das controlPlaneVIP
.
Sie können beispielsweise die folgende IP-Adresse für die virtuelle IP-Adresse der Steuerungsebene für den Administratorcluster reservieren:
VIP der Steuerungsebene für den Administratorcluster |
---|
172.16.20.50 |
Beispiel-IP-Adressen: Nutzercluster 1-Knoten
Beispiel: Sie können die folgenden IP-Adressen für drei Knoten der Steuerungsebene und drei Worker-Knoten im Nutzercluster 1 verwenden. Die Adressen in diesem Beispiel sind aufeinanderfolgend, dies ist aber nicht zwingend erforderlich:
IP-Adressen für Knoten im Nutzercluster 1 |
---|
172.16.21.2–172.16.21.7 |
Beispiel-IP-Adressen: VIPs für Nutzercluster 1
Die folgende Tabelle zeigt ein Beispiel dafür, wie Sie virtuelle IP-Adressen festlegen können, die auf dem Load-Balancer für Nutzercluster 1 konfiguriert werden sollen. Die VIPs in diesem Beispiel sind aufeinanderfolgend, dies ist aber nicht zwingend erforderlich:
VIP | Beschreibung | IP-Adresse |
---|---|---|
Virtuelle IP-Adresse der Steuerungsebene für Nutzercluster 1 | Konfiguriert auf dem Load-Balancer für Nutzercluster 1 | 172.16.21.50 |
Ingress-VIP für Nutzercluster 1 | Konfiguriert auf dem Load-Balancer für Nutzercluster 1 | 172.16.21.51 |
Dienst-VIPs für Nutzercluster 1 | Zehn Adressen für Dienste vom Typ LoadBalancer .Ist je nach Bedarf auf dem Load-Balancer für Nutzercluster 1 konfiguriert. Beachten Sie, dass dieser Bereich die Ingress-VIP enthält. Dies ist eine Voraussetzung für den MetalLB-Balancer. |
172.16.21.51–172.16.21.60 |
Beispiel-IP-Adressen: Nutzercluster 2-Knoten
Beispiel: Sie können die folgenden IP-Adressen für Knoten in Nutzercluster 2 verwenden. Die Adressen in diesem Beispiel sind aufeinanderfolgend, dies ist aber nicht zwingend erforderlich:
IP-Adressen für Knoten im Nutzercluster 2 |
---|
172.16.22.2–172.16.22.7 |
Beispiel-IP-Adressen: VIPs für Nutzercluster 2
Die folgende Tabelle zeigt ein Beispiel dafür, wie Sie virtuelle IP-Adressen festlegen können, die auf dem Load-Balancer für Nutzercluster 2 konfiguriert werden sollen. Die VIPs in diesem Beispiel sind aufeinanderfolgend, dies ist jedoch nicht erforderlich.
VIP | Beschreibung | IP-Adresse |
---|---|---|
Virtuelle IP-Adresse der Steuerungsebene für Nutzercluster 2 | Auf dem Load-Balancer für Nutzercluster 2 konfiguriert | 172.16.22.50 |
Ingress-VIP für Nutzercluster 2 | Auf dem Load-Balancer für Nutzercluster 2 konfiguriert | 172.16.22.51 |
Dienst-VIPs für Nutzercluster 2 | Zehn Adressen für Dienste vom Typ LoadBalancer .Ist je nach Bedarf auf dem Load-Balancer für Nutzercluster 2 konfiguriert. Beachten Sie, dass dieser Bereich die Ingress-VIP enthält. Dies ist eine Anforderung für den MetalLB-Load-Balancer. |
172.16.22.51–172.16.22.60 |
Beispiel-IP-Adressen: Pods und Dienste
Bevor Sie einen Cluster erstellen, müssen Sie einen CIDR-Bereich angeben, der für Pod-IP-Adressen verwendet werden soll, und einen weiteren CIDR-Bereich, der für die ClusterIP
-Adressen von Kubernetes-Diensten verwendet wird.
Legen Sie fest, welche CIDR-Bereiche Sie für Pods und Dienste verwenden möchten. Beispiel:
Zweck | CIDR-Bereich |
---|---|
Pods im Administratorcluster | 192.168.0.0/16 |
Pods in Nutzercluster 1 | 192.168.0.0/16 |
Pods in Nutzercluster 2 | 192.168.0.0/16 |
Dienste im Administratorcluster | 10.96.232.0/24 |
Dienste im Nutzercluster 1 | 10.96.0.0/20 |
Dienste im Nutzercluster 2 | 10.96.128.0/20 |
Die obigen Beispiele veranschaulichen diese Punkte:
Der Pod-CIDR-Bereich kann für mehrere Cluster identisch sein.
Normalerweise benötigen Sie mehr Pods als Dienste. Daher möchten Sie für einen bestimmten Cluster wahrscheinlich einen Pod-CIDR-Bereich angeben, der größer als der Dienst-CIDR-Bereich ist. Der Pod-Beispielbereich für einen Nutzercluster ist 192.168.0.0/16 mit 2^(32 - 16) = 2^16 Adressen. Ein Beispiel für einen Dienstbereich für einen Nutzercluster ist 10.96.0.0/20 mit nur 2^(32–20) = 2^12 Adressen.
Überlappung vermeiden
Die CIDR-Bereiche dürfen sich nicht mit IP-Adressen überschneiden, die in Ihrem Netzwerk erreichbar sind. Die Dienst- und Pod-Bereiche dürfen sich nicht mit Adressen außerhalb des Clusters überschneiden, die Sie von innerhalb des Clusters erreichen möchten.
Angenommen, Ihr Dienstbereich ist 10.96.0.0/20 und Ihr Pod-Bereich ist 192.168.0.0/16. Jeglicher Traffic, der von einem Pod an eine Adresse in einem dieser Bereiche gesendet wird, wird als clusterinterner Traffic behandelt, ohne das Ziel außerhalb des Clusters zu erreichen.
Insbesondere dürfen sich die Bereiche für Dienste und Pods nicht überschneiden mit:
IP-Adressen von Knoten in einem beliebigen Cluster
Von Load-Balancer-Maschinen verwendete IP-Adressen
Von Knoten der Steuerungsebene und Load-Balancern verwendete VIPs
IP-Adressen von DNS- und NTP-Servern
Wir empfehlen, dass sich Ihre Dienst- und Pod-Bereiche im privaten Adressbereich RFC 1918 befinden.
Dies ist ein Grund für die Empfehlung, RFC 1918-Adressen zu verwenden. Angenommen, Ihr Pod- oder Dienstbereich enthält externe IP-Adressen. Traffic von einem Pod an eine dieser externen Adressen wird als clusterinterner Traffic behandelt und erreicht das externe Ziel nicht.
Varianten bei der Zuweisung von IP-Adressen
Das Beispiel in diesem Dokument zeigt eine Möglichkeit, IP-Adressen für eine bestimmte Art der Installation zuzuweisen. Es gibt jedoch verschiedene Möglichkeiten, Anthos-Cluster auf Bare Metal zu installieren. Die ausgewählte Variante wirkt sich auf die Planung Ihrer IP-Adressen aus.
Sie können beispielsweise Cluster ohne Hochverfügbarkeit verwenden oder Ihre Clusterknoten auf mehrere Layer-2-Domains verteilen. Sie können auch ein Netzwerk im flachen Modus anstelle eines Netzwerks im Inselmodus verwenden.
Beispiele für die Angabe von IP-Adressen in Clusterkonfigurationsdateien für verschiedene Arten von Installationen finden Sie unter Clusterkonfigurationsbeispiele.
Weitere Informationen zum Planen Ihrer IP-Adressen für verschiedene Arten von Installationen finden Sie in den folgenden Dokumenten:
Funknetz im Vergleich zum Inselmodus
Im flachen Modus haben Pods eindeutige Adressen für mehr als einen Cluster. Passen Sie die Pod-CIDR-Bereiche entsprechend an.
-
Knoten, Pods und Dienste haben sowohl IPv4- als auch IPv6-Adressen. Das IPv6-Netzwerk befindet sich im flachen Modus, das IPv4-Netzwerk kann sich entweder im Inselmodus oder im flachen Modus befinden. Bei Netzwerken im flachen Modus muss die Pod-Erreichbarkeit angeordnet werden.
Ein flaches IPv4-Netzwerkmodell implementieren
Die Pod-Erreichbarkeit muss konfiguriert werden. Erhöhen Sie die Teilmengen des Pod- und Knotenbereichs auf einen größeren Bereich.
Netzwerkmodell im Flat-Modus mit BGP-Unterstützung implementieren
Sie benötigen Floating-IP-Adressen für die BGP-Lautsprecher in Ihrem Cluster sowie die IP-Adressen der Peer-Router.
-
Sie benötigen Floating-IP-Adressen für die BGP-Lautsprecher in Ihrem Cluster sowie die IP-Adressen der Peer-Router.
Network Connectivity Gateway konfigurieren
Sie müssen Peer-IP-Adressen und IP-Adressen lokaler Tunnel angeben.