Skip to content
Menu
msandor honlapja
  • Bemutatkozás
msandor honlapja

Vagrant: jöjjön a labor

Posted on 2023.06.27.2023.09.17.

Az előző cikkben eljutottunk egy fullos egygépes környezethez, most jöhet a többgépes labor környezet.

Van már egy CentOS 7 VM-ünk, adjunk hozzá egy Almalinux 8-at, egy Ubuntu 22.02-t és egy Debian 11-et. Nyissuk meg szerkesztésre a Vagrantfile-t, és töröljük a benne lévő kódunkat, majd ezt másoljuk bele:

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

  config.vm.define "vm1" do |vm1|
    vm1.vm.network "private_network", ip: "192.168.56.2"
    vm1.vm.box = "centos/7"
    vm1.vm.provider "virtualbox" do |vb|
      vb.memory = "1024"
      vb.cpus = 2
    end
    vm1.vm.provision "shell", inline: <<-SHELL
      yum install mc epel-release httpd net-tools -y
      yum update -y
      systemctl enable --now httpd
      echo "vm1" > /etc/hostname
      hostname -F /etc/hostname
    SHELL
  end

  config.vm.define "vm2" do |vm2|
    vm2.vm.network "private_network", ip: "192.168.56.3"
    vm2.vm.box = "almalinux/8"
    vm2.vm.provider "virtualbox" do |vb|
      vb.memory = "1024"
      vb.cpus = 2
    end
    vm2.vm.provision "shell", inline: <<-SHELL
      dnf install mc epel-release httpd net-tools -y
      dnf update -y
      systemctl enable --now httpd
      echo "vm2" > /etc/hostname
      hostname -F /etc/hostname
    SHELL
  end

  config.vm.define "vm3" do |vm3|
    vm3.vm.network "private_network", ip: "192.168.56.4"
    vm3.vm.box = "ubuntu/jammy64"
    vm3.vm.provider "virtualbox" do |vb|
      vb.memory = "1024"
      vb.cpus = 2
    end
    vm3.vm.provision "shell", inline: <<-SHELL
      apt-get update && apt-get upgrade -y
      apt-get clean
      apt-get install mc apache2 -y
      echo "vm3" > /etc/hostname
      hostname -F /etc/hostname
    SHELL
  end

  config.vm.define "vm4" do |vm4|
    vm4.vm.network "private_network", ip: "192.168.56.5"
    vm4.vm.box = "debian/bullseye64"
    vm4.vm.provider "virtualbox" do |vb|
      vb.memory = "1024"
      vb.cpus = 2
    end
    vm4.vm.provision "shell", inline: <<-SHELL
      apt-get update && apt-get upgrade -y
      apt-get clean
      apt-get install mc apache2 -y
      echo "vm4" > /etc/hostname
      hostname -F /etc/hostname
    SHELL
  end

end

Nincs más hátra, mint, hogy elindítsuk az összes VM-ünket, ha kiadjuk a szokásos „$ vagrant up” parancsot, akkor mind a négy VM-et el fogja indítani (abc sorrendben)! Ezért, ha a jövőben csak egy VM-et szeretnél elindítani, add ki ezt a parancsot:

$ vagrant up vm1

Ahol vm1 az elindítandó VM neve.

Az én laptopomon a 4 VM elindítása és frissítése 10 perc 46 másodpercig tartott.

Ha be szeretnél lépni egy bizonyos VM-be, add ki ezt a parancsot:

$ vagrant ssh vm1

Ahol vm1 a kiválasztott VM neve.

Most már mind a négy szerverünkön fut egy-egy apache webszerver:

Ahogy a Vagrantfile-ból ki lehet olvasni, ezek a négy szerverünk adatai:

Hoszt névIP cím
vm1192.168.56.2
vm2192.168.56.3
vm3192.168.56.4
vm4192.168.56.5

A szokások „vagrant status” most így fest:

$ vagrant status
Current machine states:

vm1                       running (virtualbox)
vm2                       running (virtualbox)
vm3                       running (virtualbox)
vm4                       running (virtualbox)

This environment represents multiple VMs. The VMs are all listed
above with their current state. For more information about a specific
VM, run `vagrant status NAME`.

Összefoglalás

Az egész Vagrantfile-unk csak 62 sor, mégis definiáltunk benne 4 különböző operációs rendszert, szükség esetén akár mind a négyet más-más erőforrással, mind a 4 VM-re feltelepíti a kívánt alkalmazásokat, befrissíti a rendszert, beállítja a hoszt neveket, stb. És az egészet létrehozza a semmiből negyed óra alatt 🙂

Ennyi lett volna a Vagrant bemutatása, ha a három cikket végig olvastad, netán meg is csináltál velem együtt minden feladatot, akkor már könnyű dolgod van, gyorsan össze tudsz dobni magadnak egy labor környezetet. A vagrant weboldalán rengeteg előre elkészített OS imidzs található, válassz kedvedre, csak be kell illesztened a Vagrantfile-odba. Itt is érvényes a szabály, lehetőleg csak hivatalos fájlokat tölts le, mivel nem tudhatod, hogy magánszemélyek által készítettekben nincs-e valami ártó szándék.

Az én Vagrantfile-om 690 soros, 32 különböző VM van benne definiálva, nagyon sok mindent tudok tesztelni velük…

1 thought on “Vagrant: jöjjön a labor”

  1. Attila Papp szerint:
    2024.04.10. 09:31

    Szép leírás ez is.
    Tetszik a gyors telepítés, a rendszer elvégez mindent.

    Válasz

Vélemény, hozzászólás? Válasz megszakítása

Az e-mail címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük

Kategóriák

  • ansible
  • docker
  • e-mail
  • git
  • hardware
  • hibakeresés
  • kubernetes
  • ldap
  • Linux
  • MariaDB
  • OpenWrt
  • Proxmox
  • security
  • SNMP
  • Synology
  • teszt
  • Unifi
  • UPS
  • vagrant
  • Virtualbox
  • zabbix
©2025 msandor honlapja | WordPress Theme by Superb WordPress Themes

Adatkezelési tájékoztató || Hibát talált az oldalon? Írja meg nekem. || Impresszum || Powered by WordPress

Oldalunk cookie-kat ("sütiket") használ. Ezen fájlok információkat szolgáltatnak számunkra a felhasználó oldallátogatási szokásairól a legjobb felhasználói élmény nyújtása érdekében, de nem tárolnak személyes információkat, adatokat. Szolgáltatásaink igénybe vételével Ön beleegyezik a cookie-k használatába. Kérjük, hogy kattintson az Elfogadom gombra, amennyiben böngészni szeretné weboldalunkat.ElfogadomAdatvédelmi irányelvek