Soy Oscar Mas y como expliqué en el primer post, los labels es un mecanismo de organizar los objetos en Kubernetes. Un label, realmente es un key-value que se le asigna a un objeto, como podría ser un service, un pod, un nodo, etc….
Un ejemplo básico, es querer desplegar varios pods en un solo nodo (ub-nodo1-sbd) mediante un label, tal como se muestra en la siguiente captura:
Lo primero que haremos es ponerle el label “node=bestnode” al servidor que queremos que se desplieguen los pods y una vez hecho veremos que se ha creado el label. Yo le he puesto al label “node=bestnode”, pero podríamos haber puesto cualquier cosa que nos lo identifique, pero siempre con un igual, por ejemplo: “servidor=superpotente”
rootdevel@ub-nodo0-sbd:~$ kubectl label nodes ub-nodo1-sbd node=bestnode rootdevel@ub-nodo0-sbd:~$ kubectl describe node ub-nodo1-sbd
También lo podremos observar de la siguiente forma:
rootdevel@ub-nodo0-sbd:~$ kubectl get nodes --selector="node=bestnode"
Ahora crearemos tres pods y le indicaremos a nuestro sistema que los cree en el equipo que le hemos puesto el label de “node=bestnode” y los deplegaremos:
rootdevel@ub-nodo0-sbd:~$ cat nginx-en-nodo1.yaml
rootdevel@ub-nodo0-sbd:~$ cat nginx-en-nodo1.yaml
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: nginx-test
spec:
replicas: 3
template:
metadata:
name: nginx
namespace: default
labels:
env: beta
spec:
containers:
- name: nginx
image: nginx
imagePullPolicy: IfNotPresent
ports:
- containerPort: 80
nodeSelector:
node: bestnode
---
apiVersion: v1
kind: Service
metadata:
name: nginx-test
spec:
ports:
- name: "www"
port: 80
targetPort: 80
selector:
run: my-nginx
type: LoadBalancer
rootdevel@ub-nodo0-sbd:~$ kubectl create -f nginx-en-nodo1.yaml
Ahora, ya solamente nos queda observar que todos los pods se han ubicado en el servidor al cual hemos puesto el label, en mi caso: ub-nodo1-sbd
rootdevel@ub-nodo0-sbd:~$ kubectl get pods -o wide
No te pierdas la serie completa sobre Kubernetes de Oscar Mas:
- Kubernetes – Introducción a Kubernetes
- Kubernetes – Instalación
- Kubernetes – RollingUpdate con Kubernetes
- Kubernetes – Dashboard
- Kubernetes – Volúmenes NFS
- Kubernetes – Registry
- Kubernetes – Traefik
- Kubernetes – Systemd con Traefik y Proxy de Kubernetes
- Kubernetes – Heapster Influx Grafana
- Kubernetes – Labels de Kubernetes
- Kubernetes – API: Swagger
- Kubernetes – API: Creando nuestro primer POD
- Kubernetes – API: Seguridad con Token

Hola Jorge, se que no tiene nada que ver con tu post actual. pero por casualidad implementaste HA en postfix alguna vez, ya que necesito levantar un postfix con 3 dominios distintos y dejar corriendo ambos servidores y en caso de falla seguir funcionando con uno, hasta que repare el otro.
saludos