Getting Started (Local Vagrant Testbeds)
Before deploying to physical bare-metal servers or public cloud accounts, you can test every on-premise OpenIaC platform locally using our pre-configured multi-node Vagrant + VirtualBox environments running Rocky Linux 9.
All commands below are written one per line for 100% copy-paste compatibility across Windows PowerShell, Windows CMD, macOS (zsh), and Linux (bash).
Prerequisites
1. Clone the Repository
Open your terminal (Windows PowerShell, macOS Terminal, or Linux Shell) and run:
git clone https://github.com/openiac-io/openiac.git
cd openiac
2. Choose & Launch Your Local Multi-Node Cluster
The host openiac directory is automatically shared at /openiac inside every Vagrant VM, and the control node automatically bootstraps make, ansible-core, and sshpass.
Option A: Standard Upstream Kubernetes & KubeVirt (k8s / kubevirt — 3 Nodes)
- Boot the 3-node cluster (
cp-01,worker-01,worker-02) from your host terminal:cd vagrant/k8s-cluster vagrant up vagrant ssh cp-01 - Inside the
cp-01VM terminal, run a single command to deploy your cluster:
(Tip: Runcd /openiac make k8smake kubevirtinstead if you want to deploy Standard K8s + KubeVirt VM Virtualization all at once!) - Verify your cluster status:
kubectl get nodes -o wide
Option B: Lightweight Kubernetes (k3s — 3 Nodes)
- Boot the 3-node K3s cluster (
cp-01,worker-01,worker-02) from your host terminal:cd vagrant/k3s-cluster vagrant up vagrant ssh cp-01 - Inside the
cp-01VM terminal, run:cd /openiac make k3s - Verify your K3s cluster status:
kubectl get nodes -o wide
Option C: OpenShift / OKD (openshift — Bastion + Control Plane + Worker)
- Boot the OpenShift testbed (
bastion-01,cp-01,worker-01) from your host terminal:cd vagrant/openshift-cluster vagrant up vagrant ssh bastion-01 - Inside the
bastion-01VM terminal, run:cd /openiac make openshift
Option D: OpenStack Private Cloud (openstack — Controller + Compute with 40GB Cinder Disk)
- Boot the OpenStack testbed (
controller-01,compute-01) from your host terminal:cd vagrant/openstack-cluster vagrant up vagrant ssh controller-01 - Inside the
controller-01VM terminal, run:cd /openiac make openstack
3. Clean Up Local VMs After Testing
When you are finished testing, exit the VM (exit) and destroy the VirtualBox VMs from the same vagrant/<platform>-cluster directory on your host:
vagrant destroy -f