배포 후, 아래 리눅스 인프라를 구축합니다.
KOSA_세미프로젝트_리눅스 인프라 구축-20240507

아래 vagrantfile을 사용해 여러대의 VM을 배포합니다
# -*- mode: ruby -*-
# vi: set ft=ruby :
Vagrant.configure("2") do |config|
config.vm.define "WP-LB01" do |config|
config.vm.box = "rockylinux/9"
config.vm.network "private_network", ip: "192.168.56.10"
config.vm.network "private_network", ip: "192.168.57.10"
config.vm.synced_folder ".", "/vagrant", disabled: true
config.vm.provider "virtualbox" do |vb|
vb.memory = "2048"
vb.cpus = 2
vb.name = "WP-LB01"
end
config.vm.hostname = "WP-LB01"
end
config.vm.define "WP-WEB01" do |config|
config.vm.box = "rockylinux/9"
config.vm.network "private_network", ip: "192.168.57.11"
config.vm.network "private_network", ip: "192.168.58.11"
config.vm.synced_folder ".", "/vagrant", disabled: true
config.vm.provider "virtualbox" do |vb|
vb.memory = "2048"
vb.cpus = 2
vb.name = "WP-WEB01"
end
config.vm.hostname = "WP-WEB01"
end
config.vm.define "WP-WEB02" do |config|
config.vm.box = "rockylinux/9"
config.vm.network "private_network", ip: "192.168.57.12"
config.vm.network "private_network", ip: "192.168.58.12"
config.vm.synced_folder ".", "/vagrant", disabled: true
config.vm.provider "virtualbox" do |vb|
vb.memory = "2048"
vb.cpus = 2
vb.name = "WP-WEB02"
end
config.vm.hostname = "WP-WEB02"
end
config.vm.define "WP-DB01" do |config|
config.vm.box = "rockylinux/9"
config.vm.network "private_network", ip: "192.168.58.13"
config.vm.synced_folder ".", "/vagrant", disabled: true
config.vm.provider "virtualbox" do |vb|
vb.memory = "2048"
vb.cpus = 2
vb.name = "WP-DB01"
end
config.vm.hostname = "WP-DB01"
end
end
vagrant up
vagrant로 VM을 생성하면서 스크립트를 통해 필요한 작업을 수행할 수 있습니다
script는 vagrantFile과 같은 디렉토리에 있으므로 path에 script.sh만 명시해줍니다
vagrant file
Vagrant.configure("2") do |config|
config.vm.define "WP-WEB01" do |config|
config.vm.box = "rockylinux/9"
config.vm.network "private_network", ip: "192.168.57.11"
config.vm.synced_folder ".", "/vagrant", disabled: true
config.vm.provider "virtualbox" do |vb|
vb.memory = "2048"
vb.cpus = 2
vb.name = "WP-WEB01"
config.vm.provision "shell", path: "script.sh"
end
config.vm.hostname = "WP-WEB01"
end
end