1. Prerequisites
| Item | Minimum | Recommended |
|---|---|---|
| OS | Ubuntu 24.04 LTS | Ubuntu 24.04 LTS |
| CPU | 4 cores | 10+ cores (1 for main, 6 for VPP workers, 3 for OS/services) |
| RAM | 8 GB | 16 GB |
| Disk | 20 GB free | 40 GB free |
| NIC (management) | 1× 1 Gbps, kernel driver | same |
| NIC (subscriber-facing) | 1× DPDK-supported (Intel E810/E830, XL710) | same |
| Network | LAN access to the customer subnet + upstream router | same |
CPU pinning matters. If the box has isolated cores for VPP (isolcpus=1-6 in /proc/cmdline — the recommended setup), the installer preserves whatever corelist-workers line matches those cores. If the box has no isolcpus, the installer falls back to a single-worker boot-safe config.
Don't run this on a shared / production box. The installer edits /etc/vpp/startup.conf, opens ports 8443/3000, installs docker.io if missing, and adds systemd units. Fine for a dedicated appliance; disruptive on a general-purpose server.
If you're evaluating in VirtualBox, three constraints:
- Use ≤ 2 vCPUs on the guest. Ubuntu HWE kernel 7.0.0 has an SMP mount-path deadlock (
sd-mkdcredsmutex race) that reliably wedges the post-install reboot at ≥ 6 vCPUs. 1–2 vCPUs boot cleanly. - docker-ce in the host image will block install — the controller
.debdepends ondocker.ioand the two conflict. Either use a base image without Docker preinstalled orapt-get remove docker-ce docker-ce-cli containerd.iofirst (preflight will detect this and abort with an actionable message). - VirtualBox guests don't expose
pdpe1gb— the installer detects that and falls back to 2 MiB × 4096 hugepages (same 8 GiB total). No action needed from you.