https://github.com/jerearista/vagrant-veos/
1- download the box image from Arista website
2- create an vagrant Box
3- create an directory and create the Vagrantfile ( 2x vEOS switches )
1- download the box image from Arista website
download the virtoal.bax vEOS from Arista website ( https://www.arista.com/en/support/software-download )
2- create an vagrant Box
vagrant box add --name vEOS-lab-4.1520.0F ../builds/1F .\vEOS-lab-4.1520.0F1F-virtualbox.box
vagrant box list
3- create an directory and create the Vagrantfile ( 2x vEOS switches )
cd ./Document/vagrantmkdir vEOS1
cd vEOS1
Code Block |
---|
...
|
...
|
...
|
Multi-VM Environments
https://friendsofvagrant.github.io/v1/docs/multivm.html
...
| |
# The contents below were provided by the Packer Vagrant post-processor Vagrant.configure("2") do |config| config.vm.base_mac = "080027429F90" end # The contents below (if any) are custom contents provided by the # Packer template during image build. # -*- mode: ruby -*- # vi: set ft=ruby : # Vagrantfile API/syntax version. Don't touch unless you know what you're doing! # VAGRANTFILE_API_VERSION = "2" VEOS_RELEASE = "vEOS-lab-4.20.1F" Vagrant.configure("2") do |config| config.vm.define |
...
"spine1" do |spine1| # Every Vagrant virtual environment requires a box to build off of. spine1.vm.box = VEOS_RELEASE spine1.vm.provider 'virtualbox' do | |
...
_ |
...
, override| # Disable synced folders |
...
config.vm. |
...
synced_folder ".", "/vagrant", disabled: true end # In EOS, root, if enabled, is the only user that can ssh directly to bash. spine1.ssh.username = " |
...
root" # Create Ethernet1 in the VM spine1.vm.network 'private_network', adapter:"2", ip: '169.254.1.11', auto_config: false # Create Ethernet2 in the VM spine1.vm.network 'private_network', adapter:"3", ip: '169.254.1.12', auto_config: false end config.vm.define |
...
"spine2" do |spine2| # Every Vagrant virtual environment requires a box to build off of. spine2.vm.box = VEOS_RELEASE spine2.vm.provider 'virtualbox' do | |
...
_ |
...
, override| # Disable synced folders |
...
config.vm. |
...
synced_folder ".", "/vagrant", disabled: true end # In EOS, root, if enabled, is the only user that can ssh directly to bash. spine2.ssh.username = " |
...
root" # Create Ethernet1 in the VM spine2.vm.network 'private_network', adapter:"2", ip: '169.254.1.21', auto_config: false # Create Ethernet2 in the VM spine2.vm.network 'private_network', adapter:"3", ip: '169.254.1.22', auto_config: false end end |
vagrant init
vagrant up
vagrant ssh
vagrant status
vagrant ssh-config