Version v3.7.0 of the documentation is no longer actively maintained. The site that you are currently viewing is an archived snapshot.
For up-to-date documentation, see the latest version.
You are all set! use the make shortcuts to create VMs:
~/pigsty
make meta # 1-node devbox for quick start, dev, test & playgroundmake full # 4-node sandbox for HA-testing & feature demonstrationmake simu # 36-node simubox for production environment simulation...
make meta9 # create singleton-meta node with bento/rockylinux-9 imagemake full22 # create 4-node sandbox with generic/ubuntu2204 imagemake simu12 # create 36-node simulation env with generic/debian12 image
Configuration
You have to define VMs in the Vagrantfile before launch.
The default Vagrantfile defines a el9 (bento/rockylinux-9) 1-node virtual machine with the local virtualbox VM provider.
You can use specs with the config script, it will render the Vagrantfile according to spec and environment variables (resouce, image, vm provider, etc…).
cd ~/pigsty
vagrant/config [spec][image][scale][provider]vagrant/config meta # use the 1-node spec, default el8 imagevagrant/config dual el9 # use the 2-node spec, use el9 image insteadvagrant/config trio d12 2# use the 3-node spec, use debian12 image, double the cpu/mem resourcevagrant/config full u22 4# use the 4-node spec, use ubuntu22 image instead, use 4x cpu/mem resourcevagrant/config simu u24 1 libvirt # use the 36-node spec, use ubuntu24 image instead, use libvirt as provider instead of virtualbox
You can scale the resource unit with environment variable VM_SCALE, the default value is 1.
For example, VM_SCALE=2 vagrant/config meta will double the cpu / mem resources of the meta spec
You can create the VMs with vagrant up command after configuration.
Pigsty templates will use your ~/.ssh/id_rsa[.pub] as the default ssh key for vagrant provisioning.
Make sure you have a valid ssh key pair before you start, you can generate one by: ssh-keygen -t rsa -b 2048
There are some shortcuts that wrap the vagrant commands, you can use them to manage the VMs.
~/pigsty/vagrant
make # = make startmake new # destroy existing vm and create new onesmake ssh # write VM ssh config to ~/.ssh/ (required)make dns # write VM DNS records to /etc/hosts (optional)make start # launch VMs and write ssh config (up + ssh)make up # launch VMs with vagrant upmake halt # shutdown VMs (down,dw)make clean # destroy VMs (clean/del/destroy)make status # show VM status (st)make pause # pause VMs (suspend,pause)make resume # pause VMs (resume)make nuke # destroy all vm & volumes with virsh (if using libvirt)
Version
Pigsty currently uses the following vagrant boxes for testing:
It require extra setup to use the default 10.x.x.x CIDR as host-only networks
when using older version of virtualbox as vagrant provider: add it to /etc/vbox/networks.conf
echo"10.0.0.0/8"| sudo tee -a /etc/vbox/networks.conf