From 61aaa8bcfb28fc8e06155ab236c6200c0eea7c8f Mon Sep 17 00:00:00 2001 From: alex Date: Sun, 15 Mar 2026 18:08:25 +0300 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8=D1=82?= =?UTF-8?q?=D1=8C=20Vagrantfile?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Vagrantfile | 98 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 Vagrantfile diff --git a/Vagrantfile b/Vagrantfile new file mode 100644 index 0000000..377036b --- /dev/null +++ b/Vagrantfile @@ -0,0 +1,98 @@ +MACHINES = { + :inetRouter => { + :box_name => "ubuntu/jammy64", + :net => [ + {ip: '192.168.255.1', adapter: 2, netmask: "255.255.255.252", virtualbox__intnet: "router-net"}, + ] + }, + :centralRouter => { + :box_name => "ubuntu/jammy64", + :net => [ + {ip: '192.168.255.2', adapter: 2, netmask: "255.255.255.252", virtualbox__intnet: "router-net"}, + {ip: '192.168.255.5', adapter: 3, netmask: "255.255.255.252", virtualbox__intnet: "router-off01-net"}, + {ip: '192.168.255.9', adapter: 4, netmask: "255.255.255.252", virtualbox__intnet: "router-off02-net"}, + {ip: '192.168.0.1', adapter: 5, netmask: "255.255.255.240", virtualbox__intnet: "dir-net"}, + {ip: '192.168.0.33', adapter: 6, netmask: "255.255.255.240", virtualbox__intnet: "hw-centr-net"}, + {ip: '192.168.0.65', adapter: 7, netmask: "255.255.255.192", virtualbox__intnet: "wifi-net"}, + ] + }, + + :centralServer => { + :box_name => "ubuntu/jammy64", + :net => [ + {ip: '192.168.0.2', adapter: 2, netmask: "255.255.255.240", virtualbox__intnet: "dir-net"}, + ] + }, + + :office1Router => { + :box_name => "ubuntu/jammy64", + :net => [ + {ip: '192.168.255.6', adapter: 2, netmask: "255.255.255.252", virtualbox__intnet: "router-off01-net"}, + {ip: '192.168.2.1', adapter: 3, netmask: "255.255.255.192", virtualbox__intnet: "dev01-net"}, + {ip: '192.168.2.65', adapter: 4, netmask: "255.255.255.192", virtualbox__intnet: "test01-srv-net"}, + {ip: '192.168.2.129', adapter: 5, netmask: "255.255.255.192", virtualbox__intnet: "managers-net"}, + {ip: '192.168.2.193', adapter: 6, netmask: "255.255.255.192", virtualbox__intnet: "hw01-net"}, + + ] + }, + + :office1Server => { + :box_name => "ubuntu/jammy64", + :net => [ + {ip: '192.168.2.2', adapter: 2, netmask: "255.255.255.192", virtualbox__intnet: "dev01-net"}, + ] + }, + + :office2Router => { + :box_name => "ubuntu/jammy64", + :net => [ + {ip: '192.168.255.10', adapter: 2, netmask: "255.255.255.252", virtualbox__intnet: "router-off02-net"}, + {ip: '192.168.1.1', adapter: 3, netmask: "255.255.255.128", virtualbox__intnet: "dev02-net"}, + {ip: '192.168.1.129', adapter: 4, netmask: "255.255.255.192", virtualbox__intnet: "test02-srv-net"}, + {ip: '192.168.1.193', adapter: 5, netmask: "255.255.255.192", virtualbox__intnet: "hw02-net"}, + + ] + }, + + :office2Server => { + :box_name => "ubuntu/jammy64", + :net => [ + {ip: '192.168.1.2', adapter: 2, netmask: "255.255.255.128", virtualbox__intnet: "dev02-net"}, + ] + }, + + +} + +Vagrant.configure("2") do |config| + + config.vm.provider "virtualbox" do |vb| + vb.memory = 512 + vb.cpus = 1 + end + + + MACHINES.each do |boxname, boxconfig| + + config.vm.define boxname do |box| + + box.vm.box = boxconfig[:box_name] + box.vm.host_name = boxname.to_s + + boxconfig[:net].each do |ipconf| + box.vm.network "private_network", **ipconf + end + + + box.vm.provision "ansible" do |ansible| + ansible.playbook = "ansible.yml" + ansible.become = "true" + end + + + end + + end + + +end \ No newline at end of file