Sobes.tech
Junior

O que são etiquetas?

sobes.tech IA

Resposta da IA

As etiquetas (Labels) no Kubernetes são pares chave/valor que são anexados a objetos (por exemplo, Pods, Services, Deployments). São usadas para organizar e selecionar subconjuntos de objetos. As etiquetas não têm significado intrínseco para o Kubernetes em si, mas são importantes para os utilizadores para identificação e agrupamento.

Exemplos de uso:

  • Definição do ambiente: environment: production, environment: development
  • Identificação da aplicação: app: my-web-app
  • Definição da versão: version: v1.2.3
  • Identificação do nível de serviço: tier: frontend, tier: backend

Os seletores de etiquetas (Label Selectors) são usados em pedidos API para selecionar grupos de objetos com base nas suas etiquetas. Por exemplo, um Service pode usar um seletor de etiquetas para encaminhar tráfego apenas para Pods com certas etiquetas.

Exemplos de seletores:

  • environment=production: Seleciona todos os objetos que têm a etiqueta environment com o valor production.
  • app in (my-web-app, another-app): Seleciona objetos cuja etiqueta app tem o valor my-web-app ou another-app.
  • !environment: Seleciona objetos que não têm a etiqueta environment.
apiVersion: v1
kind: Pod
metadata:
  name: my-app-pod
  labels: # Etiquetas aplicadas ao 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: # Seletor de etiquetas para escolher Pods
    app: my-app
    tier: frontend
  ports:
  - protocol: TCP
    port: 80
    targetPort: 8080