🖥️ Virtualization for Data
Turning hardware you control into the machines your data work needs — KVM, libvirt and system containers on one Debian box; XCP-ng and Xen Orchestra's backup story; Proxmox with the cluster filesystem that goes read-only when quorum drops; and TrueNAS as the storage under all of it. With the two sentences nobody says out loud: a snapshot is not a backup, and a VM restarted on another host is still a database that crashed.
No lessons published yet — this is the roadmap, so you can see exactly what the course will cover before it lands.
Before you start: Data Ops — Series 1. You need the terminal, ssh and a text editor on a remote box, and you need to have already met containers once — Series 1 · 37 is Docker as a tool, and this course explains what it was standing on. Series 1 · 46 rents a machine by clicking; this course is the other answer to the same question.
Before you start: Storage for Data — Series 1. Every platform here makes you choose a disk layout on the day you install it, and that choice is the hardest one to take back. Series 1 · 15 is RAID and Series 1 · 18 is LVM, both of which appear in the installer of every product in this course. Series 2 is ZFS, which Series 4 of this course assumes completely.
Short on time? The 36 episodes marked core are the shortest path to being productive at work. Start there and pick up the rest whenever a job asks for them.
Series 1 · Containers and Virtual Machines on One Linux Box
namespaces, KVM and LXC — what a "machine" is when there is only one machine
- 01
Two Ways to Get More Machines — a Second Kernel, or a Fence Around Processes
coreintermediatecoming soon - 02
Namespaces and cgroups — Building a Container by Hand, and Why free Lies
coreintermediatecoming soon - 03
KVM, QEMU and libvirt — Three Layers People Say as One Word
coreintermediatecoming soon - 04
virt-install and virsh — a Cloud Image, a Machine, and an Undo Button
coreintermediatecoming soon - 05
System Containers — LXC, Incus, and Why This Is Not Docker
coreintermediatecoming soon - 06
incus launch — Profiles, Snapshots, and One Database per Developer
coreintermediatecoming soon - 07
Bridges and NAT — the Address Your VM Did Not Get
coreintermediatecoming soon - 08
Where the Virtual Disk Lives — qcow2, LVM, zvols, and the Bind-Mount Trap
intermediatecoming soon - 09
Unprivileged Containers — the Boundary You Are Actually Trusting
intermediatecoming soon - 10
Templates and cloud-init — Stop Installing Debian by Hand
coreintermediatecoming soon - 11
virtio and cache=writeback — the Setting That Can Lose a Commit
coreintermediatecoming soon - 12
Project — a Template, a Database VM, and a Revert That Actually Works
intermediatecoming soon
Series 2 · XCP-ng and Xen Orchestra
a type-1 hypervisor, a pool, and the backup story that sells it
- 01
XCP-ng — Xen, a Fork of XenServer, and the Licence Renewal That Sells It
coreintermediatecoming soon - 02
Installing a Host — and Why dom0 Is Not Somewhere You Put Things
coreintermediatecoming soon - 03
Xen Orchestra — XO Lite, From Sources, or XOA, and Where It Must Not Live
coreintermediatecoming soon - 04
Pools, Hosts and the Master — Why Two Servers Are Not Yet a Cluster
coreintermediatecoming soon - 05
SRs, VDIs and the Coalesce Queue — the Way This Platform Fills a Disk
coreintermediatecoming soon - 06
PIFs, VIFs and Bonds — and the Storage Network You Should Have Separated
intermediatecoming soon - 07
Templates, Guest Tools and xe — Why a VM Without the Tools Cannot Be Shut Down
coreintermediatecoming soon - 08
Live Migration and Maintenance Mode — Patching a Host at Eleven in the Morning
coreintermediatecoming soon - 09
Delta Backups and Health Checks — the Restore That Tests Itself
coreintermediatecoming soon - 10
Patching a Pool — the Order, the Rolling Upgrade, and the Single-Host Tax
intermediatecoming soon - 11
SMlog First — Reading a Stuck SR, a VM That Will Not Start, and a Lost Host
intermediatecoming soon - 12
Do You Need a Hypervisor Platform — and What the Second Host Is Really For
coreintermediatecoming soon - 13
Project — a Host, a Backup Job, and a Restore You Timed
intermediatecoming soon
Series 3 · Proxmox VE
Series 1's tools, with a cluster, a web UI and a backup server
- 01
Proxmox VE — Debian, KVM and LXC, With a Cluster Around Them
coreintermediatecoming soon - 02
Installing It — the Disk Layout You Choose Before You Know Anything
coreintermediatecoming soon - 03
qm, pct and /etc/pve — the CLI, and the Directory That Goes Read-Only
coreintermediatecoming soon - 04
Templates, Linked Clones and cloud-init — a Database per Developer in Seconds
coreintermediatecoming soon - 05
Storage Types and Content Types — the Dropdown Your Storage Is Missing From
coreintermediatecoming soon - 06
Corosync, Quorum and the QDevice — Why Two Nodes Is the Worst Number
coreintermediatecoming soon - 07
HA and Fencing — the VM Comes Back, and the Database Still Crashed
coreintermediatecoming soon - 08
The Ceph Button — Ten Minutes to Install, and What You Just Agreed To
intermediatecoming soon - 09
vzdump — Crash-Consistent Is Not Consistent, and the Agent That Helps
coreintermediatecoming soon - 10
Proxmox Backup Server — Deduplication, Verify Jobs, and One File Back
coreintermediatecoming soon - 11
Roles, API Tokens and the Firewall — Least Privilege for the Script That Checks Backups
intermediatecoming soon - 12
Major Upgrades — the Checklist Script, the Node Order, and the Missing Rollback
intermediatecoming soon - 13
Do You Need Proxmox — One Box, Three Boxes, or Somebody Else's
coreintermediatecoming soon - 14
Project — the Node a Small Data Team Runs, and Two Kinds of Restore
intermediatecoming soon
Series 4 · TrueNAS
the storage box under the hypervisors — and the appliance rule
- 01
TrueNAS — ZFS as an Appliance, and Why You Do Not Edit the Config Files
coreintermediatecoming soon - 02
Installing It — the Mirrored Boot Device, and No RAID Card Under ZFS
coreintermediatecoming soon - 03
Pools and Datasets in the UI — One Dataset per Thing You Will Ever Treat Differently
intermediatecoming soon - 04
SMB, NFS and ACLs — Why the Pipeline Cannot Read What the Analyst Dropped
coreintermediatecoming soon - 05
NFS and iSCSI as Hypervisor Storage — sync=disabled and the Commit That Vanished
coreintermediatecoming soon - 06
Snapshot Tasks, Replication and Cloud Sync — and What Ransomware Replicates
coreintermediatecoming soon - 07
Scrubs, SMART and the Alert You Never Tested — Replacing a Disk in the UI
coreintermediatecoming soon - 08
Apps and Instances — What the NAS Can Run, and Why It Mostly Should Not
intermediatecoming soon - 09
Boot Environments — the Rollback That Is Just a Reboot, and the Flags You Must Not Set
intermediatecoming soon - 10
Do You Need TrueNAS — or Debian, ZFS and Twenty Minutes of Samba
coreintermediatecoming soon - 11
Choosing — One Box, a Pool, an Appliance, or Somebody Else's Datacentre
coreintermediatecoming soon - 12
Project — a NAS, a Hypervisor, and Three Failures You Caused on Purpose
intermediatecoming soon
Not here, on purpose
- Building and running application containers, and writing a Dockerfile — covered in Data Ops, Series 1 · 37, which is Docker as a tool a data person uses. In this course, Series 1 · 02 explains the kernel features underneath it and Series 1 · 10 covers the different thing a system container is
- Orchestrating containers across a cluster — covered in Kubernetes for Data Workloads. This course stops at the machines; what schedules pods onto them is that track's subject
- ZFS itself — pools, vdevs, RAIDZ, scrub, resilver, send and receive — covered in Storage for Data, Series 2, in ten episodes. In this course, Series 4 · 05 covers only what the TrueNAS interface calls those things and which decisions it makes for you
- Ceph as a storage system — covered in Storage for Data, Series 4. In this course, Series 3 · 17 covers only the fact that Proxmox will build one for you from a web form, and what you have taken on when it does
- Renting a virtual machine or a bucket from a provider — covered in Data Ops, Series 1 · 46 and Data Ops, Series 1 · 47. This course is the alternative, and it is honest about when renting is the better answer
- Creating virtual machines from code, with a provider and a state file — covered in Terraform & Pulumi. In this course, Series 3 · 25 covers the API and the token that such a provider would authenticate with, and stops there
- Operating PostgreSQL — backups, replication, upgrades and tuning — covered in Data Ops, Series 2. This course puts a database on a virtual disk and protects the machine; what happens inside the database is that course's subject and the two must not be confused
- VMware vSphere, Hyper-V and the commercial platforms — not covered. This track is virtualization a data team can obtain and run without a purchase order, and the two products a reader is most often migrating away from are named as context in Series 2 · 00 rather than taught
- Desktop virtualization — VirtualBox, VMware Workstation and running a VM on your laptop — not covered as a subject, though Series 1 · 00 says plainly where it fits. This course is about machines that other people depend on