forked from icesi-ops/sd-workshop2
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathVagrantfile
46 lines (44 loc) · 1.38 KB
/
Vagrantfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# -*- mode: ruby -*-
# vi: set ft=ruby :
Vagrant.configure("2") do |config|
config.vm.define "lb" do |lb|
lb.vm.box = "centos/7"
lb.vm.hostname = "lb"
lb.vm.network "private_network", ip: "192.168.33.200"
lb.vm.provider "virtualbox" do |vb|
vb.customize ["modifyvm", :id, "--memory", "512", "--cpus", "1", "--name", "lb"]
end
lb.vm.provision "ansible" do |ansible|
ansible.playbook = "playbooks/haproxy/loadbalancer.yml"
ansible.extra_vars = {
"webservers" => [
{"name": "web-1","ip":"192.168.33.11"},
{"name": "web-2","ip":"192.168.33.12"}
]
}
end
end
config.ssh.insert_key = false
(1..2).each do |i|
config.vm.define "web-#{i}" do |web|
web.vm.box = "centos/7"
web.vm.hostname = "web-#{i}"
web.vm.network "private_network", ip: "192.168.33.1#{i}"
web.vm.provider "virtualbox" do |vb|
vb.customize ["modifyvm", :id, "--memory", "512", "--cpus", "1", "--name", "web-#{i}"]
end
web.vm.provision "ansible" do |ansible|
ansible.playbook = "playbooks/httpd/webserver.yml"
ansible.groups = {
"webservers" => ["web-#{i}"]
}
end
end
end
config.vm.define "db" do |db|
db.vm.box = "centos/7"
db.vm.hostname = "db"
db.vm.network "private_network", ip: "192.168.33.100"
db.vm.provision "shell", inline: "echo Iam DB server"
end
end