Partage de technologie

Types et utilisation du service exposé dans k8s

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

1. Description
Dans Kubernetes, il existe plusieurs manières différentes d’exposer les services au trafic externe. Ces modes sont déterminés en définissant le champ spec.type du service.
2. Explication détaillée
1. ClusterIP
Définition : Type par défaut, le service n'est accessible qu'au sein du cluster.
Fonction : exposez les services via l'adresse IP interne du cluster.
Exemple:

spec:
  type: ClusterIP
  ports:
    - port: 80
      targetPort: 8080
  • 1
  • 2
  • 3
  • 4
  • 5

2.NodePort
Définition : ouvrez un port élevé (généralement 30000-32767) sur chaque nœud pour permettre au trafic externe d'accéder au service.
Fonction : accédez au service via l'adresse IP et le nodePort de n'importe quel nœud.
Exemple:

spec:
  type: NodePort
  ports:
    - port: 80
      targetPort: 8080
      nodePort: 30007
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

3. Équilibreur de charge

Définition : L'équilibreur de charge fourni par la plateforme cloud attribue une adresse IP externe au service.
Fonction : accédez au service via cette adresse IP, adaptée aux situations où un équilibrage de la charge du trafic externe est requis.
Exemple:

spec:
  type: LoadBalancer
  ports:
    - port: 80
      targetPort: 8080
  selector:
    app: my-app
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

4. Nom externe

Définition : mappez un service à un nom de domaine externe (tel qu'un service de base de données).
Fonction : accédez au service via le nom de domaine externe spécifié, plutôt que via l'adresse IP interne du cluster ou l'adresse IP du nœud.
Exemple:

spec:
  type: ExternalName
  externalName: example.com
  • 1
  • 2
  • 3

2. Résumé
ClusterIP : le type de service par défaut, accessible uniquement au sein du cluster.
NodePort : ouvrez un port sur chaque nœud pour permettre au trafic externe d'accéder aux services.
LoadBalancer : l'équilibreur de charge fourni par la plate-forme cloud alloue une adresse IP externe, adaptée aux situations où un équilibrage de charge est requis.
ExternalName : mappe le service à un nom de domaine externe, adapté aux scénarios nécessitant un accès à des services externes.