Pour provisionner un équilibrage de charge externe dans un cluster Tanzu Kubernetes, vous pouvez créer un service de type LoadBalancer. Le service d'équilibrage de charge expose une adresse IP publique. Le trafic provenant de l'équilibrage de charge externe peut être dirigé vers des espaces de cluster.

Vous pouvez provisionner un équilibrage de charge externe pour les espaces Kubernetes qui sont exposés en tant que services. Par exemple, vous pouvez déployer un conteneur Nginx et l'exposer comme service Kubernetes de type LoadBalancer.

Conditions préalables

Procédure

  1. Créez une liaison de rôle appropriée à la PSP privilégiée par défaut. Reportez-vous à la section Exemples de liaisons de rôle pour la stratégie de sécurité de l'espace.
  2. Créez le fichier YAML nginx-lbsvc.yaml suivant.
    Ce fichier YAML définit un service Kubernetes de type LoadBalancer et déploie un conteneur Nginx en tant qu'équilibrage de charge externe pour le service.
    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. Appliquez le fichier YAML.
    kubectl apply -f nginx-lbsvc.yaml
  4. Vérifiez le déploiement du service Nginx.
    kubectl get services
    srvclb-ngnx est actif avec une adresse IP externe et interne.
    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. À l'aide d'un navigateur, entrez l'adresse IP externe du service LoadBalancer Nginx.
    Vous voyez la bannière de message NGINX et les détails de l'équilibrage de charge.