Desplegament amb vagrant

Justificació del desplegament

Per optimitzar els recursos dels nostres equips físics, hem creat un únic fitxer Vagrantfile que defineix tota la infraestructura. Tot i això, fem un desplegament distribuït: l’alumne 1 s’encarrega d’aixecar la zona client (vagrant up cli_router win_client) i l’alumne 2 la zona servidor (vagrant up srv_router dhcp_hosts ubuntu_ad). D’aquesta manera, treballem en equip i no saturem un sol ordinador.

#  -- mode: ruby --
#  vi: set ft=ruby :

Vagrant.configure("2") do |config|

  # =========================================================
  # 1. ENRUTADORES Y SERVIDORES LINUX (Lo que ya tenías)
  # =========================================================

  config.vm.define "srv_router" do |rtr1|
    rtr1.vm.box = "debian_box"
    rtr1.vm.network "private_network", ip: "10.10.1.1", netmask: "255.255.255.248", virtualbox__intnet: "srv_net" 
    rtr1.vm.network "public_network", ip: "172.25.211.12", netmask: "255.255.0.0", gateway: "172.25.130.254", bridge: "eth0"
    rtr1.vm.provider "virtualbox" do |vb|
      vb.gui = false
      vb.memory = "512"
    end
    rtr1.vm.provision "shell", inline: <<-SHELL
      ip route del default
      ip route add default via 172.25.130.254
      ip route add 10.10.2.0/28 via 172.25.213.12 dev enp0s8
    SHELL
  end

  config.vm.define "cli_router" do |rtr2|
    rtr2.vm.box = "debian_box"
    rtr2.vm.network "private_network", ip: "10.10.2.1", netmask: "255.255.255.240", virtualbox__intnet: "cli_net"
    rtr2.vm.network "public_network", ip: "172.25.213.12", netmask: "255.255.0.0", gateway: "172.25.130.254", bridge: "eth0"
    rtr2.vm.provider "virtualbox" do |vb|
      vb.gui = false
      vb.memory = "512"
    end
    rtr2.vm.provision "shell", inline: <<-SHELL
      ip route del default
      ip route add default via 172.25.130.254
      ip route add 10.10.1.0/29 via 172.25.211.12 dev enp0s9
    SHELL
  end

  config.vm.define "dhcp_hosts" do |dhcp|
    dhcp.vm.box = "debian_box"
    dhcp.vm.network "private_network", ip: "10.10.1.2", netmask: "255.255.255.248", virtualbox__intnet: "srv_net", gateway: "10.10.1.1"
    dhcp.vm.provider "virtualbox" do |vb|
      vb.gui = false
      vb.memory = "1024"
    end
  end

  # =========================================================
  # 2. MÁQUINAS WINDOWS (Añadidas para el reto del AD)
  # =========================================================

  # Windows 10 (Cliente) - Va en la red cli_net
  config.vm.define "win_client" do |wcli|
    wcli.vm.box = "w10 repte 1"
    wcli.vm.hostname = "PC-Alumne1"
    wcli.vm.network "private_network", ip: "10.10.2.2", netmask: "255.255.255.240", virtualbox__intnet: "cli_net"
    wcli.vm.provider "virtualbox" do |vb|
      vb.gui = true      # Necesario para ver el escritorio
      vb.memory = "2048" # Mínimo 2GB para Windows 10
      vb.cpus = 2
    end
  end

  # Ubuntu Server (Active Directory con Samba) - Red srv_net
  config.vm.define "ubuntu_ad" do |uad|
    uad.vm.box = "ubuntu/jammy64" 
    uad.vm.hostname = "UbuntuServerAD"
    uad.vm.network "private_network", ip: "10.10.1.3", netmask: "255.255.255.248", virtualbox__intnet: "srv_net"
    uad.vm.provider "virtualbox" do |vb|
      vb.memory = "1024" # Con 1GB para Linux vamos sobrados
      vb.cpus = 2
    end
  end

end

Leave a Comment

Visió general de la privadesa

Aquest lloc web utilitza galetes per poder oferir-te la millor experiència d'usuari possible. La informació de les galetes s'emmagatzema al teu navegador i realitza funcions com reconèixer-te quan tornes al nostre lloc web i ajudar el nostre equip a entendre quines seccions del lloc web trobes més interessants i útils.