X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=examples%2Fopenvswitch%2Fovs_ping_3switches_line.py;h=d686ef3289005286d47e04bc3ddec9f536b84f1d;hb=b6c4948fd994223cff257cbdae7146da1339b58d;hp=ca1ebeed5a68c6d9717a1b6eb4ef3bf338542a29;hpb=1e2eb157cb569e9c28a5b7888ed97076d27414cb;p=nepi.git diff --git a/examples/openvswitch/ovs_ping_3switches_line.py b/examples/openvswitch/ovs_ping_3switches_line.py index ca1ebeed..d686ef32 100644 --- a/examples/openvswitch/ovs_ping_3switches_line.py +++ b/examples/openvswitch/ovs_ping_3switches_line.py @@ -28,25 +28,24 @@ # Host1 Host3 Host2 - from nepi.execution.ec import ExperimentController import os, time def add_node(ec, host, user, pl_user, pl_password): - node = ec.register_resource("PlanetlabNode") + node = ec.register_resource("planetlab::Node") ec.set(node, "hostname", host) ec.set(node, "username", user) if pl_user: ec.set(node, "pluser", pl_user) if pl_password: ec.set(node, "plpassword", pl_password) - ec.set(node, "cleanHome", True) + ec.set(node, "cleanExperiment", True) ec.set(node, "cleanProcesses", True) return node def add_ovs(ec, bridge_name, virtual_ip_pref, controller_ip, controller_port, node): - ovs = ec.register_resource("OVSSwitch") + ovs = ec.register_resource("planetlab::OVSSwitch") ec.set(ovs, "bridge_name", bridge_name) ec.set(ovs, "virtual_ip_pref", virtual_ip_pref) ec.set(ovs, "controller_ip", controller_ip) @@ -54,30 +53,30 @@ def add_ovs(ec, bridge_name, virtual_ip_pref, controller_ip, controller_port, no ec.register_connection(ovs, node) return ovs -def add_port(ec, port_name, ovs): - port = ec.register_resource("OVSPort") +def add_port(ec, port_name, network, ovs): + port = ec.register_resource("planetlab::OVSPort") ec.set(port, "port_name", port_name) + ec.set(port, "network", network) ec.register_connection(port, ovs) return port -def add_tap(ec, ip4, prefix4, pointopoint, node): - tap = ec.register_resource("PlanetlabTap") - ec.set(tap, "ip4", ip4) - ec.set(tap, "prefix4", prefix4) +def add_tap(ec, ip, prefix, pointopoint, node): + tap = ec.register_resource("planetlab::Tap") + ec.set(tap, "ip", ip) + ec.set(tap, "prefix", prefix) ec.set(tap, "pointopoint", pointopoint) ec.set(tap, "up", True) ec.register_connection(tap, node) return tap -def add_tunnel(ec, network, port0, tap): - tunnel = ec.register_resource("OVSTunnel") - ec.set(tunnel, "network", network) +def add_tunnel(ec, port0, tap): + tunnel = ec.register_resource("linux::UdpTunnel") ec.register_connection(port0, tunnel) ec.register_connection(tunnel, tap) return tunnel def add_app(ec, command, node): - app = ec.register_resource("LinuxApplication") + app = ec.register_resource("linux::Application") ec.set(app, "command", command) ec.register_connection(app, node) return app @@ -85,16 +84,20 @@ def add_app(ec, command, node): # Create the EC ec = ExperimentController(exp_id = "test-tr") +#XXX : Need to put 6 working nodes or to let Nepi find for you switch1 = "planetlab2.virtues.fi" switch2 = "planetlab2.upc.es" -switch3 = "planetlab2.cs.aueb.gr" +switch3 = "planetlab1.informatik.uni-erlangen.de" host1 = "planetlab2.ionio.gr" host2 = "iraplab2.iralab.uni-karlsruhe.de" host3 = "planetlab2.diku.dk" -ip_controller = "194.254.215.12" +ip_controller = "xxx.yyy.zzz.ttt" + +#XXX : Depends on the Vsys_tag of your slice network = "192.168.3.0" +#XXX : Name of your slice slicename = "inria_nepi" pl_user = os.environ.get("PL_USER") @@ -110,31 +113,29 @@ ovs2 = add_ovs(ec, "nepi_bridge_2", "192.168.3.4/24", ip_controller, "6633", s2_ ovs3 = add_ovs(ec, "nepi_bridge_3", "192.168.3.6/24", ip_controller, "6633", s3_node) # Add ports on ovs -port1 = add_port(ec, "nepi_port1", ovs1) -port4 = add_port(ec, "nepi_port4", ovs1) -port7 = add_port(ec, "nepi_port7", ovs1) -port2 = add_port(ec, "nepi_port2", ovs2) -port5 = add_port(ec, "nepi_port5", ovs2) -#port8 = add_port(ec, "nepi_port8", ovs2) -port3 = add_port(ec, "nepi_port3", ovs3) -port6 = add_port(ec, "nepi_port6", ovs3) -#port9 = add_port(ec, "nepi_port9", ovs3) +port1 = add_port(ec, "nepi_port1", network, ovs1) +port4 = add_port(ec, "nepi_port4", network, ovs1) +port7 = add_port(ec, "nepi_port7", network, ovs1) +port2 = add_port(ec, "nepi_port2", network, ovs2) +port5 = add_port(ec, "nepi_port5", network, ovs2) +port3 = add_port(ec, "nepi_port3", network, ovs3) +port6 = add_port(ec, "nepi_port6", network, ovs3) h1_node = add_node(ec, host1, slicename, pl_user, pl_password) h2_node = add_node(ec, host2, slicename, pl_user, pl_password) h3_node = add_node(ec, host3, slicename, pl_user, pl_password) # Add tap devices -tap1 = add_tap(ec, "192.168.3.1", 24, "192.168.3.2", h1_node) -tap2 = add_tap(ec, "192.168.3.3", 24, "192.168.3.4", h2_node) -tap3 = add_tap(ec, "192.168.3.5", 24, "192.168.3.6", h3_node) +tap1 = add_tap(ec, "192.168.3.1", "24", "192.168.3.2", h1_node) +tap2 = add_tap(ec, "192.168.3.3", "24", "192.168.3.4", h2_node) +tap3 = add_tap(ec, "192.168.3.5", "24", "192.168.3.6", h3_node) # Connect the nodes -tunnel1 = add_tunnel(ec, network, port1, tap1) -tunnel2 = add_tunnel(ec, network, port2, tap2) -tunnel3 = add_tunnel(ec, network, port3, tap3) -tunnel4 = add_tunnel(ec, network, port4, port5) -tunnel5 = add_tunnel(ec, network, port7, port6) +tunnel1 = add_tunnel(ec, port1, tap1) +tunnel2 = add_tunnel(ec, port2, tap2) +tunnel3 = add_tunnel(ec, port3, tap3) +tunnel4 = add_tunnel(ec, port4, port5) +tunnel5 = add_tunnel(ec, port7, port6) #tunnel6 = add_tunnel(ec, network, port8, port9) # Add ping commands @@ -207,6 +208,3 @@ f.close() ec.shutdown() - - -