Um externen Datenverkehr an Pods weiterzuleiten, die in einem TKG 2.0-Cluster ausgeführt werden, erstellen Sie einen Dienst vom Typ „LoadBalancer“. Der Lastausgleichsdienst macht eine öffentliche IP-Adresse verfügbar, von der eingehender Datenverkehr an Pods weitergeleitet wird.

Sie können einen externen Load Balancer für Kubernetes-Pods bereitstellen, die als Dienste verfügbar gemacht werden. Beispielsweise können Sie einen Nginx-Container bereitstellen und als Kubernetes-Dienst vom Typ „LoadBalancer“ zur Verfügung stellen.

Voraussetzungen

  • Sehen Sie sich die Details zum Diensttyp „LoadBalancer“ in der Dokumentation zu Kubernetes an.
  • Stellen Sie einen TKG-Cluster bereit.
  • Stellen Sie eine Verbindung mit dem TKG-Cluster her.

Prozedur

  1. Erstellen Sie die folgende nginx-lbsvc.yaml-YAML-Datei.
    Diese YAML-Datei definiert einen Kubernetes-Dienst vom Typ „LoadBalancer“ und stellt einen Nginx-Container als externen Load Balancer für den Dienst bereit.
    kind: Service
    apiVersion: v1
    metadata:
      name: srvclb-ngnx
    spec:
      selector:
        app: hello
        tier: frontend
      ports:
      - protocol: "TCP"
        port: 80
        targetPort: 80
      type: LoadBalancer
    ---
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: loadbalancer
    spec:
      replicas: 2
      selector:
        matchLabels:
          app: hello
      template:
        metadata:
          labels:
            app: hello
            tier: frontend
        spec:
          containers:
          - name: nginx
            image: "nginxdemos/hello"
    
  2. Wenden Sie die YAML an.
    kubectl apply -f nginx-lbsvc.yaml
  3. Überprüfen Sie die Bereitstellung des Nginx-Diensts.
    kubectl get services
    srvclb-ngnx ist mit einer externen und internen IP-Adresse ausgestattet.
    NAME          TYPE           CLUSTER-IP       EXTERNAL-IP     PORT(S)        AGE
    srvclb-ngnx   LoadBalancer   10.11.12.19      10.19.15.89     80:30818/TCP   18m
    
  4. Geben Sie über einen Browser die externe IP-Adresse für den Nginx-LoadBalancer-Dienst ein.
    Sie sehen das Banner mit der NGINX-Meldung und Details des Lastausgleichsdiensts.