GDC-Netzwerk betreiben

Zusätzlich zu Kubernetes-Clusterressourcen, APIs und dem standardmäßigen Kubernetes-Pod-Netzwerk können Sie mit GDC zusätzliche Netzwerke in einer GDC-Zone bereitstellen und mit Ihren Netzwerken verbinden. Wenn Sie beispielsweise eine User Plane Function (UPF) verwenden, können Sie ein Radio Access Network (RAN) und ein Data Plane-Netzwerk erstellen, die jeweils über verschiedene Subnetze verfügen, die mit den UPF-Pods verbunden sind.

Weitere Informationen zu Edge Network-Ressourcen finden Sie unter Netzwerk.

EdgeNetwork Blueprints

Dieser Blueprint enthält mehrere benutzerdefinierte Ressourcen, mit denen Nutzer zusätzliche Netzwerke in einer GDC-Zone bereitstellen und konfigurieren und mit ihren Netzwerken verbinden können. Sie können beispielsweise ein OAM-Netzwerk (Operations, Administration, and Maintenance) und ein Signalnetzwerk erstellen, die jeweils mehrere Subnetze haben, die mit den sekundären Schnittstellen der Pods der Netzwerkfunktion verbunden sind. Für den EdgeNetwork-Blueprint werden die folgenden Ressourcen verwendet:

  • EdgeNetwork: Ein virtuelles privates Netzwerk in einer GDC-Zone. Pakete werden innerhalb einer EdgeNetwork unabhängig voneinander weitergeleitet.
  • EdgeRouter: Eine logische Ressource in der GDC-Zone, die BGP-bezogene Parameter für ein EdgeNetwork konfiguriert.
  • EdgeSubnet: Eine L2-Domain, ein L3-Subnetz in einer GDC-Zone. EdgeSubnet wird als VLAN mit einer zugehörigen VLAN-ID im Netzwerk erstellt.
  • EdgeInterconnectAttachment: Konfiguriert eine neue virtuelle Verbindung zwischen einem GDC-Zonenrouter und einem Ihrer Provider Edge-Router (PE-Router). Mit der Anlage können Sie eine EdgeNetwork-Ressource mit einem Netzwerk, z. B. einem VRF (Virtual Routing and Forwarding), in Ihrem Netzwerk verbinden.

Beim Erstellen eines Deployments können Sie eine Blaupause mit den folgenden Parametern in der Datei setters.yaml anpassen:

Parameter Beschreibung
project-id Die Projekt-ID eines Projekts, in dem EdgeNetwork-bezogene Ressourcen verwaltet werden. Sie müssen Edge mit dieser Projekt-ID verknüpfen.
network-name Der Name einer EdgeNetwork-Ressource.
location Die Google Cloud -Region der GDC-Zone. Beispiel: us-west-1.
zone Die GDC-Zone, in der die EdgeNetwork erstellt werden soll.
mtu Die IP-MTU (Maximum Transmission Unit) von EdgeNetwork. Gültige Optionen liegen zwischen 1500 und 9000.
interconnect-attachment-name Der Name des Interconnect-Attachments.
interconnect-attachment-vlanid Die dem Interconnect-Anhang zugewiesene VLAN-ID des getaggten Pakets.
interconnect-attachment-interface-ipv4cidr Die IP-Adresse der EdgeRouter-Schnittstelle, die mit der EdgeInterconnectAttachment-Ressource verbunden ist.
interconnect-attachment-bgppeer-ipv4cidr Die IPv4-Adresse der GDC-Zonen-Peer-Seite der BGP-Sitzung.
subnet-name Der Name der EdgeSubnet-Ressource.
subnet-vlan-id Die VLAN-ID, die einer EdgeSubnet-Ressource zugewiesen ist.
subnet-ipv4cidr Das IPv4-Subnetz für eine EdgeSubnet-Ressource. Die erste IP-Adresse im CIDR (Classless Inter-Domain Routing) ist als Subnetz-Gateway reserviert.
subnet-bgppeer-ipv4cidr Die IP-Adresse des BGP auf der Peerseite. Die IP-Adresse muss sich im selben Subnetz wie die EdgeSubnet-Ressource befinden.

Netzwerk mit zwei Subnetzen konfigurieren

In diesem Abschnitt werden Vorgänge zum Konfigurieren eines Netzwerks mit zwei Subnetzen beschrieben. Das Beispielnetzwerk ran-network hat beispielsweise zwei Subnetze, ranaccess-1 und ranaccess-2. Für Northbound-Verbindungen konfiguriert ran-network zwei Interconnect-Anhänge für die Interconnect-Verbindungen cbae0a11-5d97-4bd6-8a09-e5133bb541ca und a52e2c74-84f2-4a6d-8cd2-7c5b0fc1c031.

EdgeNetwork-Blueprint importieren

  1. Klicken Sie im Navigationsmenü auf Blueprints.
  2. Wählen Sie im Drop-down-Menü den gewünschten Orchestrierungscluster aus.
  3. Klicken Sie auf Aus Mediathek importieren.
  4. Wählen Sie den Blueprint GDCE EdgeNetwork setup aus.
  5. Klicken Sie auf Add Blueprint (Blueprint hinzufügen).
  6. Geben Sie auf der nächsten Seite einen Namen für den Blueprint an. Beispiel: GDCE EdgeNetwork-Einrichtung.
    1. Fügen Sie optional Labels hinzu.
  7. Klicken Sie auf Erstellen. Der Blueprint wird in der Liste Blueprint-Entwürfe angezeigt.

Blueprint bearbeiten

  1. Klicken Sie im Navigationsmenü auf Blueprints > Drafts Blueprint (Blueprints > Blueprint-Entwürfe).
  2. Wählen Sie den Grundriss aus, den Sie bearbeiten möchten. Ein Blueprint-Editor wird geöffnet.
  3. Bearbeiten Sie die Ressourcen nach Ihren Vorgaben.
  4. Klicken Sie anschließend auf Datei speichern.

Blueprint vorschlagen

  1. Klicken Sie im Navigationsmenü auf Blueprints > Drafts Blueprint (Blueprints > Blueprint-Entwürfe). Ein Blueprint-Editor wird angezeigt.
  2. Klicken Sie auf Vorschlagen. Der Status der Blueprint-Aktualisierungen wird auf Proposed (Vorgeschlagen) geändert.

Blueprint genehmigen

  1. Klicken Sie im Navigationsmenü auf Blueprints > Drafts Blueprint.
  2. Klicken Sie neben dem Namen des Blueprints auf das Symbol Aktion.
  3. Wählen Sie Genehmigen aus. Der Blueprint wird unter Genehmigte Blueprints angezeigt.

Interconnect-Informationen abrufen

So rufen Sie die Interconnect-Informationen ab:

  1. Umgebungsvariablen festlegen und exportieren:

    export networkName=NETWORK_NAME
    export MACHINES_LOCATION=MACHINE_LOCATION # value where machines or rack is located. Can be different from cluster location.
    export MACHINES_PROJECT_ID=PROJECT_ID # project in which machines or rack is registered. Can be different from cluster project
    export EDGE_ZONE=ZONE # Edge zone in which machines or rack is located
    

    Ersetzen Sie Folgendes:

    • NETWORK_NAME: Der Name des Netzwerks.
    • MACHINE_LOCATION: Der Standort Ihres Computers oder Racks. Dieser Wert kann sich vom Clusterstandort unterscheiden.
    • PROJECT_ID: Das Projekt, in dem die Maschine oder das Rack registriert ist. Dieser Wert kann sich vom Clusterprojekt unterscheiden.
    • ZONE: Die Edge-Zone, in der sich die Maschinen oder das Rack befinden.
  2. Rufen Sie die Interconnect-Informationen ab:

    gcloud alpha edge-cloud networking interconnects list --zone=$EDGE_ZONE --location=$MACHINES_LOCATION --project=$MACHINES_PROJECT_ID
    

    Die entsprechende Ausgabe sieht etwa so aus: Notieren Sie sich den Namen und die physischen Ports des Interconnect, die auf den Interconnect-Anhang mit dem Netzwerk angewendet werden sollen.

    NAME UUID
    DEVICECLOUDRESOURCENAME
    PHYSICALPORTS
    cbae0a11-5d97-4bd6-8a09-e5133bb541ca cbae0a11-5d97-4bd6-8a09-e5133bb541ca projects/81907970660/locations/us-central1-edge-den8/switches/et19.den97
    
    HundredGigE0/0/0/0,HundredGigE0/0/0/23
    a52e2c74-84f2-4a6d-8cd2-7c5b0fc1c031 a52e2c74-84f2-4a6d-8cd2-7c5b0fc1c031 projects/81907970660/locations/us-central1-edge-den8/switches/et19.den97 HundredGigE0/0/0/1,HundredGigE0/0/0/22
    37e5da97-1a3f-4935-9d9b-0a8cea589644 37e5da97-1a3f-4935-9d9b-0a8cea589644 projects/81907970660/locations/us-central1-edge-den8/switches/et20.den97 HundredGigE0/0/0/0,HundredGigE0/0/0/23
    71b54ef5-6b12-4b03-b8ce-eb88196f8a93 71b54ef5-6b12-4b03-b8ce-eb88196f8a93 projects/81907970660/locations/us-central1-edge-den8/switches/et20.den97 HundredGigE0/0/0/1,HundredGigE0/0/0/22
    

EdgeNetwork-Bereitstellung

EdgeNetwork-Deployment erstellen

  1. Klicken Sie im Navigationsmenü auf Blueprints > Genehmigte Blueprints.
  2. Klicken Sie auf die EdgeNetwork-Blaupause, die Sie bereitstellen möchten.
  3. Klicken Sie auf Deployment erstellen.
  4. Geben Sie einen Namen für die Bereitstellung an.
  5. Klicken Sie auf Deployment erstellen. Die Bereitstellung wird unter Bereitstellung als Entwurf angezeigt.

EdgeNetwork-Deployment bearbeiten

  1. Klicken Sie im Navigationsmenü auf Blueprints.
  2. Klicken Sie auf die EdgeNetwork-Blaupause, die Sie bearbeiten möchten. Ein Bereitstellungseditor wird angezeigt.
  3. Bearbeiten Sie die Datei setters.yaml. Weitere Informationen zu den einzelnen Feldern in der Datei finden Sie unter EdgeNetwork-Blaupausen. Die folgende setters.yaml-Datei zeigt eine vollständige Konfiguration:

    apiVersion: v1
    kind: ConfigMap
    metadata: # kpt-merge: /setters
      name: setters
      annotations:
        config.kubernetes.io/local-config: "true"
        internal.kpt.dev/upstream-identifier:'|ConfigMap|default|setters'
    data:
      # The project managing the GDC Edge machines.
      project-id: tna-testing-01
      # Name of the network
      network-name: ranprod
      # Location in which to create the resources
      location: us-central1
      # Zone to create in the resources
      zone: us-central1-edge-den8
      # Details of subnets for southbound peering
      # Details of subnet 1
      # Name of the subnet
      subnet1-name: ranaccess-prod1
      # vlanId for the subnet
      subnet1-vlanid: 2142
      # ipv4cidr for the subnet
      subnet1-ipv4cidr: 10.142.0.0/24
      # ipv4cidr for the subnet bgppeer
      subnet1-bgppeer-ipv4cidr: 10.142.0.0/24
      # Details of subnets for southbound peering
      # Details of subnet 1
      # Name of the subnet
      subnet2-name: ranaccess-prod2
      # vlanId for the subnet
      subnet2-vlanid: 2132
      # ipv4cidr for the subnet
      subnet2-ipv4cidr: 10.132.0.0/24
      # ipv4cidr for the subnet bgppeer
      subnet2-bgppeer-ipv4cidr: 10.132.0.0/24
      # Interconnect attachments for northbound peering
      # Details of interconnect attachment 1
      # Name of the interconnect
      interconnect1-name: cbae0a11-5d97-4bd6-8a09-e5133bb541ca
      # Name of the interconnect attachment
      interconnect1-attachment-name: prod1-ran
      # valnId of the interconnect attachment
      interconnect1-attachment-vlanid: 2010
      # ip4vcidr for the interconnect attachment interface
      interconnect1-attachment-interface-ipv4cidr:10.65.128.17/31  # ipv4cidr for the interconnect attachment bgppeer
      interconnect1-attachment-bgppeer-ipv4cidr: 10.65.128.16/31
      # Interconnect attachments for northbound peering
      # Details of interconnect attachment 1
      # Name of the interconnect
      interconnect2-name: a52e2c74-84f2-4a6d-8cd2-7c5b0fc1c031
      # Name of the interconnect attachment
      interconnect2-attachment-name: prod2-ran
      # valnId of the interconnect attachment
      interconnect2-attachment-vlanid: 2020
      # ip4vcidr for the interconnect attachment interface
      Interconnect2-attachment-interface-ipv4cidr:10.65.128.13/31 # ipv4cidr for the interconnect attachment bgppeer
      interconnect2-attachment-bgppeer-ipv4cidr: 10.65.128.12/31
    
  4. Klicken Sie anschließend auf Datei speichern.

EdgeNetwork-Bereitstellung anwenden

  1. Klicken Sie im Navigationsmenü auf Bereitstellungen.
  2. Wählen Sie die EdgeNetwork-Bereitstellung aus, die Sie anwenden möchten.
  3. Klicken Sie auf Bereitstellen.
  4. Bestätigen Sie die Bereitstellung. Die Bereitstellung wird unter Angewendete Bereitstellung angezeigt.

EdgeNetwork-Blueprint bestätigen

So prüfen Sie den Erstellungsstatus von EdgeNetwork-Ressourcen:

kubectl

  1. Generieren Sie kube-credentials für den Orchestrierungscluster, um die kubectl-Befehlszeile zu verwenden:

    gcloud anthos config controller get-credentials ORCHESTRATION_CLUSTER_NAME
    

    Ersetzen Sie ORCHESTRATION_CLUSTER_NAME durch den Namen des Orchestrierungsclusters.

  2. Warten Sie 30 bis 40 Minuten, bis die Ressourcen verarbeitet wurden.

  3. Rufen Sie den Status der Ressourcen auf:

    kubectl describe EdgeNetwork ${networkName} --namespace=tna-config-control
    

    Die entsprechende Ausgabe sieht etwa so aus: Achten Sie auf die message und reason in status.conditions.

    Name: ranprod
    Namespace: tna-config-control
    ....
    API Version: config.cloud.google.com/v1alpha1
    Kind: EdgeNetwork
    ....
    Spec:
      Mtu: 9000
      Network Location: us-central1
      Network Zone: us-central1-edge-den8
    Status:
      Conditions:
        Last Transition Time: 2023-03-23T10:08:40Z
        Message: The resource is up to date
        Reason: UpToDate
        Status: True
        Type: Ready
      Create Time: 2023-03-23T10:08:36.582479587Z
      Self Link:
      //gkehub.googleapis.com/v1/projects/tna-testing-01/locations/us-central1/zone s/us-central1-edge-den8/networks/ranprod
      Update Time: 2023-03-23T10:08:40.010036655Z
    Events: <none>
    
  4. Informationen zum erstellten Edge-Router abrufen:

    kubectl describe EdgeRouter router-${networkName} --namespace=tna-config-control
    

    Die Ausgabe sieht etwa so aus:

    Name: router-ranprod
    Namespace: tna-config-control
    ...
    API Version: config.cloud.google.com/v1alpha1
    Kind: EdgeRouter
    ....
    Spec:
    .....
      Network:
        External: projects/tna-testing-01/locations/us-central1/zones/us-central1-edge-den8/net works/ranprod
        Object Ref:
          API Group:
          Kind:
          Name:
          Namespace:
      Router Location: us-central1
      Router Zone: us-central1-edge-den8
    Status:
      Bgp Peer:
        Interface: inf-ranaccess-prod1
        Name: 2142-bgp0
        Peer Asn: 3300
        peerIpv4Cidr: 10.142.0.0/24
        Interface: inf-ranaccess-prod2
        Name: 2132-bgp0
        Peer Asn: 3300
        peerIpv4Cidr: 10.132.0.0/24
        Interface: vlan-2010-prod1-ran
        interfaceIpv4Cidr: 10.65.128.17/31
        Name: vlan-2010-bgp0
        Peer Asn: 577
        peerIpv4Cidr: 10.65.128.16/31
        Interface: vlan-2020-prod2-ran
        interfaceIpv4Cidr: 10.65.128.13/31
        Name: vlan-2020-bgp1
        Peer Asn: 577
        peerIpv4Cidr: 10.65.128.12/31
      Conditions:
        Last Transition Time: 2023-03-23T10:47:12Z
        Message: The resource is up to date
        Reason: UpToDate
        Status: True
        Type: Ready
      Create Time: 2023-03-23T10:08:38.995964419Z
      Interface:
        Name: inf-ranaccess-prod1
        Subnetwork:
          API Group: config.cloud.google.com
          Kind: EdgeSubnet
          Name: ranaccess-prod1
          Namespace: tna-config-control
        Name: inf-ranaccess-prod2
        Subnetwork:
          API Group: config.cloud.google.com
          Kind: EdgeSubnet
          Name: ranaccess-prod2
          Namespace: tna-config-control
        ipv4Cidr: 10.65.128.17/31
        Linked Interconnect Attachment:
          API Group: config.cloud.google.com
          Kind: EdgeInterconnectAttachment
          Name: prod1-ran
          Namespace: tna-config-control
        Name: vlan-2010-prod1-ran
        ipv4Cidr: 10.65.128.13/31
        Linked Interconnect Attachment:
          API Group: config.cloud.google.com
          Kind: EdgeInterconnectAttachment
          Name: prod2-ran
          Namespace: tna-config-control
        Name: vlan-2020-prod2-ran
      Self Link: //gkehub.googleapis.com/v1/projects/tna-testing-01/locations/us-central1/zone s/us-central1-edge-den8/routers/router-ranprod
      State: STATE_RUNNING
      Update Time: 2023-03-23T10:36:58.126306756Z
    Events: <none>
    

gcloud

  • Informationen zum erstellten Edge-Router abrufen:

    gcloud edge-cloud networking routers describe router-${networkName} \ --zone=$EDGE_ZONE \
    --location=$LOCATION \
    --project=GDCE_MACHINES_PROJECT
    

    Ersetzen Sie GDCE_MACHINES_PROJECT durch die Projekt-ID, unter der die GDC-Maschinen registriert sind.

    Wiederholen Sie diesen Schritt für jedes Netzwerk, um Netzwerke für die User Plane Function (UPF) zu konfigurieren.

EdgeNetwork-Deployment löschen

  1. Klicken Sie im Navigationsmenü auf Bereitstellungen > Angewendete Bereitstellungen.
  2. Wählen Sie die EdgeNetwork-Blaupause aus, die Sie löschen möchten.
  3. Klicken Sie auf Löschen.
  4. Bestätigen Sie den Löschvorgang.
  5. Warten Sie 30 bis 45 Minuten, bis der Löschvorgang abgeschlossen ist.
  6. Wiederholen Sie die Schritte unter EdgeNetwork-Deployment bearbeiten, um sicherzugehen, dass Sie die Ressourcen gelöscht haben.