74 lines
2.8 KiB
Ruby
74 lines
2.8 KiB
Ruby
# -*- mode: ruby -*-
|
|
# vi: set ft=ruby :
|
|
|
|
Vagrant.configure("2") do |config|
|
|
# control-plane
|
|
config.vm.define "control-plane1" do |config|
|
|
config.vm.box = "ubuntu/focal64"
|
|
config.vm.provider "virtualbox" do |vb|
|
|
vb.name = "control-plane1"
|
|
vb.cpus = 2
|
|
vb.memory = 4000
|
|
unless File.exist?('./.disk/ceph1.vdi')
|
|
vb.customize ['createmedium', 'disk', '--filename', './.disk/ceph1.vdi', '--size', 10240]
|
|
end
|
|
vb.customize ['storageattach', :id, '--storagectl', 'SCSI', '--port', 2, '--device', 0, '--type', 'hdd', '--medium',
|
|
'./.disk/ceph1.vdi']
|
|
end
|
|
config.vm.hostname = "control-plane1"
|
|
config.vm.network "private_network", ip: "192.168.56.21", nic_type: "virtio"
|
|
config.vm.network "forwarded_port", guest: 6443, host: 6443, protocol: "tcp"
|
|
config.vm.network "forwarded_port", guest: 80, host: 8080, protocol: "tcp"
|
|
end
|
|
|
|
# worker1
|
|
config.vm.define "worker1" do |config|
|
|
config.vm.box = "ubuntu/focal64"
|
|
config.vm.provider "virtualbox" do |vb|
|
|
vb.name = "worker1"
|
|
vb.cpus = 2
|
|
vb.memory = 4000
|
|
unless File.exist?('./.disk/ceph2.vdi')
|
|
vb.customize ['createmedium', 'disk', '--filename', './.disk/ceph2.vdi', '--size', 10240]
|
|
end
|
|
vb.customize ['storageattach', :id, '--storagectl', 'SCSI', '--port', 2, '--device', 0, '--type', 'hdd', '--medium',
|
|
'./.disk/ceph2.vdi']
|
|
end
|
|
config.vm.hostname = "worker1"
|
|
config.vm.network "private_network", ip: "192.168.56.22", nic_type: "virtio"
|
|
end
|
|
|
|
# worker2
|
|
config.vm.define "worker2" do |config|
|
|
config.vm.box = "ubuntu/focal64"
|
|
config.vm.provider "virtualbox" do |vb|
|
|
vb.name = "worker2"
|
|
vb.cpus = 2
|
|
vb.memory = 4000
|
|
unless File.exist?('./.disk/ceph3.vdi')
|
|
vb.customize ['createmedium', 'disk', '--filename', './.disk/ceph3.vdi', '--size', 10240]
|
|
end
|
|
vb.customize ['storageattach', :id, '--storagectl', 'SCSI', '--port', 2, '--device', 0, '--type', 'hdd', '--medium',
|
|
'./.disk/ceph3.vdi']
|
|
end
|
|
config.vm.hostname = "worker2"
|
|
config.vm.network "private_network", ip: "192.168.56.23", nic_type: "virtio"
|
|
end
|
|
|
|
# Hostmanager plugin
|
|
# vagrant plugin install vagrant-hostmanager
|
|
config.hostmanager.enabled = true
|
|
config.hostmanager.manage_guest = true
|
|
|
|
# Disable Synced Folder
|
|
config.vm.synced_folder ".", "/vagrant", disabled: true
|
|
|
|
# Enable SSH Password Authentication
|
|
config.vm.provision "shell", inline: <<-SHELL
|
|
sed -i 's/PasswordAuthentication no/PasswordAuthentication yes/g' /etc/ssh/sshd_config
|
|
sed -i 's/archive.ubuntu.com/mirror.kakao.com/g' /etc/apt/sources.list
|
|
sed -i 's/security.ubuntu.com/mirror.kakao.com/g' /etc/apt/sources.list
|
|
systemctl restart ssh
|
|
SHELL
|
|
end
|
|
|