Sobes.tech
Junior

Ce sunt etichetele?

sobes.tech AI

Răspuns de la AI

Etichetele (Labels) în Kubernetes sunt perechi cheie/valoare care sunt atașate obiectelor (de exemplu, Pods, Services, Deployments). Ele sunt folosite pentru organizarea și selectarea subgrupurilor de obiecte. Etichetele nu au o semnificație intrinsecă pentru Kubernetes în sine, dar sunt importante pentru utilizatori pentru identificare și grupare.

Exemple de utilizare:

  • Definirea mediului: environment: production, environment: development
  • Identificarea aplicației: app: my-web-app
  • Definirea versiunii: version: v1.2.3
  • Identificarea nivelului de serviciu: tier: frontend, tier: backend

Selectorii de etichete (Label Selectors) sunt folosiți în solicitările API pentru a selecta grupuri de obiecte pe baza etichetelor lor. De exemplu, un Service poate folosi un selector de etichete pentru a direcționa traficul doar către Pods cu anumite etichete.

Exemple de selectori:

  • environment=production: Selectează toate obiectele care au eticheta environment cu valoarea production.
  • app in (my-web-app, another-app): Selectează obiecte a căror etichetă app are valoarea my-web-app sau another-app.
  • !environment: Selectează obiecte care nu au eticheta environment.
apiVersion: v1
kind: Pod
metadata:
  name: my-app-pod
  labels: # Etichete aplicate Pod-ului
    app: my-app
    tier: frontend
    environment: development
spec:
  containers:
  - name: my-app-container
    image: my-app-image:latest
apiVersion: v1
kind: Service
metadata:
  name: my-app-service
spec:
  selector: # Selector de etichete pentru alegerea Pods
    app: my-app
    tier: frontend
  ports:
  - protocol: TCP
    port: 80
    targetPort: 8080