Introdução ao Kubernetes: Arquitetura, Componentes e Comandos
Classificado em Computação
Escrito em em português com um tamanho de 4,09 KB.
Scripts
Scripts – linhas de códigos (comandos).
Limitação do Script - Não é capaz de ver a queda da infraestrutura, não permite um fácil monitoramento, não permitia suporte a falhas facilmente.
Kubernetes
Kubernetes – Coordena um cluster altamente disponível de computadores conectados para funcionar como uma única unidade.
O que é um Cluster?
Define uma arquitetura de sistema capaz de combinar vários computadores para trabalharem em conjunto.
Criando e Publicando Aplicações
O que você precisa para criar (publicar) sua aplicação?
Criar a aplicação, associá-la a um serviço, determinar suas portas de operação.
Ambiente Resiliente
Ambiente Resiliente – Ambiente tolerante a falhas (a aplicação continua rodando).
Containers
Docker e rkt – Ferramentas de manipulação de Containers (Criação, Deleção, Escalação).
Recursos do Cluster
Quais tipos de recursos posso agregar ao Cluster? PC e VM.
Máquinas Físicas e máquinas virtuais, suas especificações e seus poderes computacionais.
Ex: Se seus servidores na Black Friday não aguentam tantos acessos, você precisa contratar uma página externa.
Arquitetura do Cluster
Arquitetura:
Cluster tem dois tipos de recursos:
Nós
O que é nó: É uma VM ou um computador físico que serve como uma máquina de trabalho.
Nós Mestres
Nós Mestres: Responsáveis por organizar e delegar. É recomendado ter mais de um, pois se ele para, o Cluster para. Função: Coordenar, administrar, gerenciar o cluster, realocar nós workers com falha e realocar os nós saudáveis em outros clusters para evitar interrupções.
Nós Workers
Nós Workers: São os trabalhadores que executam aplicativos. Função: Receber a carga de trabalho do Nó Mestre e executar (workloads).
K Workers
K Workers: Imagens de Docker replicadas.
MiniKube
MiniKube (Software) – Abstração de um cluster real, é um emulador de cluster onde você estuda os comandos e simula o ambiente. Permite aprender como funciona um Cluster.
O minikube só é capaz de entregar 1 Nó (que é o seu computador), pois você está rodando em um só computador.
Cluster Real
Kubectl
Kubectl – Interface de linha de comando para gerenciar o Kubernetes. Todas as interações com o Kubernetes utilizam o Kubectl.
Pods
Pod – Unidade básica no Kubernetes, executada dentro dos Nós workers. Contém cargas de trabalho e pode conter um ou mais containers. É o átomo do Cluster.
Pod é a unidade indivisível do Cluster. Se um Pod contém dois containers, eles sobem e descem juntos.
Nó worker morre – O nó mestre realoca o workload em outro Nó Worker, pegando as informações do Nó morto e passando para um nó ocioso.
Nó Worker com ponteiro para um volume: quando o Nó mestre morre, liga o ponteiro de Nó ocioso para o volume, evitando perda de informação.
Cada Pod tem um IP individual.
Comandos Kubectl
Kubectl get nodes (lista os Nodes)
Comando Get - Listar recursos
Kubectl describe – Obtém informações detalhadas sobre o recurso.
Kubectl logs – Imprime logs de containers ou pods
Kubectl exec – Executa um comando dentro de um container sem precisar entrar nele.
Replication Controller
Qual é o papel do replication controller?
R: Garantir que a quantidade de pods rodando seja sempre igual à desejada.
Serviços e Balanceamento de Carga
Cada serviço tem um balanceador de carga integrado que consegue dividir as cargas entre os pods.