Pular para o conteúdo principal

Capítulo 2.9 - Comunicação Entre Componentes

Objetivos de Aprendizagem​

Ao final deste capítulo, você será capaz de:

  • Compreender como os componentes se comunicam
  • Explicar os protocolos utilizados
  • Identificar os fluxos de comunicação
  • Entender a segurança das comunicações

Visão Geral​

Todos os componentes do Kubernetes se comunicam via o API Server, que é o ponto central de comunicação:


Protocolos de Comunicação​

HTTPS/TLS​

Todas as comunicações são criptografadas:

Vantagens:

  • Criptografia em trânsito
  • Autenticação mútua
  • Integridade dos dados

Certificados​

Cada componente utiliza certificados:

  • API Server: Certificado de servidor
  • kubelet: Certificado de cliente
  • etcd: Certificados peer-to-peer

Principais Fluxos de Comunicação​

1. Usuário → API Server​

2. Controller Manager → API Server​

3. Scheduler → API Server → kubelet​

4. kubelet → Container Runtime​


Watch API​

Os componentes utilizam a Watch API para receber notificações em tempo real:

Vantagens:

  • Notificações instantâneas
  • Sem polling
  • Eficiente em recursos

Segurança das Comunicações​

Autenticação​

Cada componente se autentica com certificados:

Autorização​

O RBAC controla o que cada componente pode fazer:

  • kubelet: Pode ler/atualizar os Pods do seu node
  • Controller Manager: Pode ler/atualizar todos os recursos
  • Scheduler: Pode ler os Pods e vinculá-los aos nodes

Resumo​

Neste capítulo, você aprendeu:

Comunicação centralizada: Todos os componentes via API Server
Protocolos: HTTPS/TLS para segurança
Watch API: Notificações em tempo real
Certificados: Autenticação mútua
RBAC: Autorização baseada em papéis


Próximos Passos​

Agora que você entende a comunicação:

Capítulo 2.10: Add-ons e Extensões
Lab 2.2: Análise dos Worker Nodes


Capítulo criado em: Dezembro 2024