Flaches IPv4-Modus-Netzwerkmodell implementieren

Übersicht

In einem flachen Netzwerkmodell haben Pods eindeutige Cluster-IP-Adressen. Achten Sie darauf, dass die zugewiesenen Pod-CIDRs eindeutig sind und sich nicht mit anderen Subnetzen überschneiden. Beispielsweise dürfen sich IP-Adressen nicht mit IP-Adressen überschneiden, die für die Knoten oder die anderen Pod-CIDRs in anderen Clustern verwendet werden. Auf diese IP-Adressen kann extern zugegriffen werden. Daher können Pods auf jedem Knoten mit allen Pods auf allen anderen Knoten kommunizieren. Für die Kommunikation vom Pod zu einer externen IP-Adresse ist keine NAT (Network Address Translation) erforderlich. Weitere Informationen zum Netzwerkmodell im Flat-Modus und dem Vergleich mit dem Standard-Netzwerkmodell im Insel-Netzwerk finden Sie unter Netzwerk- bzw. Inselmodus im flachen Modus.

Flat-Mode-Netzwerkmodelle sind zwei Netzwerktypen – statisches und dynamisches Netzwerk (mit Border Gateway Protocol). Der statische Flat-Modus kann verwendet werden, wenn Knoten eine einzelne Layer-2-Domain umfassen. Verwenden Sie für Knoten, die sich über mehrere Layer-2-Domains erstrecken, den flachen IP-Modus mit BGP.

Verwenden Sie ein flaches Netzwerkmodell, wenn Sie einen großen IP-Adressbereich haben und einem Cluster einen eindeutigen Pod-CIDR-Bereich zuweisen können. Sie können die Pod-CIDRs mithilfe der ClusterCIDRConfigs dynamisch konfigurieren. Sie können ClusterCIDRConfigs hinzufügen oder löschen, nachdem der Cluster erstellt wurde.

Weitere Informationen zum Flat-Modus mit BGP finden Sie unter Netzwerk-Modell im Flat-Modus mit BGP-Unterstützung implementieren.

Erreichbarkeit der Pod-IP-Adresse

Im statischen flachen Netzwerkmodus für IPv4 basiert die Erreichbarkeit der Pod-IP-Adresse auf ARP-Paketen (Address Resolution Protocol). Daher sind Pod-IP-Adressen nur erreichbar, wenn sich die Pods in derselben Ebene-2-Domain befinden. Die Knoten müssen zur selben Ebene-2-Domain gehören. Die IP-Adressen, die Sie mit ClusterCIDRConfigs für Ihre Pods angeben, müssen sich im selben Subnetz wie die Clusterknoten befinden. Die konfigurierten Pod-CIDRs müssen aus dem Subnetz des Knotens stammen. Das Subnetz 222.1.0.0/16 wird beispielsweise von den Knoten in einem Cluster verwendet und wählt dann ein kleineres Subnetz innerhalb des Subnetzes für die Pods aus, 222.1.2.0/24. Achten Sie darauf, dass keine andere Ressource in Ihrem Cluster eine IP-Adresse aus dem Bereich verwendet, der Ihren Pods zugewiesen ist.

Im folgenden Abschnitt wird die Konfiguration für Flachbildfernseher-Netzwerke für IPv4 beschrieben.

So implementieren Sie ein statisches Flat-Mode-Netzwerk

Standardmäßig werden Anthos on Bare Metal-Cluster im Netzwerk im Inselmodus erstellt. In diesem Abschnitt wird beschrieben, wie Sie ein Flat-Mode-Netzwerk für Ihren Cluster einrichten.

Nehmen Sie die folgenden Änderungen an der Clusterkonfigurationsdatei vor, um einen Cluster mit einem Flat-Mode-Netzwerkmodell bereitzustellen:

Ein flaches Netzwerk kann nur für einen Cluster während der Clustererstellung aktiviert werden. So erstellen Sie einen neuen Cluster im Flat-Mode-Netzwerk:

  1. Fügen Sie in der Clusterkonfigurationsdatei clusterNetwork.flatIPv4 hinzu und setzen Sie sie auf true.

    Wenn Sie das Flat-Mode-Netzwerk aktivieren, wird der in der Clusterkonfigurationsdatei (clusterNetwork.pods.cidrBlocks) angegebene Pod-CIDR ignoriert.

  2. Hängen Sie ein ClusterCIDRConfig-Manifest an die Clusterkonfigurationsdatei an.

    Geben Sie im ClusterCIDRConfig-Manifest die folgenden Informationen an:

    • metadata.namespace ist der Namespace Ihres Clusters.

    • spec.ipv4.cidr ist der Bereich der IP-Adressen im CIDR-Blockformat, der für Pods in Ihrem Cluster verwendet werden soll. Dieser Bereich muss aus demselben Subnetz wie die Clusterknoten stammen.

    • perNodeMaskSize: Die Preflight-Prüfungen für die Clustererstellung prüfen, ob der Wert perNodeMaskSize ausreicht, um die Anzahl der in maxPodsPerNode angegebenen Pods bereitzustellen.

    • nodeSelector: Wenn keine Knotenlabels mit dem Wert nodeSelector übereinstimmen, bleibt der Knotenabgleich ausstehend und die Clustererstellung wird nicht abgeschlossen.

Der folgende Auszug aus einer Clusterkonfigurationsdatei zeigt, wie Flat-Mode-Netzwerke ohne BGP-Unterstützung implementiert werden. Die in diesem Auszug enthaltenen CIDRs sind nur Beispiele. Sie müssen sie durch Ihre eigenen CIDRs ersetzen. Achten Sie beim Ersetzen der CIDRs durch Ihre eigenen darauf, dass sie die Kriterien für die Erreichbarkeit von Pods erfüllen, wie unter Erreichbarkeit der Pod-IP-Adresse beschrieben.

---
apiVersion: baremetal.cluster.gke.io/v1
kind: Cluster
metadata:
  name: flat-mode
  namespace: cluster-flat-mode
spec:
... (other cluster config omitted)

...
  # Cluster networking configuration
  clusterNetwork:
    flatIPv4: true
    services:
      cidrBlocks:
      - 10.96.0.0/12
... (other cluster config omitted)

...
---
apiVersion: baremetal.cluster.gke.io/v1alpha1
kind: ClusterCIDRConfig
metadata:
  name: cluster-wide-1
  namespace: cluster-flat-mode
spec:
  ipv4:
    cidr: "222.1.0.0/16"
    perNodeMaskSize: 24

Beschränkungen

Beim statischen Flat-Mode-Netzwerk für Anthos-Cluster auf Bare Metal gelten die folgenden Einschränkungen:

  • Pods mit Flat-Mode-Netzwerken sind innerhalb der einzelnen Ebene-2-Domain erreichbar. Alle anderen Maschinen, die sich nicht im Cluster, aber in derselben Layer-2-Domain befinden, können die Pods ebenfalls erreichen. Diese Einschränkung gilt auch für IPv6, wenn Dual-Stack-Cluster erstellt werden und sich IPv6 im Flat-Modus ohne BGP befindet. Weitere Informationen finden Sie unter Erreichbarkeit der Pod-IP-Adresse.

  • Die Anthos-Cluster auf Bare-Metal-IPAM-Controller erfassen die Verfügbarkeit von IP-Adressen innerhalb der konfigurierten Pod-CIDRs. Die von anderen Geräten verwendeten IP-Adressen werden nicht erfasst. Daher dürfen keine anderen IP-Adressen in der Ebene-2-Domain die POD-CIDRs beeinträchtigen. Weitere Informationen finden Sie unter Erreichbarkeit der Pod-IP-Adresse.