-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathVagrantfile
executable file
·128 lines (115 loc) · 5.25 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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
# -*- mode: ruby -*-
# vi: set ft=ruby :
Vagrant.configure(2) do |config|
config.vm.box = "centos/7"
config.vm.box_version = "1905.1"
# config.vbguest.iso_path = "../VBoxGuestAdditions.iso"
# config.vbguest.auto_update = false
config.vm.synced_folder '.', '/vagrant', disabled: true
config.vm.provider "virtualbox" do |v|
v.memory = 768
end
config.vm.define "ngx01" do |ngx01|
ngx01.vm.network "private_network", ip: "192.168.11.111", virtualbox__intnet: false
ngx01.vm.hostname = "ngx01"
end
config.vm.define "ngx02" do |ngx02|
ngx02.vm.network "private_network", ip: "192.168.11.112", virtualbox__intnet: false
ngx02.vm.hostname = "ngx02"
end
config.vm.define "postfix01" do |postfix01|
first_disk = './VirtualBox VMs/pf01/disk1.vdi'
# second_disk = './VirtualBox VMs/pf01/disk2.vdi'
postfix01.vm.network "private_network", ip: "192.168.11.113", virtualbox__intnet: false
postfix01.vm.hostname = "postfix01"
postfix01.vm.provider :virtualbox do |virtualbox|
virtualbox.name = "postfix01"
need_controller_pf01 = false
unless File.exist?(first_disk)
virtualbox.customize ['createhd', '--filename', first_disk, '--variant', 'Fixed', '--size', 4096]
need_controller_pf01 = true
end
# unless File.exist?(second_disk)
# virtualbox.customize ['createhd', '--filename', second_disk, '--variant', 'Fixed', '--size', 4096]
# need_controller_pf01 = true
# end
if need_controller_pf01 == true
virtualbox.customize ["storagectl", :id, "--name", "SATA", "--add", "sata" ]
end
virtualbox.customize ['storageattach', :id, '--storagectl', 'SATA', '--port', 0, '--device', 0, '--type', 'hdd', '--medium', first_disk]
# virtualbox.customize ['storageattach', :id, '--storagectl', 'SATA', '--port', 3, '--device', 0, '--type', 'hdd', '--medium', second_disk]
end
end
config.vm.define "postfix02" do |postfix02|
first_disk = './VirtualBox VMs/pf02/disk1.vdi'
# second_disk = './VirtualBox VMs/pf02/disk2.vdi'
postfix02.vm.network "private_network", ip: "192.168.11.114", virtualbox__intnet: false
postfix02.vm.hostname = "postfix02"
postfix02.vm.provider :virtualbox do |virtualbox|
virtualbox.name = "postfix02"
need_controller_pf02 = false
unless File.exist?(first_disk)
virtualbox.customize ['createhd', '--filename', first_disk, '--variant', 'Fixed', '--size', 4096]
need_controller_pf02 = true
end
# unless File.exist?(second_disk)
# virtualbox.customize ['createhd', '--filename', second_disk, '--variant', 'Fixed', '--size', 4096]
# need_controller_pf02 = true
# end
if need_controller_pf02 == true
virtualbox.customize ["storagectl", :id, "--name", "SATA", "--add", "sata" ]
end
virtualbox.customize ['storageattach', :id, '--storagectl', 'SATA', '--port', 0, '--device', 0, '--type', 'hdd', '--medium', first_disk]
# virtualbox.customize ['storageattach', :id, '--storagectl', 'SATA', '--port', 3, '--device', 0, '--type', 'hdd', '--medium', second_disk]
end
end
config.vm.define "postfix03" do |postfix03|
first_disk = './VirtualBox VMs/pf03/disk1.vdi'
# second_disk = './VirtualBox VMs/pf03/disk2.vdi'
postfix03.vm.network "private_network", ip: "192.168.11.115", virtualbox__intnet: false
postfix03.vm.hostname = "postfix03"
postfix03.vm.provider :virtualbox do |virtualbox|
virtualbox.name = "postfix03"
need_controller_pf03 = false
unless File.exist?(first_disk)
virtualbox.customize ['createhd', '--filename', first_disk, '--variant', 'Fixed', '--size', 4096]
need_controller_pf03 = true
end
# unless File.exist?(second_disk)
# virtualbox.customize ['createhd', '--filename', second_disk, '--variant', 'Fixed', '--size', 4096]
# need_controller_pf03 = true
# end
if need_controller_pf03 == true
virtualbox.customize ["storagectl", :id, "--name", "SATA", "--add", "sata" ]
end
virtualbox.customize ['storageattach', :id, '--storagectl', 'SATA', '--port', 0, '--device', 0, '--type', 'hdd', '--medium', first_disk]
# virtualbox.customize ['storageattach', :id, '--storagectl', 'SATA', '--port', 3, '--device', 0, '--type', 'hdd', '--medium', second_disk]
end
end
# config.vm.define "proxysql01" do |proxysql01|
# proxysql01.vm.network "private_network", ip: "192.168.11.116", virtualbox__intnet: false
# proxysql01.vm.hostname = "proxysql01"
# end
config.vm.define "pxc1" do |pxc1|
pxc1.vm.network "private_network", ip: "192.168.11.120", virtualbox__intnet: false
pxc1.vm.hostname = "pxc1"
end
config.vm.define "pxc2" do |pxc2|
pxc2.vm.network "private_network", ip: "192.168.11.121", virtualbox__intnet: false
pxc2.vm.hostname = "pxc2"
end
config.vm.define "pxc3" do |pxc3|
pxc3.vm.network "private_network", ip: "192.168.11.122", virtualbox__intnet: false
pxc3.vm.hostname = "pxc3"
end
#
# config.vm.define "backup" do |backup|
# backup.vm.network "private_network", ip: "192.168.11.123", virtualbox__intnet: false
# backup.vm.hostname = "backup"
# end
# config.vm.provision "ansible" do |ansible|
# ansible.verbose = "v"
# ansible.playbook = "playbook.yml"
# ansible.become = "true"
# end
end