Part of series: Kubernetes
1. Creating Virtual Machines in Proxmox
1.1 Download the Ubuntu 24.04 LTS ISO Image
First, download the Ubuntu ISO in Proxmox if you don’t have it yet. Here is the link for the ISO download: https://releases.ubuntu.com/24.04.2/ubuntu-24.04.2-live-server-amd64.iso

1.2 Create the Base VM
- Select the node where you want to create the VM
- Click on “Create VM”

- Configure the following parameters:
General:
- Name: k3s-master

OS:
- Use CD/DVD: Select the downloaded Ubuntu 24.04 ISO
- Type: Linux

System:
- Leave this by default
Disks:
- Leave this by default or change the disk size
CPU:
- Leave this by default or give the machine more cores
Memory:
- Leave this by default or increase the amount of RAM
Network:
- Leave this by default Confirm
- Click on “Finish” to create the VM

1.3 Install Ubuntu 24.04 on the VM
-
Start the VM
-
Follow the Ubuntu installation wizard:
- Select the language
- Select keyboard layout: This is important, choose your keyboard language.
- Network configuration: leave automatic configuration, we will set the static network configuration manually later
- Configure a proxy if necessary
- Configure the server name: k3s-master
- Create a user and enter the password correctly ;)
- Select “Install OpenSSH server”
- Do not install any additional packages
-
Wait for the installation to finish and restart
1.4 Post-installation Configuration
- Log in with the created user
- Update the system:
sudo apt update && sudo apt upgrade -y
- Configure the static IP address (I’m going to use 192.168.1.127 for the master and 128 and 129 for the workers):
sudo nano /etc/netplan/00-installer-config.yaml
Add a configuration like this (adapted to your network):
network:
ethernets:
ens18:
dhcp4: no
addresses: [192.168.1.127/24]
gateway4: 192.168.1.1
nameservers:
addresses: [1.1.1.1, 8.8.8.8]
version: 2
- Apply the configuration:
sudo netplan apply
- On each node, update the /etc/hosts file:
sudo nano /etc/hosts
Add:
127.0.0.1 localhost
127.0.1.1 k3s-master #this is the loopback, change it on each machine for the appropriate hostname
192.168.1.127 k3s-master
192.168.1.128 k3s-worker1
192.168.1.129 k3s-worker2
-
Repeat the steps to create the worker nodes with the following differences:
For k3s-worker1:
- Name: k3s-worker1
- Hostname: k3s-worker1
- IP Configuration: 192.168.1.128/24
For k3s-worker2:
- Name: k3s-worker2
- Hostname: k3s-worker2
- IP Configuration: 192.168.1.129/24