Before you touch microcloud init, you need to master basic Linux admin (snap, networking, storage disks), the concepts of clusters & high availability, and the basics of LXD/containers. This episode prepares the hardware and software you need: at least 3 Ubuntu 24.04 LTS machines for production, or 1 machine for testing, complete with an empty disk per node and stable inter-node networking.

Welcome to the Learn MicroCloud series! This series will take you from zero to mastery of MicroCloud — Canonical's open source cloud platform that combines LXD (compute), MicroCeph (distributed storage), and MicroOVN (SDN) into one automated deployment. There are 23 episodes in total, organized into six phases, from conceptual foundations to production readiness as a lightweight private cloud at the edge and in homelabs.
Before you touch microcloud init, there are core skills and hardware you must have. Why do these prerequisites matter? Because MicroCloud orchestrates three systems at once: an LXD cluster for virtualization, Ceph for replicated storage, and OVN for the overlay network. Without understanding all three, you'll struggle to diagnose issues when a node fails to join or storage doesn't appear in LXD.
This episode 0 is your roadmap: we'll make sure the core skills are covered, prepare the hardware and software, and verify the environment for the first time. Once this episode is done, the rest of the series can be followed comfortably.
MicroCloud runs on Ubuntu and is distributed as a snap. You need to understand how snap install, snap services, and snap list work. You also need to be comfortable with basic Linux networking — IP addressing, bridges, and firewalls — as well as disk management: identifying empty disks (lsblk), partitioning, and understanding why Ceph needs empty disks to turn into OSDs.
lsblk -o NAME,SIZE,TYPE,FSTYPE,MOUNTPOINTPay attention to the FSTYPE and MOUNTPOINT columns: disks that are empty and unformatted are OSD candidates. Never point to a disk that already holds data — MicroCeph will format it.
MicroCloud is a cluster made up of at least 3 nodes. You must understand terms like quorum, leader election, member, and fencing. These concepts explain why you need an odd number of nodes and why data is replicated rather than merely copied. You'll use this foundational understanding continuously from episode 4 through episode 9.
MicroCloud manages instances through LXD. Get familiar with the terms instance (system container or VM), image, storage pool, and profile. Prior experience with lxc launch helps but isn't required — this series builds it from the ground up in episode 8. What's essential is the concept: a system container shares the host kernel, while a VM has its own kernel.
Note
This series focuses on MicroCloud. For a deeper dive into LXD container basics, continue to the Learn LXD/LXC series — that material will be the foundation you use in episode 8.
MicroCloud is designed as a "cloud inside 3 nodes". To simulate production and high availability, prepare three Ubuntu 24.04 LTS machines (or 22.04+), each with:
[ node-a ] ----- switch/core ----- [ node-b ]
\ /
\________ [ node-c ] _________/
3x Ubuntu 24.04 LTS + 1 disk kosong per node (OSD)Don't have three machines? MicroCloud supports single-node mode for labs and evaluation. One Ubuntu 24.04 machine with at least one additional disk is enough to follow every episode. HA features only truly show their value with 3 nodes, so to practice failover in episode 9, use VMs on your laptop — for example, three KVM/VirtualBox VMs connected on a single bridge.
uname -m
uname -r
nproc
free -hAll MicroCloud components are installed via snap. Note the four packages we'll use in episode 3:
lxd — virtualization (system containers + VMs) and its API.microceph — distributed storage built on Ceph.microovn — SDN built on OVN/OVS.microcloud — the orchestrator that unifies all three.snap version
getent hosts archive.ubuntu.comBefore moving to episode 1, make sure every node meets the prerequisites:
sudo lsb_release -d
hostnamectl hostname
lsblk -d -o NAME,SIZE,TYPE
timedatectl statuslsblk.Warning
MicroCloud requires a unique hostname on every node and synchronized time across nodes. Nodes with the same hostname or a large time difference will fail when joining the cluster. Set up chrony or another NTP service before init (we practice this in episode 3).
What you've prepared in episode 0, in short:
lxd, microceph, microovn, and microcloud snaps — installed in episode 3.If anything isn't in place, stop and complete it before continuing. The 22-episode journey ahead will be far smoother with this solid footing.
Key takeaways:
lxd, microceph, microovn, microcloud.In the next episode, we'll cover the history, background, and why you need MicroCloud — from Canonical's November 2023 announcement, the simple and low-touch "cloud inside 3 nodes" philosophy, the first 2.1.0 LTS release (November 2024), to the latest 3.2 version. Make sure your environment is ready, because the Learn MicroCloud journey is just getting started!