119 lines
2.8 KiB
Ruby
119 lines
2.8 KiB
Ruby
# -*- mode: ruby -*-
|
|
# vi: set ft=ruby :
|
|
|
|
Vagrant.configure("2") do |config|
|
|
# Global configuration
|
|
config.vm.box = "debian/bookworm64"
|
|
config.vm.box_version = ">= 12.12.0"
|
|
|
|
# Disable automatic box update checking
|
|
config.vm.box_check_update = false
|
|
|
|
# Configure SSH
|
|
config.ssh.insert_key = true
|
|
|
|
# Configure shared folders
|
|
config.vm.synced_folder ".", "/vagrant", disabled: true
|
|
|
|
# Configure provider-specific settings
|
|
config.vm.provider "virtualbox" do |vb|
|
|
vb.name = "bare-bones-cluster"
|
|
vb.memory = "512"
|
|
vb.cpus = 1
|
|
vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
|
|
vb.customize ["modifyvm", :id, "--natdnsproxy1", "on"]
|
|
end
|
|
|
|
# Configure libvirt provider
|
|
config.vm.provider "libvirt" do |libvirt|
|
|
libvirt.memory = 512
|
|
libvirt.cpus = 1
|
|
libvirt.driver = "kvm"
|
|
libvirt.connect_via_ssh = false
|
|
end
|
|
|
|
# Host Machine
|
|
config.vm.define "host" do |host|
|
|
host.vm.hostname = "host"
|
|
host.vm.network "private_network", ip: "192.168.56.1"
|
|
|
|
host.vm.provider "virtualbox" do |vb|
|
|
vb.name = "host"
|
|
vb.memory = "512"
|
|
vb.cpus = 1
|
|
end
|
|
|
|
host.vm.provider "libvirt" do |libvirt|
|
|
libvirt.memory = 512
|
|
libvirt.cpus = 1
|
|
end
|
|
end
|
|
|
|
# Machine 1
|
|
config.vm.define "machine1" do |machine1|
|
|
machine1.vm.hostname = "machine1"
|
|
machine1.vm.network "private_network", ip: "192.168.56.10"
|
|
|
|
machine1.vm.provider "virtualbox" do |vb|
|
|
vb.name = "machine1"
|
|
vb.memory = "512"
|
|
vb.cpus = 1
|
|
end
|
|
|
|
machine1.vm.provider "libvirt" do |libvirt|
|
|
libvirt.memory = 512
|
|
libvirt.cpus = 1
|
|
end
|
|
end
|
|
|
|
# Machine 2
|
|
config.vm.define "machine2" do |machine2|
|
|
machine2.vm.hostname = "machine2"
|
|
machine2.vm.network "private_network", ip: "192.168.56.11"
|
|
|
|
machine2.vm.provider "virtualbox" do |vb|
|
|
vb.name = "machine2"
|
|
vb.memory = "512"
|
|
vb.cpus = 1
|
|
end
|
|
|
|
machine2.vm.provider "libvirt" do |libvirt|
|
|
libvirt.memory = 512
|
|
libvirt.cpus = 1
|
|
end
|
|
end
|
|
|
|
# Machine 3
|
|
config.vm.define "machine3" do |machine3|
|
|
machine3.vm.hostname = "machine3"
|
|
machine3.vm.network "private_network", ip: "192.168.56.12"
|
|
|
|
machine3.vm.provider "virtualbox" do |vb|
|
|
vb.name = "machine3"
|
|
vb.memory = "512"
|
|
vb.cpus = 1
|
|
end
|
|
|
|
machine3.vm.provider "libvirt" do |libvirt|
|
|
libvirt.memory = 512
|
|
libvirt.cpus = 1
|
|
end
|
|
end
|
|
|
|
# Machine 4
|
|
config.vm.define "machine4" do |machine4|
|
|
machine4.vm.hostname = "machine4"
|
|
machine4.vm.network "private_network", ip: "192.168.56.13"
|
|
|
|
machine4.vm.provider "virtualbox" do |vb|
|
|
vb.name = "machine4"
|
|
vb.memory = "512"
|
|
vb.cpus = 1
|
|
end
|
|
|
|
machine4.vm.provider "libvirt" do |libvirt|
|
|
libvirt.memory = 512
|
|
libvirt.cpus = 1
|
|
end
|
|
end
|
|
end |