~/questoes/devops
Um Deployment é um objeto do Kubernetes que descreve como suas aplicações devem ser executadas, permitindo que você defina quantas cópias (réplicas) deseja, como atualizá-las sem parar o serviço e como escalá-las conforme a demanda. É a forma declarativa de gerenciar aplicações em produção.
Deployments descrevem aplicações que podem ser escaladas (aumentar ou diminuir o número de cópias), versionadas (trocar de versão da imagem do contêiner) e atualizadas de forma controlada (gradualmente, sem derrubar tudo de uma vez). É como dar instruções permanentes ao Kubernetes sobre como manter sua aplicação rodando.
Isto descreve o etcd, que é o banco de dados distribuído do plano de controle do Kubernetes. O etcd armazena o estado de todos os objetos, mas não é um Deployment.
Isto descreve Network Policies, que são regras de segurança que controlam quem pode conversar com quem na rede interna do cluster. Deployments não fazem esse controle.
Exatamente. Um Deployment é um objeto que descreve sua aplicação com capacidade de escalabilidade (mais ou menos pods), versionamento (trocar versão) e atualizações controladas (sem downtime).
Isto descreve um Ingress, que é o recurso que roteia tráfego externo (da internet) para dentro do cluster. Um Deployment não faz esse roteamento externo.