Courseiva
Cluster Architecture, Installation & ConfigurationmediumMultiple ChoiceObjective-mapped

CKA Practice Question: Cluster Architecture, Installation & Configuration

A Kubernetes cluster is running with a single control plane node. The administrator wants to add a second control plane node for high availability. What is the first step after the new node has been provisioned with the required software?

⚠ Common exam trap

Test-takers frequently confuse the process of adding a worker node (which uses `kubeadm join` without `--control-plane`) with adding a control plane node, or mistakenly think that `kubeadm init` or manual etcd backup steps are required first, when in fact the `--control-plane` flag handles the entire control plane join process automatically.

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

Run kubeadm join with the --control-plane flag on the new node.

The first step to add a second control plane node to an existing cluster is to run `kubeadm join` with the `--control-plane` flag on the new node. This command uses the existing control plane's API server to join the new node as a control plane member, automatically distributing certificates and configuring the etcd cluster. The `--control-plane` flag signals kubeadm to set up the additional control plane components (e.g., kube-apiserver, kube-controller-manager, kube-scheduler) and join the etcd cluster as a learner or voting member, depending on the etcd configuration.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • Create a bootstrap token on the existing control plane node.

    Why it's wrong here

    While a bootstrap token is essential for secure node joining, manually creating it with `kubeadm token create` is typically not the primary or standalone first step when adding a control plane. The `kubeadm join` command, executed on the new node, implicitly handles the secure authentication process, often leveraging an existing token or generating one if needed, and then uses it to establish trust with the existing control plane's API server. This option focuses on a preliminary action rather than the direct command to integrate the node.

  • Run kubeadm join with the --control-plane flag on the new node.

    Why this is correct

    To expand a single control plane Kubernetes cluster into a highly available multi-control plane setup, the `kubeadm join` command is the correct utility. Specifically, including the `--control-plane` flag instructs `kubeadm` to not only join the new node to the cluster but also to install and configure all necessary control plane components (API server, scheduler, controller-manager, etcd member) on that node. This command orchestrates the secure integration and replication of critical cluster services, ensuring the new node can participate as a full control plane member.

  • Run kubeadm init on the new node.

    Why it's wrong here

    The `kubeadm init` command is exclusively used to bootstrap the *first* control plane node of a new Kubernetes cluster. Running it on a new node intended to join an *existing* cluster would attempt to initialize a *new, separate* cluster on that node, leading to conflicts and failure as it would try to set up its own etcd, API server, and other components independently. This action would not integrate the node into the existing cluster but rather create an isolated, non-functional environment.

  • Take a snapshot of etcd using etcdctl.

    Why it's wrong here

    While taking an etcd snapshot is a crucial best practice for disaster recovery and data integrity, especially before significant cluster changes, it is not the *operational step* required to add a new control plane node. An etcd backup ensures that the cluster state can be restored if something goes wrong, but it does not facilitate the actual joining process. The primary action for integrating a new control plane member involves using `kubeadm` to configure the node and its components to communicate with the existing cluster.

About these practice questions

This CKA question is part of Courseiva's 302-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam dumps. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

JA

Written by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

This CKA practice question is part of Courseiva's free CNCF certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the CKA exam.