Pour acheminer le trafic externe vers les espaces s'exécutant dans un cluster TKG 2.0, créez un service de type LoadBalancer. Le service d'équilibrage de charge expose une adresse IP publique à partir de laquelle le trafic entrant est acheminé vers des espaces.

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 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"
    
  2. Appliquez le fichier YAML.
    kubectl apply -f nginx-lbsvc.yaml
  3. 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
    
  4. À 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.