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