

 **Unterstützung für die Verbesserung dieser Seite beitragen** 

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Um zu diesem Benutzerhandbuch beizutragen, wählen Sie den GitHub Link **Diese Seite bearbeiten auf**, der sich im rechten Bereich jeder Seite befindet.

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Konfiguration von Cilium BGP für Hybridknoten
<a name="hybrid-nodes-cilium-bgp"></a>

In diesem Thema wird beschrieben, wie Sie Cilium Border Gateway Protocol (BGP) für Amazon EKS Hybrid Nodes konfigurieren. Die BGP-Funktionalität von Cilium heißt [Cilium BGP Control Plane](https://docs.cilium.io/en/stable/network/bgp-control-plane/bgp-control-plane/) und kann verwendet werden, um Pod- und Serviceadressen in Ihrem On-Premises-Netzwerk bekannt zu geben. Alternative Methoden, um Pod-CIDRs in Ihrem On-Premises-Netzwerk routingfähig zu machen, finden Sie unter [Routingfähige Fern-Pod-CIDRs](hybrid-nodes-concepts-kubernetes.md#hybrid-nodes-concepts-k8s-pod-cidrs).

## Cilium BGP konfigurieren
<a name="hybrid-nodes-cilium-bgp-configure"></a>

### Voraussetzungen
<a name="_prerequisites"></a>
+ Cilium wurde gemäß den Anweisungen in [CNI für Hybridknoten konfigurieren](hybrid-nodes-cni.md) installiert.

### Verfahren
<a name="_procedure"></a>

1. Um BGP mit Cilium zu verwenden und Pod- oder Service-Adressen in Ihrem On-Premises-Netzwerk bekannt zu geben, muss Cilium mit `bgpControlPlane.enabled: true` installiert sein. Wenn Sie BGP für eine vorhandene Cilium-Bereitstellung aktivieren, müssen Sie den Cilium-Operator neu starten, um die BGP-Konfiguration anzuwenden, falls BGP zuvor nicht aktiviert wurde. Sie können in Ihren Helm-Werten `operator.rollOutPods` auf `true` setzen, um den Cilium-Operator als Teil des Helm-Installations-/Upgrade-Prozesses neu zu starten.

   ```
   helm upgrade cilium oci://public.ecr.aws/eks/cilium/cilium \
     --namespace kube-system \
     --reuse-values \
     --set operator.rollOutPods=true \
     --set bgpControlPlane.enabled=true
   ```

1. Bestätigen Sie, dass der Cilium-Operator und die Agenten neu gestartet wurden und ausgeführt werden.

   ```
   kubectl -n kube-system get pods --selector=app.kubernetes.io/part-of=cilium
   ```

   ```
   NAME                               READY   STATUS    RESTARTS   AGE
   cilium-grwlc                       1/1     Running   0          4m12s
   cilium-operator-68f7766967-5nnbl   1/1     Running   0          4m20s
   cilium-operator-68f7766967-7spfz   1/1     Running   0          4m20s
   cilium-pnxcv                       1/1     Running   0          6m29s
   cilium-r7qkj                       1/1     Running   0          4m12s
   cilium-wxhfn                       1/1     Running   0          4m1s
   cilium-z7hlb                       1/1     Running   0          6m30s
   ```

1. Erstellen Sie eine Datei mit dem Namen `cilium-bgp-cluster.yaml` mit einer `CiliumBGPClusterConfig`-Definition. Möglicherweise müssen Sie die folgenden Informationen von Ihrem Netzwerkadministrator einholen.
   + Konfigurieren Sie `localASN` mit der ASN für die Knoten, auf denen Cilium ausgeführt wird.
   + Konfigurieren Sie `peerASN` mit der ASN für Ihren On-Premises-Router.
   + Konfigurieren Sie `peerAddress` mit der On-Premises-Router-IP, mit der jeder Knoten, auf dem Cilium ausgeführt wird, eine Peering-Verbindung herstellt.

     ```
     apiVersion: cilium.io/v2alpha1
     kind: CiliumBGPClusterConfig
     metadata:
       name: cilium-bgp
     spec:
       nodeSelector:
         matchExpressions:
         - key: eks.amazonaws.com/compute-type
           operator: In
           values:
           - hybrid
       bgpInstances:
       - name: "rack0"
         localASN: NODES_ASN
         peers:
         - name: "onprem-router"
           peerASN: ONPREM_ROUTER_ASN
           peerAddress: ONPREM_ROUTER_IP
           peerConfigRef:
             name: "cilium-peer"
     ```

1. Wenden Sie die Cilium-BGP-Cluster-Konfiguration auf Ihren Cluster an.

   ```
   kubectl apply -f cilium-bgp-cluster.yaml
   ```

1. Erstellen Sie eine Datei mit dem Namen `cilium-bgp-peer.yaml` mit der `CiliumBGPPeerConfig`-Ressource, die eine BGP-Peer-Konfiguration definiert. Mehrere Peers können dieselbe Konfiguration freigeben und auf die gemeinsame `CiliumBGPPeerConfig`-Ressource verweisen. Eine vollständige Liste der Konfigurationsoptionen finden Sie in der [BGP-Peer-Konfiguration](https://docs.cilium.io/en/latest/network/bgp-control-plane/bgp-control-plane-v2/#bgp-peer-configuration) in der Cilium-Dokumentation.

   Die Werte für die folgenden Cilium-Peer-Einstellungen müssen mit denen des On-Premises-Routers übereinstimmen, mit dem Sie das Peering durchführen.
   + Konfigurieren Sie `holdTimeSeconds`, das festlegt, wie lange ein BGP-Peer auf eine Keepalive- oder Aktualisierungsnachricht wartet, bevor die Sitzung als unterbrochen erklärt wird. Der Standardwert ist 90 Sekunden.
   + Konfigurieren Sie `keepAliveTimeSeconds`, um festzustellen, ob ein BGP-Peer noch erreichbar ist und die BGP-Sitzung aktiv ist. Standardmäßig ist ein Zeitraum von 30 Sekunden festgelegt.
   + Konfigurieren Sie `restartTimeSeconds`, das die Zeit bestimmt, nach der die BGP-Steuerebene von Cilium die BGP-Sitzung nach einem Neustart wiederherstellen soll. Standardmäßig sind 120 Sekunden festgelegt.

     ```
     apiVersion: cilium.io/v2alpha1
     kind: CiliumBGPPeerConfig
     metadata:
       name: cilium-peer
     spec:
       timers:
         holdTimeSeconds: 90
         keepAliveTimeSeconds: 30
       gracefulRestart:
         enabled: true
         restartTimeSeconds: 120
       families:
         - afi: ipv4
           safi: unicast
           advertisements:
             matchLabels:
               advertise: "bgp"
     ```

1. Wenden Sie die Cilium BGP-Peer-Konfiguration auf Ihren Cluster an.

   ```
   kubectl apply -f cilium-bgp-peer.yaml
   ```

1. Erstellen Sie eine Datei mit dem Namen `cilium-bgp-advertisement-pods.yaml` und einer `CiliumBGPAdvertisement`-Ressource, um die Pod-CIDRs in Ihrem On-Premises-Netzwerk bekannt zu machen.
   + Die `CiliumBGPAdvertisement`-Ressource wird verwendet, um Ankündigungstypen und die zugehörigen Attribute zu definieren. Im folgenden Beispiel wird Cilium so konfiguriert, dass nur Pod-CIDRs bekannt gemacht werden. Weitere Informationen zum Konfigurieren von Cilium zum Bekanntgeben von Service-Adressen finden Sie in den Beispielen in [Servicetyp LoadBalancer](hybrid-nodes-ingress.md#hybrid-nodes-ingress-cilium-loadbalancer) und [Cilium-Load-Balancing im Cluster](hybrid-nodes-load-balancing.md#hybrid-nodes-service-lb-cilium).
   + Jeder Hybridknoten, auf dem der Cilium-Agent ausgeführt wird, ist mit dem Upstream-BGP-fähigen Router verbunden. Jeder Knoten gibt den ihm zugehörigen Pod-CIDR-Bereich bekannt, wenn Ciliums `advertisementType` wie im folgenden Beispiel auf `PodCIDR` gesetzt ist. Weitere Informationen finden Sie in der [BGP-Anzeigenkonfiguration](https://docs.cilium.io/en/stable/network/bgp-control-plane/bgp-control-plane-v2/#bgp-advertisements) in der Cilium-Dokumentation.

     ```
     apiVersion: cilium.io/v2alpha1
     kind: CiliumBGPAdvertisement
     metadata:
       name: bgp-advertisement-pods
       labels:
         advertise: bgp
     spec:
       advertisements:
         - advertisementType: "PodCIDR"
     ```

1. Wenden Sie die Cilium BGP-Anzeigenkonfiguration auf Ihren Cluster an.

   ```
   kubectl apply -f cilium-bgp-advertisement-pods.yaml
   ```

1. Sie können mit dem `cilium bgp peers`-Befehl überprüfen, ob das BGP-Peering mit der [Cilium CLI](https://docs.cilium.io/en/stable/gettingstarted/k8s-install-default/#install-the-cilium-cli) funktioniert. In der Ausgabe sollten die korrekten Werte für Ihre Umgebung und der Sitzungsstatus `established` angezeigt werden. Weitere Informationen zur Fehlerbehebung finden Sie im [Handbuch zur Fehlerbehebung und zum Betrieb](https://docs.cilium.io/en/latest/network/bgp-control-plane/bgp-control-plane/#troubleshooting-and-operation-guide) in der Cilium-Dokumentation.

   In den folgenden Beispielen gibt es fünf Hybridknoten, in denen der Cilium-Agent ausgeführt wird, und jeder Knoten gibt den Pod-CIDR-Bereich bekannt, den er besitzt.

   ```
   cilium bgp peers
   ```

   ```
   Node                   Local AS    Peer AS               Peer Address        Session State   Uptime     Family         Received   Advertised
   mi-026d6a261e355fba7   NODES_ASN
                     ONPREM_ROUTER_ASN
                     ONPREM_ROUTER_IP    established     1h18m58s   ipv4/unicast   1          2
   mi-082f73826a163626e   NODES_ASN
                     ONPREM_ROUTER_ASN
                     ONPREM_ROUTER_IP    established     1h19m12s   ipv4/unicast   1          2
   mi-09183e8a3d755abf6   NODES_ASN
                     ONPREM_ROUTER_ASN
                     ONPREM_ROUTER_IP    established     1h18m47s   ipv4/unicast   1          2
   mi-0d78d815980ed202d   NODES_ASN
                     ONPREM_ROUTER_ASN
                     ONPREM_ROUTER_IP    established     1h19m12s   ipv4/unicast   1          2
   mi-0daa253999fe92daa   NODES_ASN
                     ONPREM_ROUTER_ASN
                     ONPREM_ROUTER_IP    established     1h18m58s   ipv4/unicast   1          2
   ```

   ```
   cilium bgp routes
   ```

   ```
   Node                   VRouter       Prefix           NextHop   Age         Attrs
   mi-026d6a261e355fba7   NODES_ASN     10.86.2.0/26     0.0.0.0   1h16m46s   [{Origin: i} {Nexthop: 0.0.0.0}]
   mi-082f73826a163626e   NODES_ASN     10.86.2.192/26   0.0.0.0   1h16m46s   [{Origin: i} {Nexthop: 0.0.0.0}]
   mi-09183e8a3d755abf6   NODES_ASN     10.86.2.64/26    0.0.0.0   1h16m46s   [{Origin: i} {Nexthop: 0.0.0.0}]
   mi-0d78d815980ed202d   NODES_ASN     10.86.2.128/26   0.0.0.0   1h16m46s   [{Origin: i} {Nexthop: 0.0.0.0}]
   mi-0daa253999fe92daa   NODES_ASN     10.86.3.0/26     0.0.0.0   1h16m46s   [{Origin: i} {Nexthop: 0.0.0.0}]
   ```