Sobes.tech
Junior

¿Qué son las etiquetas?

sobes.tech AI

Respuesta de la IA

Las etiquetas (Labels) en Kubernetes son pares clave/valor que se adjuntan a objetos (por ejemplo, Pods, Services, Deployments). Se utilizan para organizar y seleccionar subconjuntos de objetos. Las etiquetas no tienen un significado inherente para Kubernetes en sí, pero son importantes para los usuarios para la identificación y agrupación.

Ejemplos de uso:

  • Definición del entorno: environment: production, environment: development
  • Identificación de la aplicación: app: my-web-app
  • Definición de la versión: version: v1.2.3
  • Identificación del nivel de servicio: tier: frontend, tier: backend

Los selectores de etiquetas (Label Selectors) se usan en las solicitudes API para seleccionar grupos de objetos basados en sus etiquetas. Por ejemplo, un Service puede usar un selector de etiquetas para enrutar tráfico solo a Pods con ciertas etiquetas.

Ejemplos de selectores:

  • environment=production: Selecciona todos los objetos que tienen la etiqueta environment con el valor production.
  • app in (my-web-app, another-app): Selecciona objetos cuya etiqueta app tenga el valor my-web-app o another-app.
  • !environment: Selecciona objetos que no tienen la etiqueta environment.
apiVersion: v1
kind: Pod
metadata:
  name: my-app-pod
  labels: # Etiquetas aplicadas al 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: # Selector de etiquetas para elegir Pods
    app: my-app
    tier: frontend
  ports:
  - protocol: TCP
    port: 80
    targetPort: 8080