Skip to main content

Chapter 2.9 - Inter-Component Communication

Learning Objectives​

By the end of this chapter, you will be able to:

  • Understand how components communicate
  • Explain the protocols used
  • Identify communication flows
  • Understand communication security

Overview​

All Kubernetes components communicate via the API Server, which is the central communication point:


Communication Protocols​

HTTPS/TLS​

All communications are encrypted:

Advantages:

  • Encryption in transit
  • Mutual authentication
  • Data integrity

Certificates​

Each component uses certificates:

  • API Server: Server certificate
  • kubelet: Client certificate
  • etcd: Peer-to-peer certificates

Main Communication Flows​

1. User -> API Server​

2. Controller Manager -> API Server​

3. Scheduler -> API Server -> kubelet​

4. kubelet -> Container Runtime​


Watch API​

Components use the Watch API to receive real-time notifications:

Advantages:

  • Instant notifications
  • No polling
  • Resource efficient

Communication Security​

Authentication​

Each component authenticates with certificates:

Authorization​

RBAC controls what each component can do:

  • kubelet: Can read/update Pods on its node
  • Controller Manager: Can read/update all resources
  • Scheduler: Can read Pods and bind them to nodes

Summary​

In this chapter, you learned:

Centralized communication: All components via the API Server
Protocols: HTTPS/TLS for security
Watch API: Real-time notifications
Certificates: Mutual authentication
RBAC: Role-based authorization


Next Steps​

Now that you understand communication:

Chapter 2.10: Add-ons and Extensions
Lab 2.2: Analyzing Worker Nodes


Chapter created: December 2024