Kubernetes - Libellés et sélecteurs

Étiquettes

Les étiquettes sont des paires clé-valeur qui sont attachées aux pods, au contrôleur de réplication et aux services. Ils sont utilisés comme attributs d'identification pour des objets tels que les pods et le contrôleur de réplication. Ils peuvent être ajoutés à un objet au moment de la création et peuvent être ajoutés ou modifiés au moment de l'exécution.

Sélecteurs

Les étiquettes n'offrent pas de caractère unique. En général, on peut dire que de nombreux objets peuvent porter les mêmes étiquettes. Le sélecteur d'étiquettes est une primitive de regroupement de base dans Kubernetes. Ils sont utilisés par les utilisateurs pour sélectionner un ensemble d'objets.

L'API Kubernetes prend actuellement en charge deux types de sélecteurs -

  • Sélecteurs basés sur l'égalité
  • Sélecteurs basés sur des ensembles

Sélecteurs basés sur l'égalité

Ils permettent le filtrage par clé et valeur. Les objets correspondants doivent satisfaire toutes les étiquettes spécifiées.

Sélecteurs basés sur des ensembles

Les sélecteurs basés sur des ensembles permettent de filtrer les clés en fonction d'un ensemble de valeurs.

apiVersion: v1
kind: Service
metadata:
   name: sp-neo4j-standalone
spec:
   ports:
      - port: 7474
      name: neo4j
   type: NodePort
   selector:
      app: salesplatform ---------> 1
      component: neo4j -----------> 2

Dans le code ci-dessus, nous utilisons le sélecteur d'étiquette comme app: salesplatform et composant comme component: neo4j.

Une fois que nous exécutons le fichier en utilisant le kubectl commande, il créera un service avec le nom sp-neo4j-standalone qui communiquera sur le port 7474. Le ype est NodePort avec le nouveau sélecteur d'étiquette comme app: salesplatform et component: neo4j.