Date: Fri, 29 Mar 2024 11:36:50 +0000 (UTC) Message-ID: <1279410174.1519.1711712210494@b9607565de67> Subject: Exported From Confluence MIME-Version: 1.0 Content-Type: multipart/related; boundary="----=_Part_1518_1647745273.1711712210494" ------=_Part_1518_1647745273.1711712210494 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Content-Location: file:///C:/exported.html
Author: Andre Fredette
This wiki documents an approach for using The new NetVirt, which is base= d on the VPN Service code. This document is essentially a way to run&= nbsp;the OVSDB Tutorial using the odl-netvirt-openstack f= eature as a replacement for the odl-ovsdb-openstack feature. These instruct= ions currently assume an external OpenDaylight controller as opposed to an = all-in-one config.
NOTE: I started with the instructions given on the NetVirt= : L2Gateway HowTo, but I'm not using the L2Gatway feature, and these in= structions include a few more details.
1. Use the NetVirt Demo VMs from here:
Gettin= g Started with OpenDaylight OVSDB Plugin Network Virtualization
Use the following:
ovsdbtutorial_mitaka_boron_external.ova Open= Stack Mitaka, OpenDaylight Boron (160630), external:
2. Import the ova file into VirtualBox
3. Get a version of the OpenDaylight controller with the vpnserv= ice NetVirt code
git clone h= ttps://git.opendaylight.org/gerrit/netvirt.git cd netvirt mvn clean install
1. Launch karaf
~/git/netvirt/vpnservice/distribution/karaf/target/assembly/bin/karaf (Update path based on where you cloned the netvirt repo above.)
2. Install the feature
feature:install odl-netvirt-openstack
3. Start router, odl31 and odl32 VMs you got above (if you haven= 't already)
IMPORTANT: When using odl-netvirt-openstack with devstack, you m= ust modify the local.conf files in both odl31 and odl32 by commenting out t= he following line:
#ODL_L3=3DTrue
4. Stack both odl31 and odl32
cd /opt/devstack ./stack.sh
5. Transport Zone
Originally, it was necessary to manually create "transport zones" to car= ry the traffic between nodes. For VXLAN, a transport zone essentially defin= es a set of tunnels connecting the appropriate nodes. However, support has = been added to automatically create transport zones as needed. By default, "= use-transport-zone" is set to true.
NOTE: As of 8/11/16, I have not been able to verify the auto tra= nsport zone/tunnel creation.
5.1 Optional Manual Transport Zone Configuration
TODO: Define steps to disable auto transport zone creation.
See L2Gateway HowTo for instrucitons= and/or use postman collection in netvirt/resources/commons/VPN-Service-Net= Virt.postman_collection.json
If using the postman collection, use "Get DPID's" to get the datapath id= s.
You can figure out which dpid is which by running the following command = on each vm:
sudo ovs-vsctl show
Then compare the UUID at the top of the command output to the UUID's ass= ociated with the DPID's from the Get DPID's request.
Then, use the DPIDs for the br-int's in the "Create TZA" request.
6. Run os_doitall.sh (https://github.com/shague/odl_tools/blob/ma= ster/os_doitall.sh)
../tools/os_doitall.sh
7. Test It
ssh to one of the vms created
source openrc admin admin ../tools/os_ssh.sh 10.100.5.3
ping the other:
ping 10.100.5.4
ping an external address to test floating IP support:
ping www.google.com (Note: this isn't working as of the writing of th= is wiki).
Note: To cleanup state between runs, do the following:<= /p>
On odl31 and odl32: osreset.sh (https://github.com/shague/odl_tools/blob/mast= er/osreset.sh)
shutdown karaf
shutdown -f
reset karaf
rm -rf ~/git/netvirt/vpnservice/distribution/karaf/target/assembly/dat= a/* ~/git/netvirt/vpnservice/distribution/karaf/target/assembly/snapshots/*= ~/git/netvirt/vpnservice/distribution/karaf/target/assembly/journal/* (Update path based on where you cloned the netvirt repo above.)