Categorias
kubernetes

Pod, Deployment, Service, Helm e kubectl – O básico de kubernetes que você precisa saber

O Kubernetes é uma ferramenta open source usada para automação e orquestração de containers Linux.

O Pod é a unidade básica de trabalho do Kubernetes; ele especifica um único contêiner ou um grupo de contêineres que se comunicam e são escalonados em conjunto.

Um Deployment é um recurso de alto nível do Kubernetes que gerencia Pods de maneira declarativa, implantando, escalonando, atualizando e reiniciando os Pods quando for necessário.

Um Service é o equivalente do Kubernetes a um balanceador de carga ou proxy, roteando tráfego para seus Pods correspondentes por meio de um endereço IP ou nome de DNS único, conhecido e durável.

O escalonador (scheduler) do Kubernetes procura um Pod que ainda não esteja executando em nenhum nó, encontra um nó apropriado para ele e instrui o kubelet nesse nó a executar o Pod.

Recursos como Deployments são representados por registros no banco de dados interno do Kubernetes Externamente, esses recursos podem ser representados por arquivos-texto (conhecidos como manifestos) em formato YAML. O manifesto é uma declaração do estado desejado para o recurso.

O kubectl é a ferramenta principal para interagir com o Kubernetes, permitindo-lhe aplicar manifestos, consultar recursos, fazer alterações, remover recursos e executar várias outras tarefas.

O Helm é um gerenciador de pacotes para Kubernetes. Ele simplifica a configuração e a implantação de aplicações Kubernetes, permitindo-lhe utilizar um único conjunto de valores (por exemplo, o nome da aplicação ou a porta a ser ouvida) e um conjunto de templates para gerar arquivos YAML para o Kubernetes, em vez de exigir que você mesmo mantenha os arquivos YAML brutos.

Fonte: Devops antivo de nuvem com kubernetes (Editora Novatec)