Sunday, March 29, 2020

HOW TO: Set-up EVE-NG via Google Cloud Platform (GCP) - PART 1

To get you started here's the PART 1 of the EVE-NG installation. This is about registering an account in GCP and creating a VM instance.


  1. Register for an account using your Gmail on the Google Cloud Platform (GCP)

  1. Create a new project.


  1. Go to Project dashboard.
  2.  On the upper right-hand corner, click Activate Cloud Shell and run the script below. Hit Y. It will run for 3 minutes. Status is "READY" when completed.
gcloud compute images create nested-virt-ubuntu --source-image-project=ubuntu-os-cloud --source-image-family=ubuntu-1604-lts --licenses="https://www.google.com/compute/v1/projects/vm-options/global/licenses/enable-vmx" 



5. Go to Compute Engine from the upper left-hand corner to create a VM Instance. A screen pops up and select Create.

6. Enter the following information. I did not touch the other settings.

  • Name
  • Region: Select the DC you want the VM to be hosted (permanent)
  • Zone: Select the DC Zone you want the VM to be hosted (permanent)
  • Machine type: Select the memory for your VM. I used 8 vCPU, 30 GB memory for this example. The higher the memory, the more expensive it is.

Remember that you have a free credit of $300. If you're gonna run only small labs, you can choose a lesser memory.



7. Under Boot disk, click Change and under Custom Images select the image "nester-virt-ubuntu", and I put 30 GB for the boot disk size as an example. Click Select.

8. From the bottom of the screen under the Firewall, select "Allow HTTP traffic".

9. Under the "Management, disk, networking, SSH keys", select Networking. Click the pencil icon, and from the Network Service Tier select Standard and click Done.


10. Click create to start creating the VM Instance.

11. Verify if the VM is accessible via SSH. 



You have now created your own VM instance!

I will post the PART 2 of the installation this week. Or you can follow this video below that I used as a guide which I mentioned in my previous post.

How to run EVE-NG in the Cloud

IMPORTANT: Take note to STOP the VM if you're not using it, else you'll get billed from your free credit.


TIP: You can manage the VM using your phone by downloading the app "Cloud Console". So you can spin-up the VM before you get started. And stop the VM if you forgot to do it from the browser.
 

     



Sharing my RS Lab setup

Have you thought about having your own network lab simulator using the Cloud? 

Are you dealing with low specs on your PC to run a lab?

Are you lazy doing all the basic IP addressing just to get started?

Or you just want to test something before deployment?
 
Well, this is for you! I created a lab and sharing it with everyone. This lab focuses more on routing.

If you're preparing to take an exam or to enhance your routing skills, I think this might be helpful. In this way, you don't have to worry about IP addressing and you can do what you want right away like configuring BGP or OSPF for example.

As part of preparing for the CCIE Enterprise Lab Exam, I created this to get some practice with R&S. I'm planning to take it by this year 2020 (hopefully!) And I'll try to create my own SDWAN lab in the future. I'll share it once I'm able to do it.

As of this writing, there's a COVID-19 virus outbreak all over the world. Praying for the safety of everyone and hope this ends soon. But I thought about sharing this so I can help someone get started.

I've used EVE-NG via GCP (Google Cloud Platform) to set this up. If you already have it installed, then good! If not, let me share a video below as this post is not about installation.

How to run EVE-NG in the Cloud

On my lab below, it contains 16 routers that runs on VIRL image vios-adventerprisek9-m.vmdk.SPA.156-1.T. (Please don't ask for the VIRL image from me)

Note: This does not serve as a substitute for actual images used in the production environment. So there might be some differences. Remember this is just for lab purposes.

Refer to the link below to download the files. Import the UNL in EVE-NG.


Download Lab configs and UNL
RS Lab - Initial Configs, and sample MPLS config (basic IP addressing)
RS Lab - Initial Configs (contains the UNL with only basic IP addressing)
RS Lab Diagram - Overview
RS Lab Diagram - IP Addressing

MPLS - Customer A - 2 sites (contains the config and the UNL)


Refer mainly to the following: 
 -Text file: "RS Lab - Initial Configs, and sample MPLS config.txt".
 -Topology: "RS Lab - Initial Configs.unl" 

The diagrams are also included in the zip file above.

The set-up is flexible in such a way that you can set your own objectives depending on what you're trying to achieve. As I provided a topology with only the basic IP configurations but also shared a configuration about MPLS L3VPN as I connected the 2 Customer A sites for practice. Refer to the text files as I included some advanced configs.


Logical Diagram

 
Physical Diagram in EVE-NG


Currently, the routers that are configured are the Core (R1-R6), and the Customer A sites 1 and 2 (R7-R9, and R11). I had the following objectives in mind.
 
 High-Level Objective(s):
      - Reachability between Customer A sites 1 and 2
      - Site 1 should load balance the traffic between the 2 circuits


 Low-Level Objective(s):
      - Basic IPv4 and IPv6 addressing
      - BGP configuration for both sites
      - MPLS configuration in the Service Provider (R1-R6)
      - VRF configuration in the PE routers (R3-R5)
      - CE-PE Peering
      - VPNv4 / VPNv6 Peering and Redistribution
      - Load balance the traffic between the 2 circuits of Site 1  
      - Verify reachability between IPv4 and IPv6 prefixes of both sites 

Refer to the folder "MPLS - Customer A - 2 sites" for the configurations and UNL.
This has been tested to be working properly as far as the objectives are concerned.

R9 (Site 1) - BGP Routing Table (IPv4 and IPv6)

 R9 (Site 1) -Ping test to Site 2 prefixes (using TCL script)




R11 (Site 2) - BGP Routing Table (IPv4 and IPv6)
 

 R11 (Site 2) -Ping test to Site 1 prefixes (using TCL script)


IP addressing reference:
SP Routers
Lo0: 200.1.x.x/32  ; x = Router number

P2P links inside the SP:  200.0.xy.x/24  ;
  Ex: (R1-R4) R1 = 200.0.14.1  R4 = 200.0.14.4

WAN links: 200.2.xy.0/30  .1 on SP, .2 on Customer

 
R3-R7: 200.2.37.0/30 - Customer A Site 1  AS 65100
R4-R8: 200.2.48.0/30 - Customer A Site 1  AS 65100
R5-R11:200.2.115.0/30 - Customer A Site 2 AS 65200

R4-R12:200.2.124.0/30 - Customer B Site 1  AS 64520
R5-R14:200.2.145.0/30 - Customer B Site 2  AS 64520
R6-R15:200.2.156.0/30 - Customer B Site 2  AS 64520

R3-R10:200.2.103.0/30 - Customer C Site 1  AS 65510
R6-R13:200.2.136.0/30 - Customer C Site 2  AS 65530



Additional Info:
 I had 10 routers in the lab. Before I begin, I fired up 5 routers at the same time and the CPU usage peaked at 99%.


After awhile like around 5 to 10 mins, the CPU usage was at around 60% more or less. Then I fired up the 5 remaining routers and the CPU usage peaked again but it became stable just like the first time around. I didn't have any issues aside from that.




Hope this helps! Enjoy labbing!

I created this blog for the purpose of sharing knowledge and experience. Let me know if you have any comments, questions or suggestions. I'll try to reply as soon as I can. Thank you!