From 81c873fbd20f44e923d58c7ca0a183180ee4b7b5 Mon Sep 17 00:00:00 2001 From: Simone Spinelli <simone.spinelli@geant.org> Date: Fri, 10 Dec 2021 08:14:17 +0000 Subject: [PATCH] Update README.md --- README.md | 46 ++++++++++++++++++++++++++++++++++------------ 1 file changed, 34 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index 9764602..6a98a38 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,18 @@ -# Network Automation Minilab +<!-- vscode-markdown-toc --> +* 1. [What's in this repository?](#Whatsinthisrepository) +* 2. [Requirements](#Requirements) + * 2.1. [Git](#Git) + * 2.2. [VirtualBox](#VirtualBox) + * 2.3. [Vagrant](#Vagrant) + * 2.3.1. [Vagrant plugins](#Vagrantplugins) + * 2.4. [vSRX Images](#vSRXImages) +* 3. [How to use](#Howtouse) + +<!-- vscode-markdown-toc-config + numbering=true + autoSave=true + /vscode-markdown-toc-config --> +<!-- /vscode-markdown-toc --># Network Automation Minilab ||| |--|--| @@ -18,7 +32,7 @@ The VM specifications are as follows: In order to keep the initial demands on the host machine low, only one vSRX will be spun up; the second and third vSRX's are commented out in the relevant Vagrant control file (imaginatively called `Vagrantfile`). -## What's in this repository? +## 1. <a name='Whatsinthisrepository'></a>What's in this repository? Here is the directory structure: @@ -33,9 +47,9 @@ Here is the directory structure: └── Vagrantfile // The Vagrantfile that describes the resources you are going to spin up ``` -## Requirements: +## 2. <a name='Requirements'></a>Requirements -### Git: +### 2.1. <a name='Git'></a>Git The easiest way to download this repository is to use Git. @@ -58,7 +72,7 @@ https://git-scm.com/download/mac If want to know more about git, you can refer to this book: https://git-scm.com/book/en/v2 -### VirtualBox +### 2.2. <a name='VirtualBox'></a>VirtualBox This is the framework which allows users to run virtual devices on Windows, Linux, MacOS and Solaris hosts. @@ -69,7 +83,7 @@ https://www.virtualbox.org/wiki/Downloads |--|--| || <p> VirtualBox does not work on M1 Macs. Sorry, Mac users!| -### Vagrant +### 2.3. <a name='Vagrant'></a>Vagrant Vagrant uses node and connectivity definitions in a control file (by default called `Vagrantfile`) to orchestrate the creation of multi-device virtual environments. It can use several such environments - we are going to use VirtualBox. @@ -82,7 +96,7 @@ https://www.vagrantup.com/intro/getting-started/index.html You need __at least__ Vagrant version 2.2.7 if you are using Virtualbox 6.1+ -#### Vagrant plugins +#### 2.3.1. <a name='Vagrantplugins'></a>Vagrant plugins Vagrant needs these plugins to be able to spin up JunOS 12 virtual devices. @@ -102,13 +116,13 @@ vagrant plugin install vagrant-host-shell vagrant-junos vagrant-junos_cli ``` ||| |--|--| -|| **WARNING <p> If you are uprading Virtualbox or Vagrant, run:**```vagrant plugin update```| +|| **WARNING <p> If you are upgrading Virtualbox or Vagrant, run:**```vagrant plugin update```| -### vSRX Images +### 2.4. <a name='vSRXImages'></a>vSRX Images We use a public JunOS 12.1 vSRX image: (https://app.vagrantup.com/juniper/boxes/ffp-12.1X47-D15.4-packetmode, if you're curious). -## How to use +## 3. <a name='Howtouse'></a>How to use 1. Install Virtualbox, Vagrant and the vagrant plugins as shown above. @@ -208,8 +222,7 @@ root@vsrx1% exit logout Connection to 127.0.0.1 closed. ``` - -Once this is done, you can log into the Ansible control node (using `vagrant ssh ansible-node`) and launch your first playbook! +6. Once this is done, you can log into the Ansible control node (using `vagrant ssh ansible-node`) and launch your first playbook! ``` testhost> vagrant ssh ansible-node @@ -546,3 +559,12 @@ PLAY RECAP ********************************************************************* vagrant@ansible-node:~/ansible-minilab$ ``` + +7. You can turn off, destroy or pause the virtual machines using the following vagrant commands: +``` + destroy stops and deletes all traces of the vagrant machine + suspend suspends the machine + halt stops the vagrant machine + resume resume a suspended vagrant machine +``` +More vagrant commands are available using ```vagrant --help``` -- GitLab