# Master Node Components | Master Node Component | Description | | ---------------------------- | ----------- | | [[cloud-controller-manager Overview]] | | | [[etcd Overview]] | | | [[kube-scheduler Overview]] | | | [[kube-controller-manager Overview]] | | | [[kube-apiserver Overview]] | | # Control Plane Deployment Prerequisites: * A Linux server with a minimum of 2 CPUs and 2GB of RAM * Root access * Docker or containerd installed * Swap disabled * `kubeadm`, `kubelet`, and `kubectl` installed Install `kubeadm`, `kubelet`, and `kubectl` ```Bash # Update the package list sudo apt update sudo apt install -y apt-transport-https ca-certificates curl # Add Kubernetes signing key sudo curl -fsSL https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add - # Add Kubernetes repository echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | \ sudo tee /etc/apt/sources.list.d/kubernetes.list # Install kubeadm, kubelet, and kubectl sudo apt update sudo apt install -y kubelet kubeadm kubectl # Prevent kubeadm, kubelet, and kubectl from being automatically updated (OPTIONAL) sudo apt-mark hold kubelet kubeadm kubectl ```