~/questoes/devops
A abordagem declarativa no Kubernetes significa que você descreve como deseja que sua aplicação seja (o estado final) e deixa a plataforma trabalhar para tornar isso realidade. Em vez de dar comandos passo a passo, você declara o objetivo e Kubernetes cuida dos detalhes operacionais.
Na abordagem declarativa, você escreve em um arquivo YAML qual é o estado desejado (por exemplo, "quero 3 replicas da minha aplicação rodando") e Kubernetes automaticamente gerencia a criação, atualização e manutenção desse estado, sem você precisar executar comandos individuais.
Esta é a essência da abordagem declarativa: você declara o resultado esperado e Kubernetes trabalha internamente para alcançá-lo. Isso diferencia Kubernetes de ferramentas imperativas onde você comanda cada passo.
Variáveis de ambiente podem fazer parte da configuração, mas não definem a abordagem declarativa. Além disso, na abordagem declarativa, as configurações são definidas em arquivos YAML estáticos, não através de variáveis que mudam em tempo real.
Kubernetes é independente do sistema operacional. Não é o SO do nó que controla a execução dos contêineres; é o Kubernetes que coordena isso através de componentes como o kubelet e o scheduler.
Isso descreve uma abordagem imperativa, onde você escreve scripts com comandos sequenciais. Kubernetes, ao contrário, é declarativo: você apenas declara o desejado, não os passos.