Responda a esta pergunta que podemos encontrar na seção Implantações do kubernetes.io
Então, por que vou precisar dos seletores também?
Citações abaixo da documentação para k8s v 1.14
.spec.selectoré um campo obrigatório que especifica um seletor de rótulo para os Pods segmentados por esta implantação.
.spec.selectordeve corresponder .spec.template.metadata.labelsou será rejeitado pela API.
Na versão da API apps / v1, .spec.selector e .metadata.labels não assumem o padrão .spec.template.metadata.labels, se não estiver definido. Portanto, eles devem ser definidos explicitamente . Observe também que .spec.selector é imutável após a criação do Deployment em apps / v1.
Uma Implantação pode encerrar Pods cujos rótulos correspondam ao seletor se o modelo for diferente de .spec.template ou se o número total desses Pods exceder .spec.replicas. Ele exibe novos Pods com .spec.template se o número de Pods for menor que o número desejado.
Os pods já estão sendo iniciados separadamente, mas posteriormente colocados sob a égide do Deployment para serem gerenciados juntos?
Simplesmente falando, não
Nota: Você não deve criar outros pods cujos rótulos correspondam diretamente a esse seletor, criando outro Deploymentou criando outro controlador, como a ReplicaSetou a
ReplicationController. Se você fizer isso, o primeiro Deploymentpensa que criou esses outros pods. Kubernetesnão o impede de fazer isso. Se você tiver vários controladores com seletores sobrepostos, os controladores lutarão entre si e não se comportarão corretamente.