IT 3300 : Virtualization

Storage & High Availability

Why storage matters here

  • VMs and containers are only as mobile as their storage
  • To move or restart a workload on another machine, the data must be
    reachable from that machine
  • So virtualization and storage are joined at the hip

Ways to store data

  • Directly attached (DAS) — local disk; fast, but tied to one machine
  • NAS — a networked file server (NFS/SMB) on your normal network
  • SAN — block storage over a dedicated storage network

NAS

  • A dedicated machine that serves files over the network
  • Simple and common (we'll use TrueNAS + NFS)
  • Trade-offs: network traffic to one box; if it's down, storage is down

SAN

  • Presents raw block devices, not files
  • Uses its own network — Fibre Channel or iSCSI
  • Easy to grow; built for high availability and redundancy

Failover

  • Automatically restart a VM elsewhere when its host crashes
  • For mission-critical, "losing money when it's down" workloads
  • Also called clustering or high availability
  • Goal: no single point of failure (SPOF)

How failover works

  • Keep the VM's state reachable (shared storage)
  • On failure, another host resurrects the VM:
    • hardware definition, storage, IP/network, settings
  • The hypervisor cluster monitors health and triggers the move

High availability

  • Failover handles a dead VM — but what if the hardware dies?
  • Use multiple hosts; hypervisors coordinate
  • The VM's state must be able to move between hosts
    • which is why shared/distributed storage matters

Load balancing

  • Run multiple instances of a service on separate hardware
  • Split the workload across them
    • protects against SPOF
    • better use of resources
  • Requires virtualized/shared storage to be practical

Server pooling

  • Group hosts into a pool that provides failover and load balancing
    automatically
  • The cluster decides where workloads run and moves them as needed

Modern echo

Everything here reappears later, one layer up:

  • Proxmox HA = failover for VMs
  • Kubernetes = failover, load balancing, and pooling for containers

Same ideas, higher in the stack.

Discussion

How does virtualization help with disaster recovery?