Skip to main content

Etiquetas y Selectores

Labels y Selectors son formas de agrupar recursos en Kubernetes.

Imaginemos que tenemos este grupo de animales.

Alt text

Podríamos agrupar por diferentes criterios, por ejemplo:

  • Por clases. Alt text

  • Por tipos si son salvajes o domésticos. Alt text

  • Por color. Alt text

  • O incluso por múltiples criterios.

Cualquier recurso en Kubernetes puede tener varias Labels. Es una buena práctica siempre utilizar Labels para poder filtrar los recursos.

Alt text

Para especificar lo que estamos buscando, hacemos uso de los Selectors. Son fundamentales para vincular componentes en Kubernetes. Siempre empleamos etiquetas (Labels) dentro de los metadatos de los objetos, pudiendo definir cuantas etiquetas sean necesarias. De esta forma, las etiquetas forman una lista de clave-valor flexible.

apiVersion: v1
kind: Pod
metadata:
name: simple-webapp
labels:
app: webapp
function: frontend
...

Como mencionamos anteriormente, podemos seleccionar los Pods específicos que deseamos al buscar un Pod.

kubectl get pods --selector app=webapp

Las Labels se emplean para agrupar elementos, mientras que las Annotations se utilizan para proporcionar información adicional, como versiones y detalles de integración de funcionalidades.

Para imprimir los Pods sin la primera línea del encabezado.

kubectl get pods --selector app=webapp --no-headers

Y para contar las líneas para saber el número de Pods

kubectl get pods --selector app=webapp --no-headers | wc -l