A Ku­ber­netes node is a single working node in a Ku­ber­netes cluster that consists of in­fra­struc­ture com­po­nents on which container workloads (pods) run. Nodes provide the necessary resources such as computing power and memory.

De­f­i­n­i­tion of a Ku­ber­netes node

Nodes are essential building blocks in a Ku­ber­netes cluster. Each node rep­re­sents a physical or virtual machine and provides resources such as CPU, memory and storage space. These nodes work together to host and manage the container workloads. They perform tasks such as starting, mon­i­tor­ing and scaling con­tain­ers to ensure ap­pli­ca­tions run smoothly.

Ku­ber­netes nodes are flexibly scalable as they can be added or removed as required. They support efficient resource uti­liza­tion and adapt dy­nam­i­cal­ly to the re­quire­ments of running ap­pli­ca­tions. In addition, the dis­tri­b­u­tion of nodes across different servers promotes the re­silience of the cluster. Smart co­or­di­na­tion via Ku­ber­netes Repli­caS­ets and Ku­ber­netes Dae­mon­Sets allows container ap­pli­ca­tions to be managed securely and easily.

Image: Diagram of a cluster with Kubernetes nodes
Diagram of a Ku­ber­netes cluster

Node status

The node status provides in­for­ma­tion about the status of a working node in the Ku­ber­netes cluster. It shows whether the node is func­tion­ing properly and is able to host pods.

  • Addresses: The addresses of a node provide insight into its ac­ces­si­bil­i­ty in the network. This includes IP addresses, host names and ports. A node can have several addresses, and these are crucial for com­mu­ni­ca­tion within the cluster.
  • Con­di­tions: The con­di­tions reflect the current health status of the Ku­ber­netes node. Typical con­di­tions include Ready, OutOfDisk (lack of space), Mem­o­ry­Pres­sure and Disk­Pres­sure (hard disc pressure). These messages indicate whether nodes are op­er­a­tional or whether there are certain resource shortages.
  • Capacity: The capacity of a node refers to the available resources such as CPU, RAM and hard disc space. This in­for­ma­tion is important when it comes to un­der­stand­ing how much workload a node can handle. Ku­ber­netes uses this data to decide where to place con­tain­ers based on resource re­quire­ments.
  • Info: The in­for­ma­tion section can contain ad­di­tion­al details about the node, for example, the operating system, the kernel or kubelet version and other metadata.
Tip

With managed Ku­ber­netes from IONOS, you can easily or­ches­trate container ap­pli­ca­tions in dis­trib­uted pro­duc­tion en­vi­ron­ments. Benefit from security, trans­paren­cy and control during operation, all with minimal ad­min­is­tra­tive effort.

Node heartbeat

Heart­beats pe­ri­od­i­cal­ly send status in­for­ma­tion to the Ku­ber­netes master. These status updates are used to inform the master that the node is still available and ready for use.

In the context of Ku­ber­netes, there are two forms of heart­beats for nodes:

  • Updates to the .status of a node: These are regular status updates that a node sends to the Ku­ber­netes master. The status contains in­for­ma­tion about the avail­abil­i­ty and status of the node.
  • Lease objects in the namespace kube-node-lease: Each node is linked to a lease object in the kube-node-lease namespace. A lease object is es­sen­tial­ly a type of lease agreement that is sent from the node to the master. This lease confirms that the node is still active and is using resources in the cluster.

Ku­ber­netes node man­age­ment

The three main com­po­nents that form the node man­age­ment in a Ku­ber­netes cluster are the node con­troller, kubelet and the command line tool kubectl.

Node con­troller

The node con­troller is a core component of Ku­ber­netes that is re­spon­si­ble for managing nodes. It monitors the heart­beats in the form of status updates and lease objects to ensure that the nodes are running smoothly. If the node con­troller detects that a node is no longer active and no heart­beats are being received, it can take ap­pro­pri­ate action, such as re-sched­ul­ing pods on other available nodes. The node con­troller therefore plays a pivotal role in main­tain­ing the avail­abil­i­ty and integrity of the node pool in the Ku­ber­netes cluster.

Kubectl

kubectl is a command line tool that allows users to interact with a Ku­ber­netes cluster. With kubectl you can send commands to the Ku­ber­netes master to create, monitor, update and delete resources in the cluster. This tool is versatile and allows you to manage de­ploy­ments, services, pods, Con­figMaps and other Ku­ber­netes objects.

Kubelet

Kubelet is present on every Ku­ber­netes node in the cluster and is re­spon­si­ble for com­mu­ni­ca­tion between the node and the master. The main task of the kubelet is ensuring that container pods are started, monitored and ter­mi­nat­ed according to the in­struc­tions of the Ku­ber­netes master.

In the Ku­ber­netes tutorial, we’ll show you how to set up your own Ku­ber­netes cluster.

IONOS Cloud Managed Ku­ber­netes
Container workloads in expert hands

The ideal platform for demanding, highly scalable container ap­pli­ca­tions. Managed Ku­ber­netes works with many cloud-native solutions and includes 24/7 expert support.

Go to Main Menu