MakeStack
Back to Feed

Ubuntu 26.04 Server Installation Guide For Kubernetes Nodes

A step-by-step Ubuntu 26.04 Server installation walkthrough for a Kubernetes-ready host, covering networking, storage, OpenSSH, reboot, and first login checks.

Installation goal#

This walkthrough follows the Ubuntu 26.04 Server installer from the first language screen to the first login prompt. The target is a clean server that can later become a Kubernetes node, so the choices focus on repeatable setup, remote administration, and a storage layout that is easy to inspect.

Treat the operating system installation as the first part of Kubernetes preparation, not as a separate task you will clean up later.

Kubernetes node setup note
Start by selecting the installer language. English is selected in this example.
Confirm the keyboard layout before entering usernames, passwords, hostnames, or shell commands.
Choose the standard Ubuntu Server installation unless you intentionally need the smaller minimized profile.

Network and package sources#

Kubernetes nodes need predictable network access for package installation, image pulls, control-plane traffic, and SSH administration. The installer detects the active interface and shows the assigned address before package source configuration begins.

Review the network interface and assigned address. This example uses an automatically assigned IPv4 address.
Leave the proxy empty unless the server must reach the internet through a corporate or lab proxy.
Confirm that the Ubuntu archive mirror passes its checks before continuing.

Storage layout for Kubernetes#

The installer can use the whole disk automatically, but a Kubernetes host benefits from storage that is easy to reason about. This example uses a custom layout with separate mount points for /boot, /, and /var. Keeping /var visible is useful because container runtime data, logs, and kubelet state commonly live there.

Why Use A Separate /var#

A separate /var partition is useful because Kubernetes writes most of its growing runtime data there. Container images, writable container layers, kubelet state, pod data, and logs can expand quickly after the node joins a cluster.

kubernetes-var-growth-paths.txttext
/var/lib/containerd
/var/lib/kubelet
/var/log

For a Kubernetes node, /var is the main place where disk usage grows. Keeping it separate makes capacity planning, troubleshooting, and cleanup safer because growth in Kubernetes runtime data is less likely to consume the root filesystem unexpectedly.

The screenshots in this guide were captured from a small virtual machine, so the partition sizes shown there are intentionally smaller than what you should use for a real Kubernetes node. A practical layout is to keep the boot partitions fixed, give the root filesystem enough room for Ubuntu and admin tools, and allocate the remaining space to /var, where Kubernetes runtime data grows.

recommended-kubernetes-node-partitions.txttext
/boot/efi   1G
/boot       2G
/           60G
/var        remaining disk space

/boot/efi only needs space for UEFI boot files, /boot needs room for kernels and initramfs images, and / does not need most of the disk when Kubernetes state, container images, pod data, and logs are kept under /var.

Choose Custom Storage#

Select a custom storage layout when you want explicit control over the partitions and mount points.
Review the partition summary carefully. The example separates /boot, /, and /var on the target disk.
Confirm destructive storage changes only after the partition table matches the intended Kubernetes node layout.

Identity, updates, and SSH#

After storage is confirmed, create the initial administrator account and decide how the node will be accessed. For a Kubernetes host, installing OpenSSH during setup is usually the practical choice because most follow-up work happens remotely.

Create the first user and set a clear server name. The hostname should be easy to recognize when managing multiple nodes.
Skip Ubuntu Pro during a basic lab installation unless your environment requires it from the start.
Install OpenSSH server so the machine can be administered remotely after the first boot.

Optional snaps and reboot#

The featured snaps screen is optional. For a clean Kubernetes node, keep the base system minimal and add only the packages required by your cluster bootstrap process. After that, let the installer finish and reboot into the installed system.

Review optional server snaps. A Kubernetes preparation guide usually keeps this step minimal.
When installation completes, choose Reboot Now and remove the installer media if the environment asks for it.

First login verification#

After reboot, sign in with the user created during installation. Before installing Kubernetes components, verify that the server boots cleanly and that the disk layout matches the plan.

The first login confirms that the installed Ubuntu 26.04 Server system is reachable from the console.
Examplesh
lsblk
example-lsblk-output.txttext
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
vda      253:0    0   25G  0 disk
vda1     253:1    0    1M  0 part
vda2     253:2    0    2G  0 part /boot
vda3     253:3    0   12G  0 part /
vda4     253:4    0   11G  0 part /var
Use lsblk to confirm that /boot, /, and /var are mounted as expected before continuing with Kubernetes setup.