Sobes.tech
Junior

Wat zijn labels?

sobes.tech AI

Antwoord van AI

Labels in Kubernetes zijn key/value-paren die aan objecten (bijvoorbeeld Pods, Services, Deployments) worden gekoppeld. Ze worden gebruikt om subsets van objecten te organiseren en te selecteren. Labels hebben geen intrinsieke betekenis voor Kubernetes zelf, maar zijn belangrijk voor gebruikers voor identificatie en groepering.

Voorbeelden van gebruik:

  • Omgevingsdefinitie: environment: production, environment: development
  • Toepassingsidentificatie: app: my-web-app
  • Versie-definitie: version: v1.2.3
  • Serviceniveau-identificatie: tier: frontend, tier: backend

Label Selectors worden gebruikt in API-verzoeken om groepen objecten te selecteren op basis van hun labels. Bijvoorbeeld, een Service kan een label selector gebruiken om verkeer alleen naar Pods met bepaalde labels te routeren.

Voorbeelden van selectors:

  • environment=production: Selecteert alle objecten die het label environment met de waarde production hebben.
  • app in (my-web-app, another-app): Selecteert objecten waarvan het label app de waarde my-web-app of another-app heeft.
  • !environment: Selecteert objecten die geen environment label hebben.
apiVersion: v1
kind: Pod
metadata:
  name: my-app-pod
  labels: # Labels toegepast op de Pod
    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: # Label selector voor het kiezen van Pods
    app: my-app
    tier: frontend
  ports:
  - protocol: TCP
    port: 80
    targetPort: 8080