{"id":202,"date":"2020-06-14T14:56:15","date_gmt":"2020-06-14T13:56:15","guid":{"rendered":"https:\/\/blog.thomarite.uk\/?p=202"},"modified":"2020-06-24T12:40:25","modified_gmt":"2020-06-24T11:40:25","slug":"eve-ng-arista-lab","status":"publish","type":"post","link":"https:\/\/blog.thomarite.uk\/index.php\/2020\/06\/14\/eve-ng-arista-lab\/","title":{"rendered":"EVE-NG: Arista Lab"},"content":{"rendered":"\n<p>As my last attempt to build a MPLS-SR Arista lab failed usin cEOS. I decided to try a different approach as I need more resources that my laptop has. For sometime, I wanted to use <a href=\"https:\/\/www.tesuto.com\/\">tesuto<\/a> but I am not sure if it is still on business. From the main page, you can&#8217;t find any link to register (and pay) for the service. Although if you search for &#8220;pricing&#8221; you can find a link to that. That&#8217;s it.<\/p>\n\n\n\n<p>The other option was to use <a href=\"https:\/\/www.eve-ng.net\/\">EVE-NG<\/a>. You can use it in your own bare-metal server or in the cloud.<\/p>\n\n\n\n<p>So finally, I decided to spend some money.  I signed up for GCP with a $300 free computing offer. So at least I dont pay for GCP yet and then I bought one year of EVE-NG professional. Let&#8217;s see how it goes.<\/p>\n\n\n\n<p>Before buying the license, you need to install eve-ng. So I followed the <a href=\"https:\/\/www.eve-ng.net\/wp-content\/uploads\/2020\/05\/EVE-COOK-BOOK-1.35-2020.pdf\">official documentation<\/a> to use it in GCP as it is quite up to date.<\/p>\n\n\n\n<p>I consulted other links too just to compare other users experiences like these:<\/p>\n\n\n\n<p><a href=\"https:\/\/github.com\/NetDevNotes\/Eve-NG-in-Google-Cloud\">https:\/\/github.com\/NetDevNotes\/Eve-NG-in-Google-Cloud<\/a><\/p>\n\n\n\n<figure class=\"wp-block-embed-wordpress wp-block-embed is-type-wp-embed is-provider-openeye-software\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"wp-embedded-content\" data-secret=\"TmRWBBoq8S\"><a href=\"https:\/\/openeye.blog\/2020\/04\/15\/installing-eve-ng-on-google-cloud-platform\/\">Deploying EVE-NG On Google Cloud Platform: Part 1<\/a><\/blockquote><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" title=\"&#8220;Deploying EVE-NG On Google Cloud Platform: Part 1&#8221; &#8212; OpenEye Software\" src=\"https:\/\/openeye.blog\/2020\/04\/15\/installing-eve-ng-on-google-cloud-platform\/embed\/#?secret=TmRWBBoq8S\" data-secret=\"TmRWBBoq8S\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe>\n<\/div><\/figure>\n\n\n\n<p>I had an issue during the process. When I had to configure DHCP, the IP wizard was showing garbage in the script. Hopefully I didnt have to add anything just accept all default values.<\/p>\n\n\n\n<p>So once it is done, you need to https to the VM&#8230;. it didnt work. Somehow &#8220;apache&#8221; was started. So after startup, got access. I can login and change the default password.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">root@eveng01:\/var\/www\/html# service apache2 start\nroot@eveng01:\/var\/www\/html# service apache2 status<\/pre>\n\n\n\n<p>So far, I am not planning to give it a static IP to the VM and a FQDN from my domain. Maybe in the future if I use it often.<\/p>\n\n\n\n<p>Now, I need to create the Arista lab. I followed one of the links earlier, it was quite handy.<\/p>\n\n\n\n<figure class=\"wp-block-embed-wordpress wp-block-embed is-type-wp-embed is-provider-openeye-software\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"wp-embedded-content\" data-secret=\"hidZrIFsV0\"><a href=\"https:\/\/openeye.blog\/2020\/04\/20\/deploying-eve-ng-on-google-cloud-platform-part-2\/\">Deploying EVE-NG On Google Cloud Platform: Part 2<\/a><\/blockquote><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" title=\"&#8220;Deploying EVE-NG On Google Cloud Platform: Part 2&#8221; &#8212; OpenEye Software\" src=\"https:\/\/openeye.blog\/2020\/04\/20\/deploying-eve-ng-on-google-cloud-platform-part-2\/embed\/#?secret=hidZrIFsV0\" data-secret=\"hidZrIFsV0\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe>\n<\/div><\/figure>\n\n\n\n<p>I created my small 3 nodes lab, apply the config. All this with a couple of reboots in each device and you have the lab up and running!<\/p>\n\n\n\n<p>It is nice to work in a system with plenty of RAM. The VM has 60GB of RAM and 16vCPU. So I should be able to create a lab with 14 vEOS (each one needs 4GB and 1CPU).<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">$ top\ntop - 13:00:27 up 1:33, 1 user, load average: 2.12, 1.37, 1.04\nTasks: 266 total, 1 running, 168 sleeping, 0 stopped, 0 zombie\n%Cpu(s): 10.3 us, 5.9 sy, 0.0 ni, 83.4 id, 0.0 wa, 0.0 hi, 0.4 si, 0.0 st\nKiB Mem : 10.2\/61838576 [ ]\nKiB Swap: 0.0\/0 [ ]\nPID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND\n27623 root 20 0 3034100 1.992g 25696 S 100.4 3.4 11:21.40 qemu-system-x86\n26120 root 20 0 3034100 1.951g 26068 S 100.0 3.3 8:54.66 qemu-system-x86\n24536 root 20 0 3034100 1.915g 26072 S 43.3 3.2 9:16.11 qemu-system-x86\n245 root 25 5 0 0 0 S 8.2 0.0 2:05.36 uksmd\n7500 www-data 20 0 377908 30744 12732 S 4.5 0.0 0:17.27 apache2\n4262 root 20 0 1138416 15732 13508 S 0.8 0.0 0:25.40 janus\n5526 tomcat8 20 0 5925452 348168 17676 S 0.8 0.6 0:43.17 java\n159 root 20 0 0 0 0 I 0.4 0.0 0:01.13 kworker\/6:1-eve\n4363 mysql 20 0 2493932 85712 20408 S 0.4 0.1 0:10.80 mysqld\n7210 www-data 20 0 377900 31024 12724 S 0.4 0.1 0:07.08 apache2<\/pre>\n\n\n\n<p>Unfortunately, I am hitting the same problem, and this time, the MAC addresses are the ones you expect to see based on the interface outputs:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"427\" src=\"https:\/\/blog.thomarite.uk\/wp-content\/uploads\/2020\/06\/Screenshot-from-2020-06-14-14-16-48-1024x427.png\" alt=\"\" class=\"wp-image-203\" srcset=\"https:\/\/blog.thomarite.uk\/wp-content\/uploads\/2020\/06\/Screenshot-from-2020-06-14-14-16-48-1024x427.png 1024w, https:\/\/blog.thomarite.uk\/wp-content\/uploads\/2020\/06\/Screenshot-from-2020-06-14-14-16-48-300x125.png 300w, https:\/\/blog.thomarite.uk\/wp-content\/uploads\/2020\/06\/Screenshot-from-2020-06-14-14-16-48-768x320.png 768w, https:\/\/blog.thomarite.uk\/wp-content\/uploads\/2020\/06\/Screenshot-from-2020-06-14-14-16-48-1536x640.png 1536w, https:\/\/blog.thomarite.uk\/wp-content\/uploads\/2020\/06\/Screenshot-from-2020-06-14-14-16-48-2048x853.png 2048w, https:\/\/blog.thomarite.uk\/wp-content\/uploads\/2020\/06\/Screenshot-from-2020-06-14-14-16-48-1200x500.png 1200w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><\/figure>\n\n\n\n<p>I have asked again Arista if this is expected&#8230;<\/p>\n\n\n\n<p>In the main time, I need to learn how to map the devices in the VM to external ports so I can access directly from my laptop.<\/p>\n\n\n\n<p>UPDATE<\/p>\n\n\n\n<p>My Arista SE confirmed that cEOS doesnt support MPLS Data Plane. And this should work with vEOS. So I asked in Arista forum about this problem with vEOS and turns out that this works but you need to be sure that a &#8220;physical&#8221; interface is attached to the VRF, a Loopback or SVI is not enough.<\/p>\n\n\n\n<p>This seems to be the original post about the problem:<\/p>\n\n\n\n<p><a href=\"https:\/\/eos.arista.com\/forum\/see-bgp-routes-unable-to-ping\/\">https:\/\/eos.arista.com\/forum\/see-bgp-routes-unable-to-ping\/<\/a><\/p>\n\n\n\n<p>So I just added a VPC to et3 in each device in CUST-A VRF and I can ping across VRFs!!!<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">r4#ping vrf CUST-A 192.168.0.2 source 192.168.0.1\nPING 192.168.0.2 (192.168.0.2) from 192.168.0.1 : 72(100) bytes of data.\n80 bytes from 192.168.0.2: icmp_seq=1 ttl=65 time=70.9 ms\n80 bytes from 192.168.0.2: icmp_seq=2 ttl=65 time=64.3 ms\n80 bytes from 192.168.0.2: icmp_seq=3 ttl=65 time=58.2 ms\n80 bytes from 192.168.0.2: icmp_seq=4 ttl=65 time=50.6 ms\n80 bytes from 192.168.0.2: icmp_seq=5 ttl=65 time=58.6 ms\n--- 192.168.0.2 ping statistics ---\n5 packets transmitted, 5 received, 0% packet loss, time 47ms\nrtt min\/avg\/max\/mdev = 50.613\/60.554\/70.943\/6.786 ms, pipe 5, ipg\/ewma 11.817\/65.414 ms\nr4#<\/pre>\n\n\n\n<p>And the funny thing. I can&#8217;t see anymore the MPLS packets in the tcpdump \ud83d\ude42<\/p>\n\n\n\n<p>Anyway, good news, I can carry on creating more complex labs and test some scripting\/automation stuff.<\/p>\n\n\n\n<p>This is the latest diagram:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"846\" height=\"994\" src=\"https:\/\/blog.thomarite.uk\/wp-content\/uploads\/2020\/06\/Screenshot-from-2020-06-24-12-37-13.png\" alt=\"\" class=\"wp-image-217\" srcset=\"https:\/\/blog.thomarite.uk\/wp-content\/uploads\/2020\/06\/Screenshot-from-2020-06-24-12-37-13.png 846w, https:\/\/blog.thomarite.uk\/wp-content\/uploads\/2020\/06\/Screenshot-from-2020-06-24-12-37-13-255x300.png 255w, https:\/\/blog.thomarite.uk\/wp-content\/uploads\/2020\/06\/Screenshot-from-2020-06-24-12-37-13-768x902.png 768w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>As my last attempt to build a MPLS-SR Arista lab failed usin cEOS. I decided to try a different approach as I need more resources that my laptop has. For sometime, I wanted to use tesuto but I am not sure if it is still on business. From the main page, you can&#8217;t find any &hellip; <a href=\"https:\/\/blog.thomarite.uk\/index.php\/2020\/06\/14\/eve-ng-arista-lab\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;EVE-NG: Arista Lab&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2],"tags":[],"class_list":["post-202","post","type-post","status-publish","format-standard","hentry","category-networks"],"_links":{"self":[{"href":"https:\/\/blog.thomarite.uk\/index.php\/wp-json\/wp\/v2\/posts\/202","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.thomarite.uk\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.thomarite.uk\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.thomarite.uk\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.thomarite.uk\/index.php\/wp-json\/wp\/v2\/comments?post=202"}],"version-history":[{"count":4,"href":"https:\/\/blog.thomarite.uk\/index.php\/wp-json\/wp\/v2\/posts\/202\/revisions"}],"predecessor-version":[{"id":218,"href":"https:\/\/blog.thomarite.uk\/index.php\/wp-json\/wp\/v2\/posts\/202\/revisions\/218"}],"wp:attachment":[{"href":"https:\/\/blog.thomarite.uk\/index.php\/wp-json\/wp\/v2\/media?parent=202"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.thomarite.uk\/index.php\/wp-json\/wp\/v2\/categories?post=202"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.thomarite.uk\/index.php\/wp-json\/wp\/v2\/tags?post=202"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}