Giuseppe1992 / Distrinet

Distributed Network emulator, based on Mininet
MIT License
17 stars 16 forks source link

G5K tutorial doesn't seem to be available #48

Open t-valette opened 4 years ago

t-valette commented 4 years ago

According to https://github.com/Giuseppe1992/Distrinet/pull/25, Grid5000 deployment should be supported but the documentation is empty : https://distrinet-emu.github.io/grid5000.html

Giuseppe1992 commented 4 years ago

Hello Kyominii, Thanks for the report; I will update the G5K documentation ASAP. For now, an easy workaround is to use the General Environment tutorial after you deploy the G5K hosts. Distrinet should be compatible with the "ubuntu1804-x64-min" image in g5k.

So book the hosts that you need with oarsub i.e.

gidilena@fnancy:~$ oarsub -p "cluster='grisou'" -l nodes=2,walltime=4  -t deploy -t destructive   "sleep 10d"
[ADMISSION RULE] Modify resource description with type constraints
[ADMISSION_RULE] Resources properties : \{'resources' => [{'value' => '2','resource' => 'host'}],'property' => '(type = \'default\') AND production = \'NO\''}
[ADMISSION RULE] Job properties : ((cluster='grisou') AND deploy = 'YES') AND maintenance = 'NO'
Generate a job key...
OAR_JOB_ID=2379111

connect to the job

gidilena@fnancy:~$ oarsub -C 2379111
Connect to OAR job 2379111 via the node frontend
kadeploy3 -f $OAR_FILE_NODES  -k -e ubuntu1804-x64-min -p 5

after the deployment, you can choose if to install the client on your machine or in one of G5k machines and use the tutorial: General_Environment I suggest for faster experiment, to use one machine of G5K as a client and master, and the others as Workers.

If you use your machine as the client, it is important to have the VPN connected to G5K.

Let me know if it is working.

Giuseppe

t-valette commented 4 years ago

Hello, thank you for your reply

I already tried this method and I can use pingall (but there are some errors).

root@grisou-19:~/Distrinet/mininet# python3 bin/dmn --bastion=grisou-44 --workers="grisou-44,grisou-46,grisou-48" --controller=lxcremote,ip=192.168.0.1 --topo=linear,2
*** WARNING: Experimental cloud mode!
*** Using LxcNode, LxcOVSSwitch, CloudLink
*** Mapping: {'h1': 'grisou-44', 'h2': 'grisou-46', 's1': 'grisou-48', 's2': 'grisou-44'}
*** STARTING DISTRINET ****** Creating network
*** Adding controller
Connecting to remote controller at 192.168.0.1:6653
*** Adding hosts:
h1 h2 
*** Adding switches:
(s1 exited - ignoring cmd('ifconfig', 'lo', 'up'))
s1 (s2 exited - ignoring cmd('ifconfig', 'lo', 'up'))
s2 
*** Adding links:
Error setting h1-eth0 up: ifconfig h1-eth0 up
 (100.00Mbit) *** Error: tc qdisc add dev h1-eth0 root handle 5:0 htb default 1
*** Error: tc class add dev h1-eth0 parent 5:0 classid 5:1 htb rate 100.000000Mbit burst 15k
Error setting s1-eth1 up: ifconfig s1-eth1 up
 (100.00Mbit) *** Error: tc qdisc add dev s1-eth1 root handle 5:0 htb default 1
*** Error: tc class add dev s1-eth1 parent 5:0 classid 5:1 htb rate 100.000000Mbit burst 15k
(h1, s1) Error setting h2-eth0 up: ifconfig h2-eth0 up
 (100.00Mbit) *** Error: tc qdisc add dev h2-eth0 root handle 5:0 htb default 1
*** Error: tc class add dev h2-eth0 parent 5:0 classid 5:1 htb rate 100.000000Mbit burst 15k
Error setting s2-eth1 up: ifconfig s2-eth1 up
 (100.00Mbit) *** Error: tc qdisc add dev s2-eth1 root handle 5:0 htb default 1
*** Error: tc class add dev s2-eth1 parent 5:0 classid 5:1 htb rate 100.000000Mbit burst 15k
(h2, s2) Error setting s2-eth2 up: ifconfig s2-eth2 up
 (100.00Mbit) *** Error: tc qdisc add dev s2-eth2 root handle 5:0 htb default 1
*** Error: tc class add dev s2-eth2 parent 5:0 classid 5:1 htb rate 100.000000Mbit burst 15k
Error setting s1-eth2 up: ifconfig s1-eth2 up
 (100.00Mbit) *** Error: tc qdisc add dev s1-eth2 root handle 5:0 htb default 1
*** Error: tc class add dev s1-eth2 parent 5:0 classid 5:1 htb rate 100.000000Mbit burst 15k
(s2, s1) 
*** Configuring hosts
h1 h2 
*** Starting controller
c0 
*** Starting 2 switches
s1 Error setting s1-eth1 up: ifconfig s1-eth1 up
 (100.00Mbit) *** Error: tc qdisc del dev s1-eth1 root
*** Error: tc qdisc add dev s1-eth1 root handle 5:0 htb default 1
*** Error: tc class add dev s1-eth1 parent 5:0 classid 5:1 htb rate 100.000000Mbit burst 15k
Error setting s1-eth2 up: ifconfig s1-eth2 up
 (100.00Mbit) *** Error: tc qdisc del dev s1-eth2 root
*** Error: tc qdisc add dev s1-eth2 root handle 5:0 htb default 1
*** Error: tc class add dev s1-eth2 parent 5:0 classid 5:1 htb rate 100.000000Mbit burst 15k
s2 Error setting s2-eth1 up: ifconfig s2-eth1 up
 (100.00Mbit) *** Error: tc qdisc del dev s2-eth1 root
*** Error: tc qdisc add dev s2-eth1 root handle 5:0 htb default 1
*** Error: tc class add dev s2-eth1 parent 5:0 classid 5:1 htb rate 100.000000Mbit burst 15k
Error setting s2-eth2 up: ifconfig s2-eth2 up
 (100.00Mbit) *** Error: tc qdisc del dev s2-eth2 root
*** Error: tc qdisc add dev s2-eth2 root handle 5:0 htb default 1
*** Error: tc class add dev s2-eth2 parent 5:0 classid 5:1 htb rate 100.000000Mbit burst 15k
...Error setting s1-eth1 up: ifconfig s1-eth1 up
 (100.00Mbit) *** Error: tc qdisc del dev s1-eth1 root
*** Error: tc qdisc add dev s1-eth1 root handle 5:0 htb default 1
*** Error: tc class add dev s1-eth1 parent 5:0 classid 5:1 htb rate 100.000000Mbit burst 15k
Error setting s1-eth2 up: ifconfig s1-eth2 up
 (100.00Mbit) *** Error: tc qdisc del dev s1-eth2 root
*** Error: tc qdisc add dev s1-eth2 root handle 5:0 htb default 1
*** Error: tc class add dev s1-eth2 parent 5:0 classid 5:1 htb rate 100.000000Mbit burst 15k
...Error setting s2-eth1 up: ifconfig s2-eth1 up
 (100.00Mbit) *** Error: tc qdisc del dev s2-eth1 root
*** Error: tc qdisc add dev s2-eth1 root handle 5:0 htb default 1
*** Error: tc class add dev s2-eth1 parent 5:0 classid 5:1 htb rate 100.000000Mbit burst 15k
Error setting s2-eth2 up: ifconfig s2-eth2 up
 (100.00Mbit) *** Error: tc qdisc del dev s2-eth2 root
*** Error: tc qdisc add dev s2-eth2 root handle 5:0 htb default 1
*** Error: tc class add dev s2-eth2 parent 5:0 classid 5:1 htb rate 100.000000Mbit burst 15k

*** Starting CLI:
mininet> pingall
*** Ping: testing ping reachability
h1 -> h2 
h2 -> h1 
*** Results: 0% dropped (2/2 received)
mininet>

I saw on the AWS tutorial that it should be fine with it though.

Giuseppe1992 commented 4 years ago

Ok, You did it :-)

the errors that you see are a bug when we are setting the link delays and capacities, but they are set correctly.

if you try to do run iperf, you shoud see that the bw is around 100 Mbit.

mininet> iperf

let me know if you have other problems or questions,

Giuseppe