Kubernetes: the architecture of a cluster

The control plane and the nodes, desired state and the reconciliation loop, how a pod is placed on a node (requested resources, taints, tolerations) and the path from a kubectl apply to the running container.

  • 32 cards
  • 6 topics
  • Free

The outline, topic by topic

Each topic is weighted the way the exam weighs it.

  1. Concepts
  2. Questions
  3. Sort and link
  4. On the diagram
  5. Scenarios
  6. Understand

A few cards from the deck

  • Control plane: what is it?

    Show the answer

    The set of components that decide what the cluster does: API server, etcd, scheduler and controller manager.

    It does not run your applications, the nodes do. If it stops, pods already started keep running, but nothing can be created, changed or rescheduled any more.

  • Which component decides which node a new pod runs on?

    • The scheduler
    • Each node's kubelet
    • The controller manager
    • kube-proxy
    Show the answer

    The scheduler

    The controller creates the pod with no node, the scheduler assigns it a node, then that node's kubelet starts it. The controller manager never chooses a node.

  • On every node, the … starts the containers of the pods assigned to it, and … programs the network rules that carry Service traffic.

    Show the answer

    On every node, the kubelet starts the containers of the pods assigned to it, and kube-proxy programs the network rules that carry Service traffic.

    Both run on every node, whereas the scheduler and the controller manager belong to the control plane.

  • Desired state: what is it?

    Show the answer

    What the user declared they want and the cluster records: for example three replicas of the image web:1.4.

    You declare a result, not a series of commands: kubectl apply starts no container itself, it changes this declaration in the API.