Um einen externen Load Balancer in einem Tanzu Kubernetes-Cluster bereitzustellen, können Sie einen Dienst vom Typ „LoadBalancer“ erstellen. Der Load Balancer stellt eine öffentliche IP-Adresse bereit. Der Datenverkehr vom externen Load Balancer kann an Cluster-Pods weitergeleitet werden.

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

Prozedur

  1. Erstellen Sie eine geeignete Rollenbindung zum privilegierten Standard-PSP. Weitere Informationen hierzu finden Sie unter Beispiel für Rollenbindungen für die Pod-Sicherheitsrichtlinie.
  2. 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"
    
  3. Wenden Sie die YAML an.
    kubectl apply -f nginx-lbsvc.yaml
  4. Ü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
    
  5. 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.