Skip to content

Configuration files for provisioning the Hackathon 81 lab environment.

Notifications You must be signed in to change notification settings

chriswoodfield/hackathon81_lab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

There are two versions of this lab in the repo; choose the version that your hardware is able to support best. A minimum of 16GB of RAM is recommended for the Full version of the lab.

The Full version uses two vQFX images that consist of two VMs, the virtual Routing Engine (vqfx-re) and virtual Packet Forwarding Engine (vqfx-pfe). The Lite version omits the PFE image, reducing the RAM footprint, but does not support certain features such as DHCP or IPv6 Route Advertisements.

The VyOS images are not changed between labs. The Centos host images receive IP and IPv6 addresses dynamically in the Full version, but are configured statically in the Lite (due to aforementioned lack of support from vqfx-re).

Full Lab Topology:

Full Lab Topology

Lite Lab Topology:

Lite Lab Topology

Instructions for Centos 8 lab install

Install latest Vagrant release:

sudo dnf -y install https://releases.hashicorp.com/vagrant/2.2.14/vagrant_2.2.14_x86_64.rpm

Install VirtualBox:

1. Enable repo

sudo dnf -y install wget
sudo wget https://download.virtualbox.org/virtualbox/rpm/el/virtualbox.repo
sudo mv virtualbox.repo /etc/yum.repos.d/
sudo wget -q https://www.virtualbox.org/download/oracle_vbox.asc
sudo rpm --import oracle_vbox.asc
sudo dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

2. Install required libs/modules

sudo dnf -y install binutils kernel-devel kernel-headers libgomp make patch gcc glibc-headers glibc-devel dkms
sudo dnf install -y VirtualBox-6.1

3. Install Ansible and plugins

sudo dnf install -y ansible
ansible-galaxy install Juniper.junos
sudo pip3 install netaddr junos-eznc jxmlease

Clone the lab repo

sudo dnf install -y git 
mkdir lab
cd lab
git clone https://github.com/nanog/hackathon81_lab

Launch VMs defined in Vagrantfile

cd full|lite-vqfx-vyos
export VAGRANT_DEFAULT_PROVIDER=virtualbox  
vagrant up

If centos1/2 provisioning displays errors about invalid routes, recreate those VMs

vagrant destroy -f centos1 centos2 && vagrant up centos1 centos2

Common Vagrant commands

Instantiate and provision all unprovisioned images defined in Vagrantfile

vagrant up

Instantiate and provision a specific VM

vagrant up {{ vm_name }}

Delete all images (often needed to re-provision after making changes to the Vagrantfile)

vagrant destroy [-f]

Delete a specific VM

vagrant destroy [-f] {{ vm_name }}

Get state of all VMs defined in Vagrantfile

vagrant status

Run provisioning operations on active VM

vagrant provision [-f] {{ vm_name }}

About

Configuration files for provisioning the Hackathon 81 lab environment.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published