= EG-EXP-2: ExoGENI Single Site Acceptance Test =
This page captures status for the test case EG-EXP-2, which verifies basic operations of VMs and data flows within one rack. For overall status see the [wiki:GENIRacksHome/ExogeniRacks/AcceptanceTestStatus ExoGENI Acceptance Test Status] page.
''Last update: 03/11/13''
= Test Status =
This section captures the status for each step in the acceptance test plan.
|| '''Step''' || '''State''' || ''' Ticket ''' || '''Comments''' ||
|| Step 1 ||[[Color(yellow,Complete)]]|| || ||
|| Step 2 ||[[Color(yellow,Complete)]]|| ||listresources does not include list of user custom images ||
|| Step 3 ||[[Color(yellow,Complete)]]|| ||listresources does not include list of user custom images ||
|| Step 4 ||[[Color(yellow,Complete)]]|| || ||
|| Step 5 ||[[Color(yellow,Complete)]]|| || ||
|| Step 6 ||[[Color(yellow,Complete)]]|| || ||
|| Step 7 ||[[Color(yellow,Complete)]]|| || ||
|| Step 8 ||[[Color(yellow,Complete)]]|| || ||
|| Step 9 ||[[Color(yellow,Complete)]]|| || ||
|| Step 10 ||[[Color(yellow,Complete)]]|| ||No user custom images are available, no image playpen available||
|| Step 11 ||[[Color(yellow,Complete)]]|| || ||
|| Step 12 ||[[Color(yellow,Complete)]]|| || ||
|| Step 13 ||[[Color(yellow,Complete)]]|| || ||
|| Step 14 ||[[Color(yellow,Complete)]]|| || ||
|| Step 15 ||[[Color(yellow,Complete)]]|| || ||
|| Step 16 ||[[Color(yellow,Complete)]]|| || ||
|| Step 17 ||[[Color(yellow,Complete)]]|| || ||
|| Step 18 ||[[Color(yellow,Complete)]]|| || ||
[[BR]]
|| '''State Legend''' || '''Description''' ||
|| [[Color(green,Pass)]] || Test completed and met all criteria ||
|| [[Color(#98FB98,Pass: most criteria)]] || Test completed and met most criteria. Exceptions documented ||
|| [[Color(red,Fail)]] || Test completed and failed to meet criteria. ||
|| [[Color(yellow,Complete)]] || Test completed but will require re-execution due to expected changes ||
|| [[Color(orange,Blocked)]] || Blocked by ticketed issue(s). ||
|| [[Color(#63B8FF,In Progress)]] || Currently under test. ||
[[BR]]
= Test Plan Steps =
The first experiment in this plane requires that two GPO Ubuntu images have been tested in the ExoGENI image playpen environment and have been uploaded to the [http://geni-images.renci.org/images/ RENCI VM image repository] using available ExoGENI documentation. Also required is that one Ubuntu image is for the VM and one Ubuntu image is for the bare metal node in this test. Based on the approach chosen for ExoGENI, an ''Image Playpen'' system is required to allow user-define OS support. The ''Image Playpen'' was originally planned to be a be available when x3650M4 nodes become available the week of 05/28/2012, but is yet to be available as of 08/13/2012.
Both user account used for this test have the following nick_names defined in the omni_config:
{{{
eg-gpo=,https://bbn-hn.exogeni.net:11443/orca/xmlrpc
eg-renci=,https://rci-hn.exogeni.net:11443/orca/xmlrpc
eg-sm=,https://geni.renci.org:11443/orca/xmlrpc
}}}
''' Notes:''' [[BR]]
1. Bare Metal nodes are available via ExoSM only. [[BR]]
2. Bare Metal node only support one version at this time. [[BR]]
3. Current test uses 1 Bare metal at BBN and 1 at RENCI. [[BR]]
== Step 1. As Experimenter1, request !ListResources from BBN ExoGENI ==
User credentials lnevers are used for this tests, and the listresources is requested as follows from the GPO ExoGENI resource aggregate:
{{{
$ omni.py -a eg-gpo listresources --available -o
}}}
== Step 2. Review advertisement RSpec and identify available resources ==
The originally required feature to have the listresources include a list of OS images is not available in ExoGENI listresources. Available image information is collected out-of-band, so when custom Images are tested they will not be part of list resources output. Verification will be based on custom image successful installation and usage in the ExoGENI rack.
== Step 3. Verify that the GPO Ubuntu image is available ==
Same as step 2.
== Step 4. Define a request RSpec for two VMs, each with a GPO Ubuntu image ==
Created the RSpec for the two VMs named [http://groups.geni.net/geni/browser/trunk/GENIRacks/ExoGENI/Spiral4/Rspecs/AcceptanceTests/EG-EXP-2/EG-EXP-2-exp1.rspec EG-EXP-2-exp1.rspec]
== Step 5. Create the first slice ==
{{{
$ omni.py createslice EG-EXP-2-exp1
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework pg
INFO:omni:Created slice with Name EG-EXP-2-exp1, URN urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+EG-EXP-2-exp1, Expiration 2013-03-12 13:28:29+00:00
INFO:omni: ------------------------------------------------------------
INFO:omni: Completed createslice:
Options as run:
framework: pg
Args: createslice EG-EXP-2-exp1
Result Summary: Created slice with Name EG-EXP-2-exp1, URN urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+EG-EXP-2-exp1, Expiration 2013-03-12 13:28:29+00:00
INFO:omni: ============================================================
}}}
== Step 6. Create a sliver in the first slice, using the RSpec defined in step 4. ==
{{{
$ omni.py -a eg-gpo createsliver EG-EXP-2-exp1 EG-EXP-2-exp1.rspec
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework pg
INFO:omni:Substituting AM nickname eg-gpo with URL https://bbn-hn.exogeni.net:11443/orca/xmlrpc, URN unspecified_AM_URN
INFO:omni:Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+EG-EXP-2-exp1 expires on 2013-03-12 13:28:29 UTC
INFO:omni:Substituting AM nickname eg-gpo with URL https://bbn-hn.exogeni.net:11443/orca/xmlrpc, URN unspecified_AM_URN
INFO:omni:Substituting AM nickname eg-gpo with URL https://bbn-hn.exogeni.net:11443/orca/xmlrpc, URN unspecified_AM_URN
INFO:omni:Creating sliver(s) from rspec file EG-EXP-2-exp1.rspec for slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+EG-EXP-2-exp1
INFO:omni:Got return from CreateSliver for slice EG-EXP-2-exp1 at https://bbn-hn.exogeni.net:11443/orca/xmlrpc:
INFO:omni:
INFO:omni:
INFO:omni:
INFO:omni: ------------------------------------------------------------
INFO:omni: Completed createsliver:
Options as run:
aggregate: ['eg-gpo']
framework: pg
Args: createsliver EG-EXP-2-exp1 EG-EXP-2-exp1.rspec
Result Summary: Got Reserved resources RSpec from bbn-hn-exogeni-net-11443-orca
INFO:omni: ============================================================
}}}
Verify that the sliver creation was completed, by looking for the "overall SliverStatus" to change from "configuring" to "ready":
{{{
$ omni.py -a eg-gpo sliverstatus EG-EXP-2-exp1
<...>
INFO:omni: Completed sliverstatus:
Options as run:
aggregate: ['eg-gpo']
framework: pg
Args: sliverstatus EG-EXP-2-exp1
Result Summary: Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+EG-EXP-2-exp1 expires on 2013-03-12 13:28:29 UTC
Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+EG-EXP-2-exp1 at AM https://bbn-hn.exogeni.net:11443/orca/xmlrpc
has overall SliverStatus: configuring.
Returned status of slivers on 1 of 1 possible aggregates.
INFO:omni: =========================================================
$ omni.py -a eg-gpo sliverstatus EG-EXP-2-exp1
<...>
INFO:omni: Completed sliverstatus:
Options as run:
aggregate: ['eg-gpo']
framework: pg
Args: sliverstatus EG-EXP-2-exp1
Result Summary: Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+EG-EXP-2-exp1 expires on 2013-03-12 13:28:29 UTC
Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+EG-EXP-2-exp1 at AM https://bbn-hn.exogeni.net:11443/orca/xmlrpc has overall SliverStatus: ready.
Returned status of slivers on 1 of 1 possible aggregates.
INFO:omni: ============================================================
}}}
Once sliver is ready, determine how to access allocated hosts:
{{{
$ readyToLogin.py -a eg-gpo EG-EXP-2-exp1
<...>
User root logins to VM using:
xterm -e ssh -i /home/lnevers/.ssh/id_rsa root@192.1.242.8 &
User root logins to VM-0 using:
xterm -e ssh -i /home/lnevers/.ssh/id_rsa root@192.1.242.9 &
}}}
== Step 7. Log in to each of the systems, and send traffic to the other system sharing a VLAN ==
Connect to the first VM:
{{{
$ ssh -i /home/lnevers/.ssh/id_rsa root@192.1.242.8
root@debian:~# ifconfig eth1
eth1 Link encap:Ethernet HWaddr fe:16:3e:00:28:ec
inet addr:172.16.1.1 Bcast:172.16.255.255 Mask:255.255.0.0
inet6 addr: fe80::fc16:3eff:fe00:28ec/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:5 errors:0 dropped:0 overruns:0 frame:0
TX packets:5 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:378 (378.0 B) TX bytes:398 (398.0 B)
}}}
Connect to the second VM:
{{{
$ ssh -i /home/lnevers/.ssh/id_rsa root@192.1.242.9
root@debian:~# ifconfig eth1
eth1 Link encap:Ethernet HWaddr fe:16:3e:00:35:25
inet addr:172.16.1.2 Bcast:172.16.255.255 Mask:255.255.0.0
inet6 addr: fe80::fc16:3eff:fe00:3525/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:14 errors:0 dropped:0 overruns:0 frame:0
TX packets:5 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1044 (1.0 KiB) TX bytes:378 (378.0 B)
}}}
Exchange some Iperf traffic:
''' Iperf VM to VM (TCP) - TCP window size: 16.0 KB '''
__One Client__ (/usr/bin/iperf -c 172.16.1.1 -t 60)
{{{
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-60.0 sec 17.1 GBytes 2.45 Gbits/sec
}}}
__Five Clients__ (/usr/bin/iperf -c 172.16.1.1 -t 60 -P 5)
{{{
[ ID] Interval Transfer Bandwidth
[ 5] 0.0-60.0 sec 6.99 GBytes 1.00 Gbits/sec
[ 3] 0.0-60.0 sec 6.98 GBytes 999 Mbits/sec
[ 7] 0.0-60.0 sec 7.02 GBytes 1.00 Gbits/sec
[ 6] 0.0-60.0 sec 7.04 GBytes 1.01 Gbits/sec
[ 4] 0.0-60.0 sec 6.98 GBytes 999 Mbits/sec
[SUM] 0.0-60.0 sec 35.0 GBytes 5.01 Gbits/sec
}}}
__Ten Clients__ (/usr/bin/iperf -c 172.16.1.1 -t 60 -P 10)
{{{
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-60.0 sec 3.86 GBytes 553 Mbits/sec
[ 6] 0.0-60.0 sec 3.76 GBytes 538 Mbits/sec
[ 8] 0.0-60.0 sec 3.86 GBytes 552 Mbits/sec
[ 9] 0.0-60.0 sec 3.93 GBytes 563 Mbits/sec
[ 5] 0.0-60.0 sec 3.85 GBytes 551 Mbits/sec
[ 7] 0.0-60.0 sec 3.70 GBytes 530 Mbits/sec
[ 10] 0.0-60.0 sec 3.76 GBytes 538 Mbits/sec
[ 11] 0.0-60.0 sec 3.83 GBytes 548 Mbits/sec
[ 4] 0.0-60.0 sec 3.77 GBytes 540 Mbits/sec
[ 12] 0.0-60.0 sec 3.84 GBytes 550 Mbits/sec
[SUM] 0.0-60.0 sec 38.2 GBytes 5.46 Gbits/sec
}}}
'''Iperf ExoGENI VM to the VM (UDP) - 1470 byte datagrams & UDP buffer size: 136 KByte ''' (/usr/bin/iperf -c 172.16.1.1 -t 60 -u)
{{{
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-60.0 sec 7.50 MBytes 1.05 Mbits/sec
[ 3] Sent 5351 datagrams
[ 3] Server Report:
[ 3] 0.0-60.1 sec 7.49 MBytes 1.05 Mbits/sec 2.032 ms 6/ 5351 (0.11%)
}}}
''' Ping from ExoGENI VM to the VM'''
{{{
60 packets transmitted, 59 received, 1% packet loss, time 58999ms
rtt min/avg/max/mdev = 0.388/0.514/0.707/0.083 ms
}}}
== Step 8. Using root privileges on one of the VMs load a Kernel module. ==
Show current modules loaded, load a module, and then remove the module:
{{{
root@debian:~# lsmod
Module Size Used by
virtio_net 10573 0
acpiphp 15157 0
pci_hotplug 21587 1 acpiphp
joydev 8459 0
snd_pcm 60487 0
snd_timer 15598 1 snd_pcm
usbhid 33292 0
snd 46526 2 snd_pcm,snd_timer
soundcore 4598 1 snd
processor 29935 0
snd_page_alloc 6249 1 snd_pcm
i2c_piix4 8328 0
psmouse 49937 0
hid 63257 1 usbhid
virtio_balloon 2961 0
evdev 7352 0
button 4650 0
pcspkr 1699 0
i2c_core 15819 1 i2c_piix4
serio_raw 3752 0
ext2 52905 1
mbcache 5050 1 ext2
dm_mod 53946 0
ata_generic 3239 0
ata_piix 21124 0
virtio_blk 4209 1
uhci_hcd 18521 0
8139too 17981 0
ehci_hcd 32097 0
libata 133776 2 ata_generic,ata_piix
floppy 49087 0
thermal 11674 0
thermal_sys 11942 2 processor,thermal
virtio_pci 5511 0
virtio_ring 3258 1 virtio_pci
virtio 3309 4 virtio_net,virtio_balloon,virtio_blk,virtio_pci
8139cp 15941 0
mii 3210 2 8139too,8139cp
usbcore 123122 4 usbhid,uhci_hcd,ehci_hcd
nls_base 6377 1 usbcore
scsi_mod 126725 1 libataroot@debian:~#
root@debian:~# modprobe dummy
root@debian:~# lsmod |grep dummy
dummy 1584 0
root@debian:~# modprobe -r dummy
root@debian:~# lsmod |grep dummy
root@debian:~#
}}}
== Step 9. As Experimenter2, request !ListResources from GPO ExoGENI. ==
User account lnevers1 will be used for this tests, and the listresources is requested as follows from the ExoSMto get a list of resources. Request is modified from original plan because bare metal node are only available fro the ExoSM at this time:
{{{
$ omni.py -a exosm listresources --available -o
}}}
== Step 10. Define a request RSpec for two bare metal nodes, both using the uploaded GPO Ubuntu images. ==
Create the RSpec the 2 Bare metal nodes named [http://groups.geni.net/geni/browser/trunk/GENIRacks/ExoGENI/Spiral4/Rspecs/AcceptanceTests/EG-EXP-2/EG-EXP-2-exp2.rspec EG-EXP-2-exp2.rspec]. This test is currently modified to use the ExoSM rather than the BBN rack SM. The RSpec used has 1 bare metal node at BBN ExoGENI and one at RENCI ExoGENI.
== Step 11. Create the second slice. ==
{{{
$ omni.py createslice EG-EXP-2-exp2
}}}
== Step 12. Create a sliver in the second slice, using the RSpec defined in step 10. ==
{{{
$ omni.py -a eg-sm createsliver EG-EXP-2-exp2 EG-EXP-2-exp1.rspec
INFO:omni:Loading config file /home/lnevers2/.gcf/omni_config
INFO:omni:Using control framework pg
INFO:omni:Substituting AM nickname eg-sm with URL https://geni.renci.org:11443/orca/xmlrpc, URN unspecified_AM_URN
INFO:omni:Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+EG-EXP-2-exp2 expires on 2013-03-12 15:00:48 UTC
INFO:omni:Substituting AM nickname eg-sm with URL https://geni.renci.org:11443/orca/xmlrpc, URN unspecified_AM_URN
INFO:omni:Substituting AM nickname eg-sm with URL https://geni.renci.org:11443/orca/xmlrpc, URN unspecified_AM_URN
INFO:omni:Creating sliver(s) from rspec file EG-EXP-2-exp1.rspec for slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+EG-EXP-2-exp2
INFO:omni:Got return from CreateSliver for slice EG-EXP-2-exp2 at https://geni.renci.org:11443/orca/xmlrpc:
INFO:omni:
INFO:omni:
INFO:omni:
INFO:omni: ------------------------------------------------------------
INFO:omni: Completed createsliver:
Options as run:
aggregate: ['eg-sm']
framework: pg
Args: createsliver EG-EXP-2-exp2 EG-EXP-2-exp1.rspec
Result Summary: Got Reserved resources RSpec from geni-renci-org-11443-orca
INFO:omni: ============================================================
}}}
== Step 13. Log in to each of the systems, and send traffic to the other system. ==
Verify that the sliver creation is completed, by looking for an overall sliverstatus of 'ready':
{{{
$ omni.py -a eg-sm sliverstatus EG-EXP-2-exp2
<...>
INFO:omni: Completed sliverstatus:
Options as run:
aggregate: ['eg-sm']
framework: pg
Args: sliverstatus EG-EXP-2-exp2
Result Summary: Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+EG-EXP-2-exp2 expires on 2013-03-12 15:00:48 UTC
Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+EG-EXP-2-exp2 at AM https://geni.renci.org:11443/orca/xmlrpc has overall SliverStatus: ready.
Returned status of slivers on 1 of 1 possible aggregates.
INFO:omni: ============================================================
}}}
Once the sliver is ready, determine which hosts were assigned:
{{{
$ readyToLogin.py -a eg-sm EG-EXP-2-exp2
User root logins to VM using:
xterm -e ssh -i /home/lnevers2/.ssh/geni_key root@192.1.242.18 &
User root logins to VM-0 using:
xterm -e ssh -i /home/lnevers2/.ssh/geni_key root@192.1.242.19 &
}}}
== Step 14. Verify that experimenters 1 and 2 cannot use the control plane to access each others resources ==
Verify that attempt to login into other experiment nodes fails and verify that users are not able to mount each others experiment file system.
As experimenter1 (lnevers@bbn.com) attempt in to login to the second experiment EG-EXP-2-exp2:
{{{
lnevers@arendia:~$ ssh root@192.1.242.9
root@192.1.242.14's password:
Permission denied, please try again.
root@192.1.242.14's password:
Permission denied, please try again.
root@192.1.242.14's password:
Permission denied (publickey,password).
lnevers@arendia:~$
}}}
As experimenter1 (lnevers@bbn.com) login to own host and then attempt to get access to experimenter2 (lnevers1@bbn.com) host:
{{{root@debian:~# ssh 10.103.0.18
The authenticity of host '10.103.0.18 (10.103.0.18)' can't be established.
RSA key fingerprint is e7:1d:db:48:93:6c:9b:95:77:b8:46:b9:ea:9e:06:21.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '10.103.0.18' (RSA) to the list of known hosts.
root@10.103.0.18's password:
Permission denied, please try again.
root@10.103.0.18's password:
Permission denied, please try again.
root@10.103.0.18's password:
Permission denied (publickey,password).
root@debian:~#
}}}
== Step 15. Review system statistics and VM isolation and network isolation on data plane. ==
Reviewed usage statistics on the nodes:
{{{
top - 14:38:37 up 1:57, 1 user, load average: 0.00, 0.00, 0.00
Tasks: 53 total, 1 running, 52 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 121804k total, 112416k used, 9388k free, 2780k buffers
Swap: 0k total, 0k used, 0k free, 81156k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1 root 20 0 8356 784 652 S 0.0 0.6 0:00.35 init
2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd
3 root RT 0 0 0 0 S 0.0 0.0 0:00.00 migration/0
4 root 20 0 0 0 0 S 0.0 0.0 0:00.00 ksoftirqd/0
5 root RT 0 0 0 0 S 0.0 0.0 0:00.00 watchdog/0
6 root 20 0 0 0 0 S 0.0 0.0 0:00.08 events/0
7 root 20 0 0 0 0 S 0.0 0.0 0:00.00 cpuset
8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 khelper
9 root 20 0 0 0 0 S 0.0 0.0 0:00.00 netns
10 root 20 0 0 0 0 S 0.0 0.0 0:00.00 async/mgr
11 root 20 0 0 0 0 S 0.0 0.0 0:00.00 pm
12 root 20 0 0 0 0 S 0.0 0.0 0:00.00 sync_supers
13 root 20 0 0 0 0 S 0.0 0.0 0:00.00 bdi-default
14 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kintegrityd/0
15 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kblockd/0
16 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kacpid
17 root 20 0 0 0 0 S 0.0 0.0 0:00.03 kacpi_notify
}}}
No issues were found.
== Step 16. Verify that each VM has a distinct MAC address for that interface. ==
Issue ifconfig on each assigned host and verified that each host has unique MAC address.
The ifconfig output from the first host:
{{{
$ ssh -i /home/lnevers/.ssh/id_rsa root@192.1.242.8
root@debian:~# /sbin/ifconfig eth1
eth1 Link encap:Ethernet HWaddr fe:16:3e:00:28:ec
inet addr:172.16.1.1 Bcast:172.16.255.255 Mask:255.255.0.0
inet6 addr: fe80::fc16:3eff:fe00:28ec/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:21560007 errors:0 dropped:0 overruns:0 frame:0
TX packets:3072795 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:98332404574 (91.5 GiB) TX bytes:202809290 (193.4 MiB)
}}}
The ifconfig output from the second host:
{{{
$ ssh -i /home/lnevers/.ssh/id_rsa root@192.1.242.9
root@debian:~# /sbin/ifconfig eth1
eth1 Link encap:Ethernet HWaddr fe:16:3e:00:35:25
inet addr:172.16.1.2 Bcast:172.16.255.255 Mask:255.255.0.0
inet6 addr: fe80::fc16:3eff:fe00:3525/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:3072784 errors:0 dropped:0 overruns:0 frame:0
TX packets:3844080 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:202807234 (193.4 MiB) TX bytes:97163161894 (90.4 GiB)
}}}
== Step 17. Verify that VMs' MAC addresses are learned on the data plane switch. ==
Ability to exchange traffic shows that the mac addresses are learned on the data plane switch. On the second host sent traffic to remote:
{{{
root@debian:~# ping 172.16.1.1 -c 3
PING 172.16.1.1 (172.16.1.1) 56(84) bytes of data.
64 bytes from 172.16.1.1: icmp_req=1 ttl=64 time=1005 ms
64 bytes from 172.16.1.1: icmp_req=2 ttl=64 time=6.49 ms
arp -a64 bytes from 172.16.1.1: icmp_req=3 ttl=64 time=0.503 ms
--- 172.16.1.1 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2000ms
rtt min/avg/max/mdev = 0.503/337.557/1005.678/472.439 ms, pipe 2
root@debian:~# arp -a
? (172.16.1.1) at fe:16:3e:00:28:ec [ether] on eth1
? (10.103.0.18) at fa:16:3e:13:69:d4 [ether] on eth0
? (10.103.0.1) at fa:16:3e:1b:5b:b3 [ether] on eth0
}}}
== Step 18. Stop traffic and delete slivers. ==
Stopped traffic and deleted sliver at the ExoSM:
{{{
$ omni.py -a eg-sm deletesliver EG-EXP-2-exp2
}}}