1
resposta

matchLabels & Labels

Na aula e informado que o "matchLabels" deve ser identico ao "labels". Porem, reparei que no codigo do exercicio, o mesmo esta diferente, esta com o ",m". Na teoria, a resposta nao deveria ser "Ele nao funcionara"?

Gostaria de saber o comportamento do mesmo em relacao a isso. Obrigado!

apiVersion: apps/v1
kind: ReplicaSet
metadata:
  name: nginx-replicaset
spec:
  template:
    metadata:
      name: nginx-app
      labels:
        app: nginx-app,m
    spec:
      containers:
        - name: nginx-container
          image: nginx:latest
  replicas: 6
  selector:
    matchLabels:
      app: nginx-app
1 resposta

Olá, estudante.

Tudo bem?

Desculpa a demora, estou respondendo esse tópico para tentar ajudar você e outros alunos que estiverem com essa mesma dúvida, e também para organizar o nosso fórum. Valeu :)

Agradeço por compartilhar sua dúvida conosco. Entendo que você está confuso em relação ao uso do "matchLabels" e "labels" no código do exercício.

Na teoria, a resposta correta seria que o código não funcionaria, pois o "matchLabels" deve ser idêntico ao "labels". No entanto, no código fornecido, há uma diferença no "labels" do arquivo declarativo. Ele está definido como "app: nginx-app,m".

Nesse caso, o comportamento será o seguinte: o "matchLabels" buscará por pods que tenham o rótulo "app: nginx-app", enquanto o "labels" definido no template do ReplicaSet será "app: nginx-app,m". Isso significa que o ReplicaSet criará pods com o rótulo "app: nginx-app,m".

Portanto, o resultado produzido pelo arquivo declarativo será a criação de um ReplicaSet que terá 6 réplicas do pod com o rótulo "app: nginx-app,m".

Espero ter esclarecido sua dúvida! Se tiver mais alguma pergunta, é só me dizer. Bons estudos!