From: Michal Cmarada Date: Wed, 28 Sep 2016 08:58:02 +0000 (+0200) Subject: introducing vpp-demo X-Git-Tag: release/carbon~90 X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=commitdiff_plain;h=f49144d234ddcd793a146c753ef03fe435f03f4d;p=groupbasedpolicy.git introducing vpp-demo - basic setup environment Change-Id: I1ad5ca007dc4cef8ad63b9272ada723ff06b93f5 Signed-off-by: Michal Cmarada --- diff --git a/demos/vpp-demo/.gitignore b/demos/vpp-demo/.gitignore new file mode 100644 index 000000000..294d3746a --- /dev/null +++ b/demos/vpp-demo/.gitignore @@ -0,0 +1,7 @@ +*.deb +*.deb.md5 +*.noarch.rpm +*.rpm +.vagrant +distribution-karaf-*.tar.gz +distribution-karaf-*.zip \ No newline at end of file diff --git a/demos/vpp-demo/Vagrantfile b/demos/vpp-demo/Vagrantfile new file mode 100644 index 000000000..1f9a57625 --- /dev/null +++ b/demos/vpp-demo/Vagrantfile @@ -0,0 +1,138 @@ +# Copyright (c) 2016 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# -*- mode: ruby -*- +# vi: set ts=2 sw=2 sts=2 et ft=ruby : + +def add_compute(config, name, mgmt_ip, port1, port2) + config.vm.box_check_update = false + config.vbguest.auto_update = true + config.vm.define name do |node| + if Vagrant.has_plugin?("vagrant-proxyconf") + if ENV["http_proxy"] + config.proxy.http = ENV["http_proxy"] + end + if ENV["https_proxy"] + config.proxy.https = ENV["https_proxy"] + end + if ENV["no_proxy"] + config.proxy.no_proxy = ENV["no_proxy"] + end + end + node.vm.box = "puppetlabs/ubuntu-14.04-64-nocm" + node.vm.hostname = name + node.vm.provision "shell", path: "vagrant_scripts/fix-perms.sh" + node.vm.provision "shell", path: "vagrant_scripts/add-user.sh" + node.vm.provision "shell", path: "vagrant_scripts/install-prereqs.sh" + node.vm.provision "shell", path: "vagrant_scripts/install-java8.sh" + node.vm.provision "shell", path: "vagrant_scripts/install-vpp.sh" + node.vm.provision "shell", path: "vagrant_scripts/configure-vpp.sh" + node.vm.provision "shell", path: "vagrant_scripts/install-hc.sh" + + node.vm.network "private_network", ip: mgmt_ip + node.vm.network "private_network", type: "dhcp", auto_config: false, virtualbox__intnet: port1 + node.vm.network "private_network", type: "dhcp", auto_config: false, virtualbox__intnet: port2 + node.vm.provider "virtualbox" do |vb| + vb.memory = "4096" + vb.cpus = 2 + vb.customize ["modifyvm", :id, "--ioapic", "on"] + vb.customize ["setextradata", :id, "VBoxInternal/CPUM/SSE4.1", "1"] + vb.customize ["setextradata", :id, "VBoxInternal/CPUM/SSE4.2", "1"] + vb.customize ["modifyvm", :id, "--nicpromisc3", "allow-all"] + vb.customize ["modifyvm", :id, "--nicpromisc4", "allow-all"] + end + end +end + +def add_controller(config, name, mgmt_ip, port1, port2) + config.vm.box_check_update = false + config.vbguest.auto_update = true + config.vm.define name do |node| + if Vagrant.has_plugin?("vagrant-proxyconf") + if ENV["http_proxy"] + config.proxy.http = ENV["http_proxy"] + end + if ENV["https_proxy"] + config.proxy.https = ENV["https_proxy"] + end + if ENV["no_proxy"] + config.proxy.no_proxy = ENV["no_proxy"] + end + end + node.vm.box = "puppetlabs/ubuntu-14.04-64-nocm" + node.vm.hostname = name + node.vm.provision "shell", path: "vagrant_scripts/fix-perms.sh" + node.vm.provision "shell", path: "vagrant_scripts/add-user.sh" + node.vm.provision "shell", path: "vagrant_scripts/install-prereqs.sh" + node.vm.provision "shell", path: "vagrant_scripts/install-java8.sh" + node.vm.provision "shell", path: "vagrant_scripts/install-vpp.sh" + node.vm.provision "shell", path: "vagrant_scripts/configure-vpp.sh" + node.vm.provision "shell", path: "vagrant_scripts/install-hc.sh" + node.vm.provision "shell", path: "vagrant_scripts/install-odl.sh" + + node.vm.network "private_network", ip: mgmt_ip + node.vm.network "private_network", type: "dhcp", auto_config: false, virtualbox__intnet: port1 + node.vm.network "private_network", type: "dhcp", auto_config: false, virtualbox__intnet: port2 + node.vm.provider "virtualbox" do |vb| + vb.memory = "4096" + vb.cpus = 4 + vb.customize ["modifyvm", :id, "--ioapic", "on"] + vb.customize ["setextradata", :id, "VBoxInternal/CPUM/SSE4.1", "1"] + vb.customize ["setextradata", :id, "VBoxInternal/CPUM/SSE4.2", "1"] + vb.customize ["modifyvm", :id, "--nicpromisc3", "allow-all"] + vb.customize ["modifyvm", :id, "--nicpromisc4", "allow-all"] + vb.customize ["modifyvm", :id, "--nicpromisc5", "allow-all"] + end + end +end + +# install required plugins if necessary +if ARGV[0] == 'up' + # add required plugins here + required_plugins = %w( vagrant-vbguest vagrant-cachier) + missing_plugins = [] + required_plugins.each do |plugin| + missing_plugins.push(plugin) unless Vagrant.has_plugin? plugin + end + + if ! missing_plugins.empty? + install_these = missing_plugins.join(' ') + puts "Found missing plugins: #{install_these}. Installing..." + cmd = "vagrant plugin install #{install_these}" + updateResult = system( cmd ) + if updateResult + puts "Plugins #{install_these} installed." + #restart vagrant up process + exec "vagrant up" + else + abort("Failed to install plugins: #{install_these}.") + end + else + puts "No missing plugins. Ok to continue with vagrant setup." + end +end + +Vagrant.configure(2) do |config| + # vagrant-cachier caches apt/yum etc to speed subsequent + # vagrant up + # to enable, run + # vagrant plugin install vagrant-cachier + # + if Vagrant.has_plugin?("vagrant-cachier") + config.cache.scope = :box + end + + add_controller(config, "controller", "192.168.255.100/24", "public_net", "tenant_net",) + add_compute(config, "compute0", "192.168.255.101/24", "public_net", "tenant_net") + add_compute(config, "compute1", "192.168.255.102/24", "public_net", "tenant_net") +end diff --git a/demos/vpp-demo/local-demo-postman.json b/demos/vpp-demo/local-demo-postman.json new file mode 100644 index 000000000..63a19241a --- /dev/null +++ b/demos/vpp-demo/local-demo-postman.json @@ -0,0 +1,392 @@ +{ + "id": "ca7e7994-e248-0de1-1b3c-27607ae374c5", + "name": "vpp-demo", + "description": "", + "order": [], + "folders": [ + { + "id": "66e85953-eba2-e686-1c05-181c21f139aa", + "name": "LOCAL-DEMO", + "description": "", + "order": [ + "70504373-fc7c-5b0f-5136-1d6c21aa7477", + "204cc3ef-6acb-da33-77be-c17a196575be", + "5cb6fa84-3bc2-caad-185c-e7189b0b027c", + "a15d7557-a4c4-7eb3-ccf9-45828a452a12", + "170aaf4e-9cf5-cfcc-a761-78431b6e3709", + "c8bff5bf-6435-5cac-7242-52b6be1a6b2f", + "d43e3c11-32e3-b533-cf1e-935194987fb5", + "83ab74ac-5748-d0b0-fc20-41218f1fbfc9", + "f3e707bc-2e56-0c63-401a-af6d8cc89232", + "f53c4509-ecec-e7b4-8d93-98494f84d5bc", + "f48fb80a-f113-04ae-5e97-b1110f31aec0", + "8e0cb982-4ca9-2492-2466-a52c8eeed90e", + "9883b811-c54a-6204-91e9-e951483b0500", + "a6008cfe-8f36-6a43-9464-87f55538768f", + "d0c7ad28-aaac-2585-37c4-8ad1fb96b300", + "812e3729-c9f3-e9bb-e15c-174073cf010c", + "a1e303ba-25c2-f897-9be3-b5552eb7bc1c", + "1b49eadb-b844-93ca-3839-4f5ca0eb8c73", + "2031addb-3b81-d6d5-f5ad-995bc53767ab" + ], + "owner": "607119", + "collectionId": "1752fb6e-edab-50e1-4840-11399dfc2e85" + } + ], + "timestamp": 1474356756372, + "owner": "607119", + "public": false, + "published": false, + "requests": [ + { + "id": "170aaf4e-9cf5-cfcc-a761-78431b6e3709", + "headers": "Authorization: Basic YWRtaW46YWRtaW4=\n", + "url": "http://192.168.255.100:8081/restconf/operational/renderer:renderers/renderer/vpp-renderer", + "preRequestScript": null, + "pathVariables": {}, + "method": "GET", + "data": [], + "dataMode": "params", + "tests": null, + "currentHelper": "normal", + "helperAttributes": {}, + "time": 1473431626723, + "name": "VPP renderer operational", + "description": "", + "collectionId": "ca7e7994-e248-0de1-1b3c-27607ae374c5", + "folder": "66e85953-eba2-e686-1c05-181c21f139aa" + }, + { + "id": "1b49eadb-b844-93ca-3839-4f5ca0eb8c73", + "headers": "Authorization: Basic YWRtaW46YWRtaW4=\nContent-Type: application/json\nCache-Control: no-cache\n", + "url": "http://192.168.255.100:8081/restconf/config/neutron:neutron", + "preRequestScript": "", + "pathVariables": {}, + "method": "PUT", + "data": [], + "dataMode": "raw", + "tests": "", + "currentHelper": "normal", + "helperAttributes": {}, + "time": 1474359320383, + "name": "neutron data - add secRules", + "description": "", + "collectionId": "ca7e7994-e248-0de1-1b3c-27607ae374c5", + "rawModeData": "{\n \"neutron\": {\n \"networks\": {\n \"network\": [\n {\n \"uuid\": \"e82a3ecf-bda8-4868-936e-494999edc0ba\",\n \"name\": \"vxlannet\",\n \"neutron-L3-ext:external\": false,\n \"neutron-provider-ext:segmentation-id\": \"20\",\n \"neutron-provider-ext:network-type\": \"neutron-networks:network-type-vxlan\",\n \"admin-state-up\": true,\n \"shared\": false,\n \"status\": \"ACTIVE\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\"\n }\n ]\n },\n \"subnets\": {\n \"subnet\": [\n {\n \"uuid\": \"3d1158f1-540b-4139-81a6-4dbbb3dae1e5\",\n \"ip-version\": \"neutron-constants:ip-version-v4\",\n \"gateway-ip\": \"10.11.12.1\",\n \"name\": \"vxlansubnet\",\n \"network-id\": \"e82a3ecf-bda8-4868-936e-494999edc0ba\",\n \"cidr\": \"10.11.12.0/24\",\n \"enable-dhcp\": true,\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\n \"allocation-pools\": [\n {\n \"start\": \"10.11.12.2\",\n \"end\": \"10.11.12.254\"\n }\n ]\n }\n ]\n },\n \"security-groups\": {\n \"security-group\": [\n {\n \"uuid\": \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\",\n \"name\": \"default\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\"\n },\n {\n \"uuid\": \"282f7ee8-7b75-4237-9e80-d41647969e8f\",\n \"name\": \"test-secgroup\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\"\n }\n ]\n },\n \"security-rules\": {\n \"security-rule\": [\n {\n \"uuid\": \"7d037f8c-e35d-4f34-b2a8-6e6912728498\",\n \"direction\": \"neutron-constants:direction-ingress\",\n \"security-group-id\": \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\",\n \"ethertype\": \"neutron-constants:ethertype-v4\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\n \"remote-group-id\": \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\n },\n {\n \"uuid\": \"b547e0ad-1fe9-4605-8a1d-a146b3316f3e\",\n \"remote-ip-prefix\": \"0.0.0.0/0\",\n \"ethertype\": \"neutron-constants:ethertype-v4\",\n \"port-range-max\": 22,\n \"protocol\": \"neutron-constants:protocol-tcp\",\n \"port-range-min\": 22,\n \"direction\": \"neutron-constants:direction-ingress\",\n \"security-group-id\": \"282f7ee8-7b75-4237-9e80-d41647969e8f\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\"\n },\n {\n \"uuid\": \"b5fb268c-54d1-4f1e-8a6c-cb248fc57278\",\n \"direction\": \"neutron-constants:direction-ingress\",\n \"security-group-id\": \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\",\n \"ethertype\": \"neutron-constants:ethertype-v6\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\n \"remote-group-id\": \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\n },\n {\n \"uuid\": \"e7e07939-8962-4e3c-a056-ddbb83a36d7f\",\n \"direction\": \"neutron-constants:direction-egress\",\n \"security-group-id\": \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\",\n \"ethertype\": \"neutron-constants:ethertype-v4\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\"\n },\n {\n \"uuid\": \"efd160f9-8383-4d42-ab35-201d898fd87e\",\n \"direction\": \"neutron-constants:direction-egress\",\n \"security-group-id\": \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\",\n \"ethertype\": \"neutron-constants:ethertype-v6\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\"\n },\n {\n \"uuid\": \"d4111847-3d13-4dc3-9433-78bae7ee6dc1\",\n \"remote-ip-prefix\": \"0.0.0.0/0\",\n \"ethertype\": \"neutron-constants:ethertype-v4\",\n \"protocol\": \"neutron-constants:protocol-icmp\",\n \"direction\": \"neutron-constants:direction-ingress\",\n \"security-group-id\": \"282f7ee8-7b75-4237-9e80-d41647969e8f\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\"\n }\n ]\n },\n \"ports\": {\n \"port\": [\n {\n \"uuid\": \"6a616da7-d1ba-45c1-80bd-ca5e3fa0edfc\",\n \"device-owner\": \"network:router_interface\",\n \"admin-state-up\": true,\n \"name\": \"\",\n \"fixed-ips\": [\n {\n \"subnet-id\": \"3d1158f1-540b-4139-81a6-4dbbb3dae1e5\",\n \"ip-address\": \"10.11.12.1\"\n }\n ],\n \"network-id\": \"e82a3ecf-bda8-4868-936e-494999edc0ba\",\n \"neutron-binding:vnic-type\": \"normal\",\n \"neutron-binding:host-id\": \"controller\",\n \"neutron-binding:vif-details\": [\n {\n \"details-key\": \"port_filter\",\n \"value\": \"true\"\n }\n ],\n \"neutron-binding:vif-type\": \"vhostuser\",\n \"device-id\": \"3a1fd562-6423-4bbd-89f0-6130ebb96e92\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\n \"mac-address\": \"fa:16:3e:4c:11:20\",\n \"security-groups\": [\n \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\n ],\n \"neutron-portsecurity:port-security-enabled\": false\n },\n {\n \"uuid\": \"a9607d99-0afa-41cc-8f2f-8d62b6e9bc1c\",\n \"device-owner\": \"network:dhcp\",\n \"admin-state-up\": true,\n \"name\": \"vm-0-1-port\",\n \"fixed-ips\": [\n {\n \"subnet-id\": \"3d1158f1-540b-4139-81a6-4dbbb3dae1e5\",\n \"ip-address\": \"10.11.12.3\"\n }\n ],\n \"network-id\": \"e82a3ecf-bda8-4868-936e-494999edc0ba\",\n \"neutron-binding:vnic-type\": \"normal\",\n \"neutron-binding:host-id\": \"compute0\",\n \"neutron-binding:vif-details\": [\n {\n \"details-key\": \"port_filter\",\n \"value\": \"true\"\n }\n ],\n \"neutron-binding:vif-type\": \"vhostuser\",\n \"device-id\": \"6b87c96a-8f3f-451f-a3d7-200b01d80744\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\n \"mac-address\": \"fa:16:3e:4c:fd:34\",\n \"security-groups\": [\n \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\n ],\n \"neutron-portsecurity:port-security-enabled\": true\n },\n {\n \"uuid\": \"320c792a-40b8-4d42-b7e3-60d998f6631a\",\n \"device-owner\": \"network:dhcp\",\n \"admin-state-up\": true,\n \"name\": \"vm-1-3-port\",\n \"fixed-ips\": [\n {\n \"subnet-id\": \"3d1158f1-540b-4139-81a6-4dbbb3dae1e5\",\n \"ip-address\": \"10.11.12.7\"\n }\n ],\n \"network-id\": \"e82a3ecf-bda8-4868-936e-494999edc0ba\",\n \"neutron-binding:vnic-type\": \"normal\",\n \"neutron-binding:host-id\": \"compute1\",\n \"neutron-binding:vif-details\": [\n {\n \"details-key\": \"port_filter\",\n \"value\": \"true\"\n }\n ],\n \"neutron-binding:vif-type\": \"vhostuser\",\n \"device-id\": \"e0074476-de99-47c9-81d9-c2e55e9aaa56\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\n \"mac-address\": \"fa:16:3e:83:a5:7f\",\n \"security-groups\": [\n \"282f7ee8-7b75-4237-9e80-d41647969e8f\",\n \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\n ],\n \"neutron-portsecurity:port-security-enabled\": true\n },\n {\n \"uuid\": \"8def6a66-7d70-4459-adc4-b189717441b4\",\n \"device-owner\": \"network:dhcp\",\n \"admin-state-up\": true,\n \"name\": \"vm-0-2-port\",\n \"fixed-ips\": [\n {\n \"subnet-id\": \"3d1158f1-540b-4139-81a6-4dbbb3dae1e5\",\n \"ip-address\": \"10.11.12.4\"\n }\n ],\n \"network-id\": \"e82a3ecf-bda8-4868-936e-494999edc0ba\",\n \"neutron-binding:vnic-type\": \"normal\",\n \"neutron-binding:host-id\": \"compute0\",\n \"neutron-binding:vif-details\": [\n {\n \"details-key\": \"port_filter\",\n \"value\": \"true\"\n }\n ],\n \"neutron-binding:vif-type\": \"vhostuser\",\n \"device-id\": \"6e85b372-9269-4f96-8049-f6cccdaf340c\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\n \"mac-address\": \"fa:16:3e:c7:76:82\",\n \"security-groups\": [\n \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\n ],\n \"neutron-portsecurity:port-security-enabled\": true\n },\n {\n \"uuid\": \"7415f153-2a26-4968-880d-3aba22cf6f9d\",\n \"device-owner\": \"network:dhcp\",\n \"admin-state-up\": true,\n \"name\": \"vm-1-1-port\",\n \"fixed-ips\": [\n {\n \"subnet-id\": \"3d1158f1-540b-4139-81a6-4dbbb3dae1e5\",\n \"ip-address\": \"10.11.12.5\"\n }\n ],\n \"network-id\": \"e82a3ecf-bda8-4868-936e-494999edc0ba\",\n \"neutron-binding:vnic-type\": \"normal\",\n \"neutron-binding:host-id\": \"compute1\",\n \"neutron-binding:vif-details\": [\n {\n \"details-key\": \"port_filter\",\n \"value\": \"true\"\n }\n ],\n \"neutron-binding:vif-type\": \"vhostuser\",\n \"device-id\": \"565c0e5f-515a-457b-ae89-857c3f66296a\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\n \"mac-address\": \"fa:16:3e:6f:d4:3c\",\n \"security-groups\": [\n \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\n ],\n \"neutron-portsecurity:port-security-enabled\": true\n },\n {\n \"uuid\": \"fa943a17-ace1-41a6-80ee-3fa292d2d320\",\n \"device-owner\": \"network:dhcp\",\n \"admin-state-up\": true,\n \"name\": \"vm-1-2-port\",\n \"fixed-ips\": [\n {\n \"subnet-id\": \"3d1158f1-540b-4139-81a6-4dbbb3dae1e5\",\n \"ip-address\": \"10.11.12.6\"\n }\n ],\n \"network-id\": \"e82a3ecf-bda8-4868-936e-494999edc0ba\",\n \"neutron-binding:vnic-type\": \"normal\",\n \"neutron-binding:host-id\": \"compute1\",\n \"neutron-binding:vif-details\": [\n {\n \"details-key\": \"port_filter\",\n \"value\": \"true\"\n }\n ],\n \"neutron-binding:vif-type\": \"vhostuser\",\n \"device-id\": \"945b82f4-07a9-4442-aa64-d3cc34cfb64d\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\n \"mac-address\": \"fa:16:3e:ec:3a:40\",\n \"security-groups\": [\n \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\n ],\n \"neutron-portsecurity:port-security-enabled\": true\n },\n {\n \"uuid\": \"c6076003-2b5c-4487-9db6-f2667a2c276e\",\n \"device-owner\": \"network:dhcp\",\n \"admin-state-up\": true,\n \"name\": \"\",\n \"fixed-ips\": [\n {\n \"subnet-id\": \"3d1158f1-540b-4139-81a6-4dbbb3dae1e5\",\n \"ip-address\": \"10.11.12.2\"\n }\n ],\n \"network-id\": \"e82a3ecf-bda8-4868-936e-494999edc0ba\",\n \"neutron-binding:vnic-type\": \"normal\",\n \"neutron-binding:host-id\": \"controller\",\n \"neutron-binding:vif-details\": [\n {\n \"details-key\": \"port_filter\",\n \"value\": \"true\"\n }\n ],\n \"neutron-binding:vif-type\": \"vhostuser\",\n \"device-id\": \"dhcp827da361-9c56-50f7-913f-5a01f7bfed2c-e82a3ecf-bda8-4868-936e-494999edc0ba\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\n \"mac-address\": \"fa:16:3e:bc:6b:e2\",\n \"security-groups\": [\n \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\n ],\n \"neutron-portsecurity:port-security-enabled\": false\n }\n ]\n }\n }\n}" + }, + { + "id": "2031addb-3b81-d6d5-f5ad-995bc53767ab", + "headers": "Authorization: Basic YWRtaW46YWRtaW4=\nContent-Type: application/json\nCache-Control: no-cache\n", + "url": "http://192.168.255.100:8081/restconf/config/neutron:neutron", + "preRequestScript": "", + "pathVariables": {}, + "method": "PUT", + "data": [], + "dataMode": "raw", + "tests": "", + "currentHelper": "normal", + "helperAttributes": {}, + "time": 1474359561648, + "name": "neutron data - delete secRules", + "description": "", + "collectionId": "ca7e7994-e248-0de1-1b3c-27607ae374c5", + "rawModeData": "{\n \"neutron\": {\n \"networks\": {\n \"network\": [\n {\n \"uuid\": \"e82a3ecf-bda8-4868-936e-494999edc0ba\",\n \"name\": \"vxlannet\",\n \"neutron-L3-ext:external\": false,\n \"neutron-provider-ext:segmentation-id\": \"20\",\n \"neutron-provider-ext:network-type\": \"neutron-networks:network-type-vxlan\",\n \"admin-state-up\": true,\n \"shared\": false,\n \"status\": \"ACTIVE\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\"\n }\n ]\n },\n \"subnets\": {\n \"subnet\": [\n {\n \"uuid\": \"3d1158f1-540b-4139-81a6-4dbbb3dae1e5\",\n \"ip-version\": \"neutron-constants:ip-version-v4\",\n \"gateway-ip\": \"10.11.12.1\",\n \"name\": \"vxlansubnet\",\n \"network-id\": \"e82a3ecf-bda8-4868-936e-494999edc0ba\",\n \"cidr\": \"10.11.12.0/24\",\n \"enable-dhcp\": true,\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\n \"allocation-pools\": [\n {\n \"start\": \"10.11.12.2\",\n \"end\": \"10.11.12.254\"\n }\n ]\n }\n ]\n },\n \"security-groups\": {\n \"security-group\": [\n {\n \"uuid\": \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\",\n \"name\": \"default\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\"\n }\n ]\n },\n \"security-rules\": {\n \"security-rule\": [\n {\n \"uuid\": \"7d037f8c-e35d-4f34-b2a8-6e6912728498\",\n \"direction\": \"neutron-constants:direction-ingress\",\n \"security-group-id\": \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\",\n \"ethertype\": \"neutron-constants:ethertype-v4\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\n \"remote-group-id\": \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\n },\n {\n \"uuid\": \"b5fb268c-54d1-4f1e-8a6c-cb248fc57278\",\n \"direction\": \"neutron-constants:direction-ingress\",\n \"security-group-id\": \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\",\n \"ethertype\": \"neutron-constants:ethertype-v6\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\n \"remote-group-id\": \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\n },\n {\n \"uuid\": \"46372963-221d-48d6-9074-724d72caae40\",\n \"direction\": \"neutron-constants:direction-egress\",\n \"security-group-id\": \"282f7ee8-7b75-4237-9e80-d41647969e8f\",\n \"ethertype\": \"neutron-constants:ethertype-v6\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\"\n },\n {\n \"uuid\": \"e7e07939-8962-4e3c-a056-ddbb83a36d7f\",\n \"direction\": \"neutron-constants:direction-egress\",\n \"security-group-id\": \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\",\n \"ethertype\": \"neutron-constants:ethertype-v4\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\"\n },\n {\n \"uuid\": \"efd160f9-8383-4d42-ab35-201d898fd87e\",\n \"direction\": \"neutron-constants:direction-egress\",\n \"security-group-id\": \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\",\n \"ethertype\": \"neutron-constants:ethertype-v6\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\"\n },\n {\n \"uuid\": \"a876726e-6522-4fab-b63a-c991ffd963dd\",\n \"direction\": \"neutron-constants:direction-egress\",\n \"security-group-id\": \"282f7ee8-7b75-4237-9e80-d41647969e8f\",\n \"ethertype\": \"neutron-constants:ethertype-v4\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\"\n }\n ]\n },\n \"ports\": {\n \"port\": [\n {\n \"uuid\": \"6a616da7-d1ba-45c1-80bd-ca5e3fa0edfc\",\n \"device-owner\": \"network:router_interface\",\n \"admin-state-up\": true,\n \"name\": \"\",\n \"fixed-ips\": [\n {\n \"subnet-id\": \"3d1158f1-540b-4139-81a6-4dbbb3dae1e5\",\n \"ip-address\": \"10.11.12.1\"\n }\n ],\n \"network-id\": \"e82a3ecf-bda8-4868-936e-494999edc0ba\",\n \"neutron-binding:vnic-type\": \"normal\",\n \"neutron-binding:host-id\": \"controller\",\n \"neutron-binding:vif-details\": [\n {\n \"details-key\": \"port_filter\",\n \"value\": \"true\"\n }\n ],\n \"neutron-binding:vif-type\": \"vhostuser\",\n \"device-id\": \"3a1fd562-6423-4bbd-89f0-6130ebb96e92\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\n \"mac-address\": \"fa:16:3e:4c:11:20\",\n \"security-groups\": [\n \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\n ],\n \"neutron-portsecurity:port-security-enabled\": false\n },\n {\n \"uuid\": \"a9607d99-0afa-41cc-8f2f-8d62b6e9bc1c\",\n \"device-owner\": \"network:dhcp\",\n \"admin-state-up\": true,\n \"name\": \"vm-0-1-port\",\n \"fixed-ips\": [\n {\n \"subnet-id\": \"3d1158f1-540b-4139-81a6-4dbbb3dae1e5\",\n \"ip-address\": \"10.11.12.3\"\n }\n ],\n \"network-id\": \"e82a3ecf-bda8-4868-936e-494999edc0ba\",\n \"neutron-binding:vnic-type\": \"normal\",\n \"neutron-binding:host-id\": \"compute0\",\n \"neutron-binding:vif-details\": [\n {\n \"details-key\": \"port_filter\",\n \"value\": \"true\"\n }\n ],\n \"neutron-binding:vif-type\": \"vhostuser\",\n \"device-id\": \"6b87c96a-8f3f-451f-a3d7-200b01d80744\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\n \"mac-address\": \"fa:16:3e:4c:fd:34\",\n \"security-groups\": [\n \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\n ],\n \"neutron-portsecurity:port-security-enabled\": true\n },\n {\n \"uuid\": \"320c792a-40b8-4d42-b7e3-60d998f6631a\",\n \"device-owner\": \"network:dhcp\",\n \"admin-state-up\": true,\n \"name\": \"vm-1-3-port\",\n \"fixed-ips\": [\n {\n \"subnet-id\": \"3d1158f1-540b-4139-81a6-4dbbb3dae1e5\",\n \"ip-address\": \"10.11.12.7\"\n }\n ],\n \"network-id\": \"e82a3ecf-bda8-4868-936e-494999edc0ba\",\n \"neutron-binding:vnic-type\": \"normal\",\n \"neutron-binding:host-id\": \"compute1\",\n \"neutron-binding:vif-details\": [\n {\n \"details-key\": \"port_filter\",\n \"value\": \"true\"\n }\n ],\n \"neutron-binding:vif-type\": \"vhostuser\",\n \"device-id\": \"e0074476-de99-47c9-81d9-c2e55e9aaa56\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\n \"mac-address\": \"fa:16:3e:83:a5:7f\",\n \"security-groups\": [\n \"282f7ee8-7b75-4237-9e80-d41647969e8f\",\n \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\n ],\n \"neutron-portsecurity:port-security-enabled\": true\n },\n {\n \"uuid\": \"8def6a66-7d70-4459-adc4-b189717441b4\",\n \"device-owner\": \"network:dhcp\",\n \"admin-state-up\": true,\n \"name\": \"vm-0-2-port\",\n \"fixed-ips\": [\n {\n \"subnet-id\": \"3d1158f1-540b-4139-81a6-4dbbb3dae1e5\",\n \"ip-address\": \"10.11.12.4\"\n }\n ],\n \"network-id\": \"e82a3ecf-bda8-4868-936e-494999edc0ba\",\n \"neutron-binding:vnic-type\": \"normal\",\n \"neutron-binding:host-id\": \"compute0\",\n \"neutron-binding:vif-details\": [\n {\n \"details-key\": \"port_filter\",\n \"value\": \"true\"\n }\n ],\n \"neutron-binding:vif-type\": \"vhostuser\",\n \"device-id\": \"6e85b372-9269-4f96-8049-f6cccdaf340c\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\n \"mac-address\": \"fa:16:3e:c7:76:82\",\n \"security-groups\": [\n \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\n ],\n \"neutron-portsecurity:port-security-enabled\": true\n },\n {\n \"uuid\": \"7415f153-2a26-4968-880d-3aba22cf6f9d\",\n \"device-owner\": \"network:dhcp\",\n \"admin-state-up\": true,\n \"name\": \"vm-1-1-port\",\n \"fixed-ips\": [\n {\n \"subnet-id\": \"3d1158f1-540b-4139-81a6-4dbbb3dae1e5\",\n \"ip-address\": \"10.11.12.5\"\n }\n ],\n \"network-id\": \"e82a3ecf-bda8-4868-936e-494999edc0ba\",\n \"neutron-binding:vnic-type\": \"normal\",\n \"neutron-binding:host-id\": \"compute1\",\n \"neutron-binding:vif-details\": [\n {\n \"details-key\": \"port_filter\",\n \"value\": \"true\"\n }\n ],\n \"neutron-binding:vif-type\": \"vhostuser\",\n \"device-id\": \"565c0e5f-515a-457b-ae89-857c3f66296a\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\n \"mac-address\": \"fa:16:3e:6f:d4:3c\",\n \"security-groups\": [\n \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\n ],\n \"neutron-portsecurity:port-security-enabled\": true\n },\n {\n \"uuid\": \"fa943a17-ace1-41a6-80ee-3fa292d2d320\",\n \"device-owner\": \"network:dhcp\",\n \"admin-state-up\": true,\n \"name\": \"vm-1-2-port\",\n \"fixed-ips\": [\n {\n \"subnet-id\": \"3d1158f1-540b-4139-81a6-4dbbb3dae1e5\",\n \"ip-address\": \"10.11.12.6\"\n }\n ],\n \"network-id\": \"e82a3ecf-bda8-4868-936e-494999edc0ba\",\n \"neutron-binding:vnic-type\": \"normal\",\n \"neutron-binding:host-id\": \"compute1\",\n \"neutron-binding:vif-details\": [\n {\n \"details-key\": \"port_filter\",\n \"value\": \"true\"\n }\n ],\n \"neutron-binding:vif-type\": \"vhostuser\",\n \"device-id\": \"945b82f4-07a9-4442-aa64-d3cc34cfb64d\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\n \"mac-address\": \"fa:16:3e:ec:3a:40\",\n \"security-groups\": [\n \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\n ],\n \"neutron-portsecurity:port-security-enabled\": true\n },\n {\n \"uuid\": \"c6076003-2b5c-4487-9db6-f2667a2c276e\",\n \"device-owner\": \"network:dhcp\",\n \"admin-state-up\": true,\n \"name\": \"\",\n \"fixed-ips\": [\n {\n \"subnet-id\": \"3d1158f1-540b-4139-81a6-4dbbb3dae1e5\",\n \"ip-address\": \"10.11.12.2\"\n }\n ],\n \"network-id\": \"e82a3ecf-bda8-4868-936e-494999edc0ba\",\n \"neutron-binding:vnic-type\": \"normal\",\n \"neutron-binding:host-id\": \"controller\",\n \"neutron-binding:vif-details\": [\n {\n \"details-key\": \"port_filter\",\n \"value\": \"true\"\n }\n ],\n \"neutron-binding:vif-type\": \"vhostuser\",\n \"device-id\": \"dhcp827da361-9c56-50f7-913f-5a01f7bfed2c-e82a3ecf-bda8-4868-936e-494999edc0ba\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\n \"mac-address\": \"fa:16:3e:bc:6b:e2\",\n \"security-groups\": [\n \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\n ],\n \"neutron-portsecurity:port-security-enabled\": false\n }\n ]\n }\n }\n}" + }, + { + "id": "204cc3ef-6acb-da33-77be-c17a196575be", + "headers": "Authorization: Basic YWRtaW46YWRtaW4=\nContent-Type: application/xml\n", + "url": "http://192.168.255.100:8081/restconf/config/network-topology:network-topology/topology/topology-netconf/node/compute0", + "preRequestScript": null, + "pathVariables": {}, + "method": "PUT", + "data": [], + "dataMode": "raw", + "tests": null, + "currentHelper": "normal", + "helperAttributes": {}, + "time": 1473431590397, + "name": "Register VPP compute0", + "description": "", + "collectionId": "ca7e7994-e248-0de1-1b3c-27607ae374c5", + "folder": "66e85953-eba2-e686-1c05-181c21f139aa", + "rawModeData": "\n compute0\n 192.168.255.101\n 2831\n admin\n admin\n false\n 0\n" + }, + { + "id": "5cb6fa84-3bc2-caad-185c-e7189b0b027c", + "headers": "Authorization: Basic YWRtaW46YWRtaW4=\nContent-Type: application/xml\n", + "url": "http://192.168.255.100:8081/restconf/config/network-topology:network-topology/topology/topology-netconf/node/compute1", + "preRequestScript": null, + "pathVariables": {}, + "method": "PUT", + "data": [], + "dataMode": "raw", + "tests": null, + "currentHelper": "normal", + "helperAttributes": {}, + "time": 1473431598691, + "name": "Register VPP compute1", + "description": "", + "collectionId": "ca7e7994-e248-0de1-1b3c-27607ae374c5", + "folder": "66e85953-eba2-e686-1c05-181c21f139aa", + "rawModeData": "\n compute1\n 192.168.255.102\n 2831\n admin\n admin\n false\n 0\n" + }, + { + "id": "70504373-fc7c-5b0f-5136-1d6c21aa7477", + "headers": "Authorization: Basic YWRtaW46YWRtaW4=\nContent-Type: application/xml\n", + "url": "http://192.168.255.100:8081/restconf/config/network-topology:network-topology/topology/topology-netconf/node/controller", + "preRequestScript": null, + "pathVariables": {}, + "method": "PUT", + "data": [], + "dataMode": "raw", + "tests": null, + "currentHelper": "normal", + "helperAttributes": {}, + "time": 1473431552143, + "name": "Register VPP controller", + "description": "", + "collectionId": "ca7e7994-e248-0de1-1b3c-27607ae374c5", + "folder": "66e85953-eba2-e686-1c05-181c21f139aa", + "rawModeData": "\n controller\n 192.168.255.100\n 2831\n admin\n admin\n false\n 0\n" + }, + { + "id": "812e3729-c9f3-e9bb-e15c-174073cf010c", + "headers": "Authorization: Basic YWRtaW46YWRtaW4=\n", + "url": "http://192.168.255.100:8181/restconf/operational/policy:tenants", + "preRequestScript": "", + "pathVariables": {}, + "method": "GET", + "data": [], + "dataMode": "params", + "tests": "", + "currentHelper": "normal", + "helperAttributes": {}, + "time": 1472628948816, + "name": "get tenants operational", + "description": "", + "collectionId": "ca7e7994-e248-0de1-1b3c-27607ae374c5", + "folder": "66e85953-eba2-e686-1c05-181c21f139aa" + }, + { + "id": "83ab74ac-5748-d0b0-fc20-41218f1fbfc9", + "headers": "Authorization: Basic YWRtaW46YWRtaW4=\n", + "url": "http://192.168.255.100:8181/restconf/operational/network-topology:network-topology/topology/36e1c19e-e2f5-4c83-a5af-125cb2af0419", + "preRequestScript": null, + "pathVariables": {}, + "method": "GET", + "data": null, + "dataMode": "params", + "tests": null, + "currentHelper": "normal", + "helperAttributes": {}, + "time": 1472628223007, + "name": "read BD operational", + "description": "", + "collectionId": "ca7e7994-e248-0de1-1b3c-27607ae374c5", + "folder": "66e85953-eba2-e686-1c05-181c21f139aa" + }, + { + "id": "8e0cb982-4ca9-2492-2466-a52c8eeed90e", + "headers": "Authorization: Basic YWRtaW46YWRtaW4=\n", + "url": "http://192.168.255.100:8181/restconf/config/endpoint-location-provider:location-providers/location-provider/VPP endpoint location provider", + "preRequestScript": null, + "pathVariables": {}, + "method": "GET", + "data": null, + "dataMode": "params", + "tests": null, + "currentHelper": "normal", + "helperAttributes": {}, + "time": 1472628617084, + "name": "vpp location provider config", + "description": "", + "collectionId": "ca7e7994-e248-0de1-1b3c-27607ae374c5", + "folder": "66e85953-eba2-e686-1c05-181c21f139aa" + }, + { + "id": "9883b811-c54a-6204-91e9-e951483b0500", + "headers": "Authorization: Basic YWRtaW46YWRtaW4=\nContent-Type: application/yang.data+json\nCache-Control: no-cache\n", + "url": "http://192.168.255.100:8181/restconf/config/forwarding:forwarding", + "preRequestScript": "", + "pathVariables": {}, + "method": "GET", + "data": [], + "dataMode": "raw", + "tests": "", + "currentHelper": "normal", + "helperAttributes": {}, + "time": 1472628956384, + "name": "forwarding operational", + "description": "", + "collectionId": "ca7e7994-e248-0de1-1b3c-27607ae374c5", + "folder": "66e85953-eba2-e686-1c05-181c21f139aa", + "rawModeData": "{\n \"forwarding\": \n {\n \"forwarding-by-tenant\": [\n {\n \"tenant-id\": \"tenant-vpp\",\n \"forwarding-context\": [\n {\n \"context-type\": \"l2-l3-forwarding:l3-context\",\n \"context-id\": \"l3-context-vrf-vpp\"\n },\n {\n \"context-type\": \"l2-l3-forwarding:l2-bridge-domain\",\n \"context-id\": \"bridge-domain-1\",\n \"parent\": {\n \"context-type\": \"l2-l3-forwarding:l3-context\",\n \"context-id\": \"l3-context-vrf-vpp\"\n }\n },\n {\n \"context-type\": \"l2-l3-forwarding:l2-flood-domain\",\n \"context-id\": \"flood-domain-1\",\n \"parent\": {\n \"context-type\": \"l2-l3-forwarding:l2-bridge-domain\",\n \"context-id\": \"bridge-domain-1\"\n }\n },\n {\n \"context-type\": \"l2-l3-forwarding:l2-flood-domain\",\n \"context-id\": \"flood-domain-2\",\n \"parent\": {\n \"context-type\": \"l2-l3-forwarding:l2-bridge-domain\",\n \"context-id\": \"bridge-domain-1\"\n }\n }\n ],\n \"network-domain\": [\n {\n \"network-domain-type\": \"l2-l3-forwarding:subnet\",\n \"network-domain-id\": \"subnet-10.0.35.0/24\",\n \"parent\": {\n \"context-type\": \"l2-l3-forwarding:l2-flood-domain\",\n \"context-id\": \"flood-domain-1\"\n },\n \"l2-l3-forwarding:subnet\": {\n \"ip-prefix\": \"10.0.35.0/24\",\n \"virtual-router-ip\": \"10.0.35.1\"\n }\n },\n {\n \"network-domain-type\": \"l2-l3-forwarding:subnet\",\n \"network-domain-id\": \"subnet-10.0.36.0/24\",\n \"parent\": {\n \"context-type\": \"l2-l3-forwarding:l2-flood-domain\",\n \"context-id\": \"flood-domain-2\"\n },\n \"l2-l3-forwarding:subnet\": {\n \"ip-prefix\": \"10.0.36.0/24\",\n \"virtual-router-ip\": \"10.0.36.1\"\n }\n }\n ]\n }\n ]\n }\n}" + }, + { + "id": "a15d7557-a4c4-7eb3-ccf9-45828a452a12", + "headers": "Authorization: Basic YWRtaW46YWRtaW4=\nContent-Type: application/json\nCache-Control: no-cache\n", + "url": "http://192.168.255.100:8181/restconf/config/neutron:neutron", + "preRequestScript": "", + "pathVariables": {}, + "method": "PUT", + "data": [], + "dataMode": "raw", + "tests": "", + "currentHelper": "normal", + "helperAttributes": {}, + "time": 1472570469355, + "name": "neutron data ", + "description": "", + "collectionId": "ca7e7994-e248-0de1-1b3c-27607ae374c5", + "folder": "66e85953-eba2-e686-1c05-181c21f139aa", + "rawModeData": "{\r\n \"neutron\": {\r\n \"networks\": {\r\n \"network\": [\r\n {\r\n \"admin-state-up\": true,\r\n \"name\": \"vxlannet\",\r\n \"neutron-L3-ext:external\": false,\r\n \"neutron-provider-ext:network-type\": \"neutron-networks:network-type-vxlan\",\r\n \"neutron-provider-ext:segmentation-id\": \"1\",\r\n \"shared\": false,\r\n \"status\": \"ACTIVE\",\r\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\r\n \"uuid\": \"adc1b0ba-cb45-4d90-bdbd-50ec29450e7f\"\r\n }\r\n ]\r\n },\r\n \"ports\": {\r\n \"port\": [\r\n {\r\n \"admin-state-up\": true,\r\n \"device-id\": \"fc7035c3-8fbb-4786-b170-b9a0dc333ea5\",\r\n \"device-owner\": \"network:dhcp\",\r\n \"fixed-ips\": [\r\n {\r\n \"ip-address\": \"10.11.12.4\",\r\n \"subnet-id\": \"4aef69db-e3f8-4830-8979-888e6c461f9a\"\r\n }\r\n ],\r\n \"mac-address\": \"fa:16:3e:80:3a:56\",\r\n \"name\": \"vm-compute-0-2-port\",\r\n \"network-id\": \"adc1b0ba-cb45-4d90-bdbd-50ec29450e7f\",\r\n \"neutron-binding:host-id\": \"compute0\",\r\n \"neutron-binding:vif-details\": [\r\n {\r\n \"details-key\": \"port_filter\",\r\n \"value\": \"true\"\r\n }\r\n ],\r\n \"neutron-binding:vif-type\": \"vhostuser\",\r\n \"neutron-binding:vnic-type\": \"normal\",\r\n \"neutron-portsecurity:port-security-enabled\": true,\r\n \"security-groups\": [\r\n \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\r\n ],\r\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\r\n \"uuid\": \"d2bc9876-18e0-4e29-ba6a-22012ae0e4b1\"\r\n },\r\n {\r\n \"admin-state-up\": true,\r\n \"device-id\": \"42ae3bd2-8dc4-49c8-8ffd-ae01821a3fc7\",\r\n \"device-owner\": \"compute:nova\",\r\n \"fixed-ips\": [\r\n {\r\n \"ip-address\": \"10.11.12.20\",\r\n \"subnet-id\": \"4aef69db-e3f8-4830-8979-888e6c461f9a\"\r\n }\r\n ],\r\n \"mac-address\": \"fa:16:3e:8e:9b:77\",\r\n \"name\": \"\",\r\n \"network-id\": \"adc1b0ba-cb45-4d90-bdbd-50ec29450e7f\",\r\n \"neutron-binding:host-id\": \"compute0\",\r\n \"neutron-binding:vif-details\": [\r\n {\r\n \"details-key\": \"vhostuser_mode\",\r\n \"value\": \"server\"\r\n },\r\n {\r\n \"details-key\": \"port_filter\",\r\n \"value\": \"true\"\r\n },\r\n {\r\n \"details-key\": \"vhostuser_socket\",\r\n \"value\": \"/tmp/socket_15fcb2c2-a714-438a-92ce-d6cdedf366ff\"\r\n }\r\n ],\r\n \"neutron-binding:vif-type\": \"vhostuser\",\r\n \"neutron-binding:vnic-type\": \"normal\",\r\n \"neutron-portsecurity:port-security-enabled\": true,\r\n \"security-groups\": [\r\n \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\r\n ],\r\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\r\n \"uuid\": \"15fcb2c2-a714-438a-92ce-d6cdedf366ff\"\r\n },\r\n {\r\n \"admin-state-up\": true,\r\n \"device-id\": \"52ae3bd2-8dc4-49c8-8ffd-ae01821a3fc7\",\r\n \"device-owner\": \"compute:nova\",\r\n \"fixed-ips\": [\r\n {\r\n \"ip-address\": \"10.11.12.21\",\r\n \"subnet-id\": \"4aef69db-e3f8-4830-8979-888e6c461f9a\"\r\n }\r\n ],\r\n \"mac-address\": \"fa:16:3e:8e:9b:78\",\r\n \"name\": \"\",\r\n \"network-id\": \"adc1b0ba-cb45-4d90-bdbd-50ec29450e7f\",\r\n \"neutron-binding:host-id\": \"compute1\",\r\n \"neutron-binding:vif-details\": [\r\n {\r\n \"details-key\": \"vhostuser_mode\",\r\n \"value\": \"server\"\r\n },\r\n {\r\n \"details-key\": \"port_filter\",\r\n \"value\": \"true\"\r\n },\r\n {\r\n \"details-key\": \"vhostuser_socket\",\r\n \"value\": \"/tmp/socket_25fcb2c2-a714-438a-92ce-d6cdedf366ff\"\r\n }\r\n ],\r\n \"neutron-binding:vif-type\": \"vhostuser\",\r\n \"neutron-binding:vnic-type\": \"normal\",\r\n \"neutron-portsecurity:port-security-enabled\": true,\r\n \"security-groups\": [\r\n \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\r\n ],\r\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\r\n \"uuid\": \"25fcb2c2-a714-438a-92ce-d6cdedf366ff\"\r\n },\r\n {\r\n \"admin-state-up\": true,\r\n \"device-id\": \"62ae3bd2-8dc4-49c8-8ffd-ae01821a3fc7\",\r\n \"device-owner\": \"compute:nova\",\r\n \"fixed-ips\": [\r\n {\r\n \"ip-address\": \"10.11.12.22\",\r\n \"subnet-id\": \"4aef69db-e3f8-4830-8979-888e6c461f9a\"\r\n }\r\n ],\r\n \"mac-address\": \"fa:16:3e:8e:9b:79\",\r\n \"name\": \"\",\r\n \"network-id\": \"adc1b0ba-cb45-4d90-bdbd-50ec29450e7f\",\r\n \"neutron-binding:host-id\": \"controller\",\r\n \"neutron-binding:vif-details\": [\r\n {\r\n \"details-key\": \"vhostuser_mode\",\r\n \"value\": \"server\"\r\n },\r\n {\r\n \"details-key\": \"port_filter\",\r\n \"value\": \"true\"\r\n },\r\n {\r\n \"details-key\": \"vhostuser_socket\",\r\n \"value\": \"/tmp/socket_35fcb2c2-a714-438a-92ce-d6cdedf366ff\"\r\n }\r\n ],\r\n \"neutron-binding:vif-type\": \"vhostuser\",\r\n \"neutron-binding:vnic-type\": \"normal\",\r\n \"neutron-portsecurity:port-security-enabled\": true,\r\n \"security-groups\": [\r\n \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\r\n ],\r\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\r\n \"uuid\": \"35fcb2c2-a714-438a-92ce-d6cdedf366ff\"\r\n },\r\n {\r\n \"admin-state-up\": true,\r\n \"device-id\": \"66256547-56ba-48af-827a-a0c83141094a\",\r\n \"device-owner\": \"network:router_interface\",\r\n \"fixed-ips\": [\r\n {\r\n \"ip-address\": \"10.11.12.1\",\r\n \"subnet-id\": \"4aef69db-e3f8-4830-8979-888e6c461f9a\"\r\n }\r\n ],\r\n \"mac-address\": \"fa:16:3e:b7:8b:0a\",\r\n \"name\": \"\",\r\n \"network-id\": \"adc1b0ba-cb45-4d90-bdbd-50ec29450e7f\",\r\n \"neutron-binding:host-id\": \"controller\",\r\n \"neutron-binding:vif-details\": [\r\n {\r\n \"details-key\": \"port_filter\",\r\n \"value\": \"true\"\r\n }\r\n ],\r\n \"neutron-binding:vif-type\": \"vhostuser\",\r\n \"neutron-binding:vnic-type\": \"normal\",\r\n \"neutron-portsecurity:port-security-enabled\": false,\r\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\r\n \"uuid\": \"bc2475a7-5f8e-43ef-8cb5-60885dbff984\"\r\n },\r\n {\r\n \"admin-state-up\": true,\r\n \"device-id\": \"963f3e6b-47e4-49d1-8913-e17d84abb9b1\",\r\n \"device-owner\": \"network:dhcp\",\r\n \"fixed-ips\": [\r\n {\r\n \"ip-address\": \"10.11.12.5\",\r\n \"subnet-id\": \"4aef69db-e3f8-4830-8979-888e6c461f9a\"\r\n }\r\n ],\r\n \"mac-address\": \"fa:16:3e:73:e1:76\",\r\n \"name\": \"vm-compute-1-1-port\",\r\n \"network-id\": \"adc1b0ba-cb45-4d90-bdbd-50ec29450e7f\",\r\n \"neutron-binding:host-id\": \"compute1\",\r\n \"neutron-binding:vif-details\": [\r\n {\r\n \"details-key\": \"port_filter\",\r\n \"value\": \"true\"\r\n }\r\n ],\r\n \"neutron-binding:vif-type\": \"vhostuser\",\r\n \"neutron-binding:vnic-type\": \"normal\",\r\n \"neutron-portsecurity:port-security-enabled\": true,\r\n \"security-groups\": [\r\n \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\r\n ],\r\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\r\n \"uuid\": \"5ae3ba7e-22ba-4bd8-8524-d565496f5036\"\r\n },\r\n {\r\n \"admin-state-up\": true,\r\n \"device-id\": \"dhcp827da361-9c56-50f7-913f-5a01f7bfed2c-adc1b0ba-cb45-4d90-bdbd-50ec29450e7f\",\r\n \"device-owner\": \"network:dhcp\",\r\n \"fixed-ips\": [\r\n {\r\n \"ip-address\": \"10.11.12.2\",\r\n \"subnet-id\": \"4aef69db-e3f8-4830-8979-888e6c461f9a\"\r\n }\r\n ],\r\n \"mac-address\": \"fa:16:3e:bd:29:73\",\r\n \"name\": \"\",\r\n \"network-id\": \"adc1b0ba-cb45-4d90-bdbd-50ec29450e7f\",\r\n \"neutron-binding:host-id\": \"controller\",\r\n \"neutron-binding:vif-details\": [\r\n {\r\n \"details-key\": \"port_filter\",\r\n \"value\": \"true\"\r\n }\r\n ],\r\n \"neutron-binding:vif-type\": \"vhostuser\",\r\n \"neutron-binding:vnic-type\": \"normal\",\r\n \"neutron-portsecurity:port-security-enabled\": false,\r\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\r\n \"uuid\": \"ba9b0895-23e7-4c60-a728-59a9268fa3ab\"\r\n },\r\n {\r\n \"admin-state-up\": true,\r\n \"device-id\": \"3e914e7c-ae81-499c-a9b2-076ffc474421\",\r\n \"device-owner\": \"network:dhcp\",\r\n \"fixed-ips\": [\r\n {\r\n \"ip-address\": \"10.11.12.6\",\r\n \"subnet-id\": \"4aef69db-e3f8-4830-8979-888e6c461f9a\"\r\n }\r\n ],\r\n \"mac-address\": \"fa:16:3e:ec:28:85\",\r\n \"name\": \"vm-compute-1-2-port\",\r\n \"network-id\": \"adc1b0ba-cb45-4d90-bdbd-50ec29450e7f\",\r\n \"neutron-binding:host-id\": \"compute1\",\r\n \"neutron-binding:vif-details\": [\r\n {\r\n \"details-key\": \"port_filter\",\r\n \"value\": \"true\"\r\n }\r\n ],\r\n \"neutron-binding:vif-type\": \"vhostuser\",\r\n \"neutron-binding:vnic-type\": \"normal\",\r\n \"neutron-portsecurity:port-security-enabled\": true,\r\n \"security-groups\": [\r\n \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\r\n ],\r\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\r\n \"uuid\": \"0903dddd-88ec-4a70-bb6f-eaa9a35831a2\"\r\n },\r\n {\r\n \"admin-state-up\": true,\r\n \"device-id\": \"401b0578-7f57-4c2a-bc70-fd98c2e84a3e\",\r\n \"device-owner\": \"network:dhcp\",\r\n \"fixed-ips\": [\r\n {\r\n \"ip-address\": \"10.11.12.3\",\r\n \"subnet-id\": \"4aef69db-e3f8-4830-8979-888e6c461f9a\"\r\n }\r\n ],\r\n \"mac-address\": \"fa:16:3e:3b:7e:32\",\r\n \"name\": \"vm-compute-0-1-port\",\r\n \"network-id\": \"adc1b0ba-cb45-4d90-bdbd-50ec29450e7f\",\r\n \"neutron-binding:host-id\": \"compute0\",\r\n \"neutron-binding:vif-details\": [\r\n {\r\n \"details-key\": \"port_filter\",\r\n \"value\": \"true\"\r\n }\r\n ],\r\n \"neutron-binding:vif-type\": \"vhostuser\",\r\n \"neutron-binding:vnic-type\": \"normal\",\r\n \"neutron-portsecurity:port-security-enabled\": true,\r\n \"security-groups\": [\r\n \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\r\n ],\r\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\r\n \"uuid\": \"44ce999c-9f65-4222-9fd5-b98f7bdf8cf7\"\r\n }\r\n ]\r\n },\r\n \"security-groups\": {\r\n \"security-group\": [\r\n {\r\n \"name\": \"default\",\r\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\r\n \"uuid\": \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\r\n }\r\n ]\r\n },\r\n \"security-rules\": {\r\n \"security-rule\": [\r\n {\r\n \"direction\": \"neutron-constants:direction-ingress\",\r\n \"ethertype\": \"neutron-constants:ethertype-v4\",\r\n \"remote-group-id\": \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\",\r\n \"security-group-id\": \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\",\r\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\r\n \"uuid\": \"7d037f8c-e35d-4f34-b2a8-6e6912728498\"\r\n },\r\n {\r\n \"direction\": \"neutron-constants:direction-ingress\",\r\n \"ethertype\": \"neutron-constants:ethertype-v6\",\r\n \"remote-group-id\": \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\",\r\n \"security-group-id\": \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\",\r\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\r\n \"uuid\": \"b5fb268c-54d1-4f1e-8a6c-cb248fc57278\"\r\n },\r\n {\r\n \"direction\": \"neutron-constants:direction-egress\",\r\n \"ethertype\": \"neutron-constants:ethertype-v4\",\r\n \"security-group-id\": \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\",\r\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\r\n \"uuid\": \"e7e07939-8962-4e3c-a056-ddbb83a36d7f\"\r\n },\r\n {\r\n \"direction\": \"neutron-constants:direction-egress\",\r\n \"ethertype\": \"neutron-constants:ethertype-v6\",\r\n \"security-group-id\": \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\",\r\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\r\n \"uuid\": \"efd160f9-8383-4d42-ab35-201d898fd87e\"\r\n }\r\n ]\r\n },\r\n \"subnets\": {\r\n \"subnet\": [\r\n {\r\n \"allocation-pools\": [\r\n {\r\n \"end\": \"10.11.12.254\",\r\n \"start\": \"10.11.12.2\"\r\n }\r\n ],\r\n \"cidr\": \"10.11.12.0/24\",\r\n \"enable-dhcp\": true,\r\n \"gateway-ip\": \"10.11.12.1\",\r\n \"ip-version\": \"neutron-constants:ip-version-v4\",\r\n \"name\": \"vxlansubnet\",\r\n \"network-id\": \"adc1b0ba-cb45-4d90-bdbd-50ec29450e7f\",\r\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\r\n \"uuid\": \"4aef69db-e3f8-4830-8979-888e6c461f9a\"\r\n }\r\n ]\r\n }\r\n }\r\n}" + }, + { + "id": "a1e303ba-25c2-f897-9be3-b5552eb7bc1c", + "headers": "Authorization: Basic YWRtaW46YWRtaW4=\nContent-Type: application/json\nCache-Control: no-cache\n", + "url": "http://192.168.255.100:8081/restconf/config/neutron:neutron", + "preRequestScript": "", + "pathVariables": {}, + "method": "PUT", + "data": [], + "dataMode": "raw", + "tests": "", + "currentHelper": "normal", + "helperAttributes": {}, + "time": 1474358939793, + "name": "neutron data - initial", + "description": "", + "collectionId": "ca7e7994-e248-0de1-1b3c-27607ae374c5", + "rawModeData": "{\n \"neutron\": {\n \"networks\": {\n \"network\": [\n {\n \"uuid\": \"e82a3ecf-bda8-4868-936e-494999edc0ba\",\n \"name\": \"vxlannet\",\n \"neutron-L3-ext:external\": false,\n \"neutron-provider-ext:segmentation-id\": \"20\",\n \"neutron-provider-ext:network-type\": \"neutron-networks:network-type-vxlan\",\n \"admin-state-up\": true,\n \"shared\": false,\n \"status\": \"ACTIVE\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\"\n },\n {\n \"uuid\": \"54b04cd2-9731-4e48-950c-448a2d35630c\",\n \"name\": \"external\",\n \"neutron-L3-ext:external\": true,\n \"neutron-provider-ext:segmentation-id\": \"50\",\n \"neutron-provider-ext:network-type\": \"neutron-networks:network-type-vxlan\",\n \"admin-state-up\": true,\n \"shared\": false,\n \"status\": \"ACTIVE\",\n \"tenant-id\": \"85a4aec1-69a7-4b1e-a0ea-e8d89562cf4a\"\n }\n ]\n },\n \"subnets\": {\n \"subnet\": [\n {\n \"uuid\": \"3d1158f1-540b-4139-81a6-4dbbb3dae1e5\",\n \"ip-version\": \"neutron-constants:ip-version-v4\",\n \"gateway-ip\": \"10.11.12.1\",\n \"name\": \"vxlansubnet\",\n \"network-id\": \"e82a3ecf-bda8-4868-936e-494999edc0ba\",\n \"cidr\": \"10.11.12.0/24\",\n \"enable-dhcp\": true,\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\n \"allocation-pools\": [\n {\n \"start\": \"10.11.12.2\",\n \"end\": \"10.11.12.254\"\n }\n ]\n }\n ]\n },\n \"security-groups\": {\n \"security-group\": [\n {\n \"uuid\": \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\",\n \"name\": \"default\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\"\n }\n ]\n },\n \"security-rules\": {\n \"security-rule\": [\n {\n \"uuid\": \"7d037f8c-e35d-4f34-b2a8-6e6912728498\",\n \"direction\": \"neutron-constants:direction-ingress\",\n \"security-group-id\": \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\",\n \"ethertype\": \"neutron-constants:ethertype-v4\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\n \"remote-group-id\": \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\n },\n {\n \"uuid\": \"b5fb268c-54d1-4f1e-8a6c-cb248fc57278\",\n \"direction\": \"neutron-constants:direction-ingress\",\n \"security-group-id\": \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\",\n \"ethertype\": \"neutron-constants:ethertype-v6\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\n \"remote-group-id\": \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\n },\n {\n \"uuid\": \"e7e07939-8962-4e3c-a056-ddbb83a36d7f\",\n \"direction\": \"neutron-constants:direction-egress\",\n \"security-group-id\": \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\",\n \"ethertype\": \"neutron-constants:ethertype-v4\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\"\n },\n {\n \"uuid\": \"efd160f9-8383-4d42-ab35-201d898fd87e\",\n \"direction\": \"neutron-constants:direction-egress\",\n \"security-group-id\": \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\",\n \"ethertype\": \"neutron-constants:ethertype-v6\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\"\n }\n ]\n },\n \"ports\": {\n \"port\": [\n {\n \"uuid\": \"6a616da7-d1ba-45c1-80bd-ca5e3fa0edfc\",\n \"device-owner\": \"network:router_interface\",\n \"admin-state-up\": true,\n \"name\": \"\",\n \"fixed-ips\": [\n {\n \"subnet-id\": \"3d1158f1-540b-4139-81a6-4dbbb3dae1e5\",\n \"ip-address\": \"10.11.12.1\"\n }\n ],\n \"network-id\": \"e82a3ecf-bda8-4868-936e-494999edc0ba\",\n \"neutron-binding:vnic-type\": \"normal\",\n \"neutron-binding:host-id\": \"controller\",\n \"neutron-binding:vif-details\": [\n {\n \"details-key\": \"port_filter\",\n \"value\": \"true\"\n }\n ],\n \"neutron-binding:vif-type\": \"vhostuser\",\n \"device-id\": \"3a1fd562-6423-4bbd-89f0-6130ebb96e92\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\n \"mac-address\": \"fa:16:3e:4c:11:20\",\n \"security-groups\": [\n \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\n ],\n \"neutron-portsecurity:port-security-enabled\": false\n },\n {\n \"uuid\": \"a9607d99-0afa-41cc-8f2f-8d62b6e9bc1c\",\n \"device-owner\": \"network:dhcp\",\n \"admin-state-up\": true,\n \"name\": \"vm-0-1-port\",\n \"fixed-ips\": [\n {\n \"subnet-id\": \"3d1158f1-540b-4139-81a6-4dbbb3dae1e5\",\n \"ip-address\": \"10.11.12.3\"\n }\n ],\n \"network-id\": \"e82a3ecf-bda8-4868-936e-494999edc0ba\",\n \"neutron-binding:vnic-type\": \"normal\",\n \"neutron-binding:host-id\": \"compute0\",\n \"neutron-binding:vif-details\": [\n {\n \"details-key\": \"port_filter\",\n \"value\": \"true\"\n }\n ],\n \"neutron-binding:vif-type\": \"vhostuser\",\n \"device-id\": \"6b87c96a-8f3f-451f-a3d7-200b01d80744\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\n \"mac-address\": \"fa:16:3e:4c:fd:34\",\n \"security-groups\": [\n \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\n ],\n \"neutron-portsecurity:port-security-enabled\": true\n },\n {\n \"uuid\": \"8def6a66-7d70-4459-adc4-b189717441b4\",\n \"device-owner\": \"network:dhcp\",\n \"admin-state-up\": true,\n \"name\": \"vm-0-2-port\",\n \"fixed-ips\": [\n {\n \"subnet-id\": \"3d1158f1-540b-4139-81a6-4dbbb3dae1e5\",\n \"ip-address\": \"10.11.12.4\"\n }\n ],\n \"network-id\": \"e82a3ecf-bda8-4868-936e-494999edc0ba\",\n \"neutron-binding:vnic-type\": \"normal\",\n \"neutron-binding:host-id\": \"compute0\",\n \"neutron-binding:vif-details\": [\n {\n \"details-key\": \"port_filter\",\n \"value\": \"true\"\n }\n ],\n \"neutron-binding:vif-type\": \"vhostuser\",\n \"device-id\": \"6e85b372-9269-4f96-8049-f6cccdaf340c\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\n \"mac-address\": \"fa:16:3e:c7:76:82\",\n \"security-groups\": [\n \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\n ],\n \"neutron-portsecurity:port-security-enabled\": true\n },\n {\n \"uuid\": \"7415f153-2a26-4968-880d-3aba22cf6f9d\",\n \"device-owner\": \"network:dhcp\",\n \"admin-state-up\": true,\n \"name\": \"vm-1-1-port\",\n \"fixed-ips\": [\n {\n \"subnet-id\": \"3d1158f1-540b-4139-81a6-4dbbb3dae1e5\",\n \"ip-address\": \"10.11.12.5\"\n }\n ],\n \"network-id\": \"e82a3ecf-bda8-4868-936e-494999edc0ba\",\n \"neutron-binding:vnic-type\": \"normal\",\n \"neutron-binding:host-id\": \"compute1\",\n \"neutron-binding:vif-details\": [\n {\n \"details-key\": \"port_filter\",\n \"value\": \"true\"\n }\n ],\n \"neutron-binding:vif-type\": \"vhostuser\",\n \"device-id\": \"565c0e5f-515a-457b-ae89-857c3f66296a\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\n \"mac-address\": \"fa:16:3e:6f:d4:3c\",\n \"security-groups\": [\n \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\n ],\n \"neutron-portsecurity:port-security-enabled\": true\n },\n {\n \"uuid\": \"fa943a17-ace1-41a6-80ee-3fa292d2d320\",\n \"device-owner\": \"network:dhcp\",\n \"admin-state-up\": true,\n \"name\": \"vm-1-2-port\",\n \"fixed-ips\": [\n {\n \"subnet-id\": \"3d1158f1-540b-4139-81a6-4dbbb3dae1e5\",\n \"ip-address\": \"10.11.12.6\"\n }\n ],\n \"network-id\": \"e82a3ecf-bda8-4868-936e-494999edc0ba\",\n \"neutron-binding:vnic-type\": \"normal\",\n \"neutron-binding:host-id\": \"compute1\",\n \"neutron-binding:vif-details\": [\n {\n \"details-key\": \"port_filter\",\n \"value\": \"true\"\n }\n ],\n \"neutron-binding:vif-type\": \"vhostuser\",\n \"device-id\": \"945b82f4-07a9-4442-aa64-d3cc34cfb64d\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\n \"mac-address\": \"fa:16:3e:ec:3a:40\",\n \"security-groups\": [\n \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\n ],\n \"neutron-portsecurity:port-security-enabled\": true\n },\n {\n \"uuid\": \"c6076003-2b5c-4487-9db6-f2667a2c276e\",\n \"device-owner\": \"network:dhcp\",\n \"admin-state-up\": true,\n \"name\": \"\",\n \"fixed-ips\": [\n {\n \"subnet-id\": \"3d1158f1-540b-4139-81a6-4dbbb3dae1e5\",\n \"ip-address\": \"10.11.12.2\"\n }\n ],\n \"network-id\": \"e82a3ecf-bda8-4868-936e-494999edc0ba\",\n \"neutron-binding:vnic-type\": \"normal\",\n \"neutron-binding:host-id\": \"controller\",\n \"neutron-binding:vif-details\": [\n {\n \"details-key\": \"port_filter\",\n \"value\": \"true\"\n }\n ],\n \"neutron-binding:vif-type\": \"vhostuser\",\n \"device-id\": \"dhcp827da361-9c56-50f7-913f-5a01f7bfed2c-e82a3ecf-bda8-4868-936e-494999edc0ba\",\n \"tenant-id\": \"92070479-5900-498b-84e3-893a04f55709\",\n \"mac-address\": \"fa:16:3e:bc:6b:e2\",\n \"security-groups\": [\n \"0fbd740b-aa18-4bbf-95b6-cca9f3f14107\"\n ],\n \"neutron-portsecurity:port-security-enabled\": false\n }\n ]\n }\n }\n}" + }, + { + "id": "a6008cfe-8f36-6a43-9464-87f55538768f", + "headers": "Authorization: Basic YWRtaW46YWRtaW4=\nContent-Type: application/yang.data+json\nCache-Control: no-cache\n", + "url": "http://192.168.255.100:8181/restconf/operational/base-endpoint:endpoints", + "preRequestScript": "", + "pathVariables": {}, + "method": "GET", + "data": [], + "dataMode": "raw", + "tests": "", + "currentHelper": "normal", + "helperAttributes": {}, + "time": 1472628913643, + "name": "endpoints operational", + "description": "", + "collectionId": "ca7e7994-e248-0de1-1b3c-27607ae374c5", + "folder": "66e85953-eba2-e686-1c05-181c21f139aa", + "rawModeData": "{\n \"network-elements\":\n {\n \"network-element\": [\n {\n \"iid\": \"/opendaylight-inventory:nodes/opendaylight-inventory:node[opendaylight-inventory:id='openflow:1']\";\n \"interface\": [\n {\n \"iid\": \"/opendaylight-inventory:nodes/opendaylight-inventory:node[opendaylight-inventory:id='openflow:1']/opendaylight-inventory:node-connector[opendaylight-inventory:id='openflow:1:3']\";\n \"endpoint-network\": [\n {\n \"l3-context\": \"l3-context-vrf-red\",\n \"ip-prefix\": \"10.0.35.70/24\"\n }\n ]\n }\n ]\n }\n ]\n }\n}" + }, + { + "id": "c8bff5bf-6435-5cac-7242-52b6be1a6b2f", + "headers": "Authorization: Basic YWRtaW46YWRtaW4=\n", + "url": "http://192.168.255.100:8081/restconf/config/renderer:renderers/renderer/vpp-renderer", + "preRequestScript": null, + "pathVariables": {}, + "method": "GET", + "data": [], + "dataMode": "params", + "tests": null, + "currentHelper": "normal", + "helperAttributes": {}, + "time": 1473431491089, + "name": "VPP renderer config", + "description": "", + "collectionId": "ca7e7994-e248-0de1-1b3c-27607ae374c5", + "folder": "66e85953-eba2-e686-1c05-181c21f139aa" + }, + { + "id": "d0c7ad28-aaac-2585-37c4-8ad1fb96b300", + "headers": "Authorization: Basic YWRtaW46YWRtaW4=\nContent-Type: application/yang.data+json\nCache-Control: no-cache\n", + "url": "http://192.168.255.100:8181/restconf/operational/resolved-policy:resolved-policies ", + "preRequestScript": "", + "pathVariables": {}, + "method": "GET", + "data": [], + "dataMode": "params", + "tests": "", + "currentHelper": "normal", + "helperAttributes": {}, + "time": 1472628929342, + "name": "resolved-policies operational", + "description": "", + "collectionId": "ca7e7994-e248-0de1-1b3c-27607ae374c5", + "folder": "66e85953-eba2-e686-1c05-181c21f139aa" + }, + { + "id": "d43e3c11-32e3-b533-cf1e-935194987fb5", + "headers": "Authorization: Basic YWRtaW46YWRtaW4=\nContent-Type: application/json\n", + "url": "http://192.168.255.100:8181/restconf/config/vpp-renderer:config", + "preRequestScript": null, + "pathVariables": {}, + "method": "GET", + "data": [], + "dataMode": "raw", + "tests": null, + "currentHelper": "normal", + "helperAttributes": {}, + "time": 1472628092435, + "name": "VPP endpoints", + "description": "", + "collectionId": "ca7e7994-e248-0de1-1b3c-27607ae374c5", + "folder": "66e85953-eba2-e686-1c05-181c21f139aa", + "rawModeData": "{\n \"config\": {\n \"vpp-endpoint\": [\n {\n \"context-type\": \"l2-l3-forwarding:l2-bridge-domain\",\n \"context-id\": \"e86740a2-042c-4e64-a43b-cc224e0d5240\",\n \"address-type\": \"l2-l3-forwarding:mac-address-type\",\n \"address\": \"fa:16:3e:4a:9f:c4\",\n \"vpp-node-path\": \"/network-topology:network-topology/network-topology:topology[network-topology:topology-id='topology-netconf']/network-topology:node[network-topology:node-id='dut1']\",\n \"vpp-interface-name\": \"neutron_port_3d5dff96-25f5-4d4b-aa11-dc03f7f8d8e8\",\n \"physical-address\": \"fa:16:3e:4a:9f:c4\",\n \"name\": \"tap3d5dff96-25\",\n \"description\": \"neutron port\"\n },\n {\n \"context-type\": \"l2-l3-forwarding:l2-bridge-domain\",\n \"context-id\": \"e86740a2-042c-4e64-a43b-cc224e0d5240\",\n \"address-type\": \"l2-l3-forwarding:mac-address-type\",\n \"address\": \"fb:17:3f:4b:90:c5\",\n \"vpp-node-path\": \"/network-topology:network-topology/network-topology:topology[network-topology:topology-id='topology-netconf']/network-topology:node[network-topology:node-id='dut2']\",\n \"vpp-interface-name\": \"neutron_port_dc03f7f8-25f5-4d4b-aa11-3d5dff96d8e8\",\n \"physical-address\": \"fb:17:3f:4b:90:c5\",\n \"name\": \"tapdc03f7f8-25\",\n \"description\": \"neutron port\"\n }\n ]\n }\n}" + }, + { + "id": "f3e707bc-2e56-0c63-401a-af6d8cc89232", + "headers": "Authorization: Basic YWRtaW46YWRtaW4=\n", + "url": "http://192.168.255.100:8181/restconf/config/network-topology:network-topology/topology/36e1c19e-e2f5-4c83-a5af-125cb2af0419", + "preRequestScript": null, + "pathVariables": {}, + "method": "GET", + "data": null, + "dataMode": "params", + "tests": null, + "currentHelper": "normal", + "helperAttributes": {}, + "time": 1472628264787, + "name": "read BD config", + "description": "", + "collectionId": "ca7e7994-e248-0de1-1b3c-27607ae374c5", + "folder": "66e85953-eba2-e686-1c05-181c21f139aa" + }, + { + "id": "f48fb80a-f113-04ae-5e97-b1110f31aec0", + "headers": "Authorization: Basic YWRtaW46YWRtaW4=\nContent-Type: application/yang.data+json\nCache-Control: no-cache\n", + "url": "http://192.168.255.100:8181/restconf/operational/base-endpoint:endpoint-locations", + "preRequestScript": "", + "pathVariables": {}, + "method": "GET", + "data": [], + "dataMode": "raw", + "tests": "", + "currentHelper": "normal", + "helperAttributes": {}, + "time": 1472628503852, + "name": "endpoint-locations operational", + "description": "", + "collectionId": "ca7e7994-e248-0de1-1b3c-27607ae374c5", + "folder": "66e85953-eba2-e686-1c05-181c21f139aa", + "rawModeData": "{\n \"network-elements\":\n {\n \"network-element\": [\n {\n \"iid\": \"/opendaylight-inventory:nodes/opendaylight-inventory:node[opendaylight-inventory:id='openflow:1']\";\n \"interface\": [\n {\n \"iid\": \"/opendaylight-inventory:nodes/opendaylight-inventory:node[opendaylight-inventory:id='openflow:1']/opendaylight-inventory:node-connector[opendaylight-inventory:id='openflow:1:3']\";\n \"endpoint-network\": [\n {\n \"l3-context\": \"l3-context-vrf-red\",\n \"ip-prefix\": \"10.0.35.70/24\"\n }\n ]\n }\n ]\n }\n ]\n }\n}" + }, + { + "id": "f53c4509-ecec-e7b4-8d93-98494f84d5bc", + "headers": "Authorization: Basic YWRtaW46YWRtaW4=\n", + "url": "http://192.168.255.100:8181/restconf/config/network-topology:network-topology/topology/topology-netconf", + "preRequestScript": null, + "pathVariables": {}, + "method": "GET", + "data": null, + "dataMode": "params", + "tests": null, + "currentHelper": "normal", + "helperAttributes": {}, + "time": 1472628316067, + "name": "Get network-topology", + "description": "", + "collectionId": "ca7e7994-e248-0de1-1b3c-27607ae374c5", + "folder": "66e85953-eba2-e686-1c05-181c21f139aa" + } + ] +} \ No newline at end of file diff --git a/demos/vpp-demo/readme.rst b/demos/vpp-demo/readme.rst new file mode 100644 index 000000000..ab86bac45 --- /dev/null +++ b/demos/vpp-demo/readme.rst @@ -0,0 +1,88 @@ +VPP-DEMO for GBP +================ +This demo requires Vagrant (tested on 1.8.5 version) and VirtualBox (tested on 5.1.2 version) +To setup the environment just navigate to groupbasedpolicy\demos\vpp-demo and execute following command:: + + vagrant up + +Vagrant then creates 3VMs (controller, compute0 and compute1). After vagrant finishes you can stop the VMs with +"vagrant halt" command and bring them up again with "vagrant up" command. If distribution-karaf-0.5.0-Boron.tar.gz is +available in vpp-demo folder vagrant setup will use this one. If it is not it will download ODL to controller node. + +DEMO setup +---------- +(repeat this everytime you want to reset the demo) +To reset state of VMs run the following command on all VMs. It resolves on which node it is running and +configures IPs to vpp:: + + /vagrant/reload-nodes.sh + +To enter VMs use "vagrant ssh" command:: + + vagrant ssh controller + vagrant ssh compute0 + vagrant ssh compute1 + +On controller the script will start ODL in debug mode. + +You need to install following features in ODL (logs are optional):: + + feature:install odl-vbd-ui odl-groupbasedpolicy-ui odl-groupbasedpolicy-neutron-vpp-mapper odl-restconf + + log:set ERROR org.opendaylight.netconf + log:set TRACE org.opendaylight.groupbasedpolicy.renderer.vpp + log:set TRACE org.opendaylight.groupbasedpolicy.neutron.vpp.mapper + log:set TRACE org.opendaylight.vbd.impl + log:set ERROR org.opendaylight.netconf + log:tail + +You can now import vpp-demo collection (local-demo-postman.json) to postman and start demo by following these steps:: + + 1. You need to register VPP nodes in postman collection: + a. Register VPP controller + b. Register VPP compute0 + c. Register VPP compute1 + 2. After nodes are connected (you can check in "VPP renderer operational") yo can feed data to ODL: + use "neutron data - initial" from collection + 3. This will take some time, then you should be able to add tap ports to namespaces and ping between them + +As the last thing you need to assign Tap ports which were created by the above configuration to according namespaces. + +On controller:: + + sudo ip netns add vpp-controller + sudo ip link set dev qr-6a616da7-d1 up netns vpp-controller + sudo ip link set dev tapc6076003-2b up netns vpp-controller + sudo ip netns exec vpp-controller ip addr add 10.11.12.1/24 dev qr-6a616da7-d1 + sudo ip netns exec vpp-controller ip addr add 10.11.12.2/24 dev tapc6076003-2b + + sudo ip netns exec vpp-controller ping 10.11.12.3 -c 5 + sudo ip netns exec vpp-controller ping 10.11.12.4 -c 5 + sudo ip netns exec vpp-controller ping 10.11.12.5 -c 5 + sudo ip netns exec vpp-controller ping 10.11.12.6 -c 5 + +On compute0:: + + sudo ip netns add vpp-compute0 + sudo ip link set dev tap8def6a66-7d up netns vpp-compute0 + sudo ip link set dev tapa9607d99-0a up netns vpp-compute0 + sudo ip netns exec vpp-compute0 ip addr add 10.11.12.4/24 dev tap8def6a66-7d + sudo ip netns exec vpp-compute0 ip addr add 10.11.12.3/24 dev tapa9607d99-0a + + sudo ip netns exec vpp-compute0 ping 10.11.12.1 -c 5 + sudo ip netns exec vpp-compute0 ping 10.11.12.2 -c 5 + sudo ip netns exec vpp-compute0 ping 10.11.12.5 -c 5 + sudo ip netns exec vpp-compute0 ping 10.11.12.6 -c 5 + +On compute1:: + + sudo ip netns add vpp-compute1 + sudo ip link set dev tap7415f153-2a up netns vpp-compute1 + sudo ip link set dev tapfa943a17-ac up netns vpp-compute1 + sudo ip netns exec vpp-compute1 ip addr add 10.11.12.5/24 dev tap7415f153-2a + sudo ip netns exec vpp-compute1 ip addr add 10.11.12.6/24 dev tapfa943a17-ac + + sudo ip netns exec vpp-compute1 ping 10.11.12.1 -c 5 + sudo ip netns exec vpp-compute1 ping 10.11.12.2 -c 5 + sudo ip netns exec vpp-compute1 ping 10.11.12.3 -c 5 + sudo ip netns exec vpp-compute1 ping 10.11.12.4 -c 5 diff --git a/demos/vpp-demo/register_vpp_node.sh b/demos/vpp-demo/register_vpp_node.sh new file mode 100644 index 000000000..b702587fd --- /dev/null +++ b/demos/vpp-demo/register_vpp_node.sh @@ -0,0 +1,39 @@ +#!/bin/bash + +display_usage() { + echo "Add VPP Mount into ODL." + echo "Usage:$0 [ODL Hostname or IP:port] [Mount Name of VPP in ODL] [VPP Hostname or IP] \n" + exit 85 +} + +if [ $# -lt 3 ] +then + display_usage +exit 1 +fi + +odl_ip=$1 +vpp_host=$2 +vpp_ip=$3 + +vpp_username=admin +vpp_password=admin + +post_data='{"node" : [ +{"node-id":"'$vpp_host'", +"netconf-node-topology:host":"'$vpp_ip'", +"netconf-node-topology:port":"2831", +"netconf-node-topology:tcp-only":false, +"netconf-node-topology:keepalive-delay":0, +"netconf-node-topology:username":"'$vpp_username'", +"netconf-node-topology:password":"'$vpp_password'", +"netconf-node-topology:connection-timeout-millis":10000, +"netconf-node-topology:default-request-timeout-millis":10000, +"netconf-node-topology:max-connection-attempts":10, +"netconf-node-topology:between-attempts-timeout-millis":10000, +"netconf-node-topology:schema-cache-directory":"hcmount"} +] +} +' + +curl -u admin:admin -X POST -d "$post_data" -H 'Content-Type: application/json' http://$odl_ip:8081/restconf/config/network-topology:network-topology/network-topology:topology/topology-netconf diff --git a/demos/vpp-demo/reload-nodes.sh b/demos/vpp-demo/reload-nodes.sh new file mode 100644 index 000000000..0b62d83f9 --- /dev/null +++ b/demos/vpp-demo/reload-nodes.sh @@ -0,0 +1,67 @@ +#! /bin/bash -x +sudo service vpp stop +sudo service honeycomb stop +#remove persistent data +sudo rm -rf /var/lib/honeycomb/persist/config/* +sudo rm -rf /var/lib/honeycomb/persist/context/* + +sleep 3 +sudo service vpp start +sleep 5 +sudo service honeycomb start +sleep 3 + +if [ $(hostname) = "controller" ]; then + sudo pkill -f karaf + sudo rm -rf /opt/distribution-karaf-0.5.0-Boron/data/ /opt/distribution-karaf-0.5.0-Boron/journal/ /opt/distribution-karaf-0.5.0-Boron/snapshots/ /opt/distribution-karaf-0.5.0-Boron/instances/ + cd + sudo vppctl set int state GigabitEthernet0/9/0 up + sudo vppctl set int state GigabitEthernet0/a/0 up + sudo vppctl set int ip address GigabitEthernet0/9/0 10.0.0.1/24 + sudo vppctl sh int + sudo vppctl sh int address + + sleep 20 + curl -u admin:admin -X GET -H 'Content-Type: application/xml' http://localhost:8283/restconf/config/ietf-interfaces:interfaces/ | python -m json.tool + sudo /opt/distribution-karaf-0.5.0-Boron/bin/karaf debug + echo " +USE THE FOLLOWING FEATURES IN ODL, THEN REGISTER ALL VPP NODES: + +log:set ERROR org.opendaylight.netconf +feature:install odl-vbd-ui odl-groupbasedpolicy-neutron-vpp-mapper odl-restconf +log:set TRACE org.opendaylight.groupbasedpolicy.renderer.vpp +log:set TRACE org.opendaylight.groupbasedpolicy.neutron.vpp.mapper +log:set TRACE org.opendaylight.vbd.impl +log:set ERROR org.opendaylight.netconf +logout + + +/vagrant/register_vpp_node.sh 192.168.255.100 compute0 192.168.255.101 +/vagrant/register_vpp_node.sh 192.168.255.100 compute1 192.168.255.102 +/vagrant/register_vpp_node.sh 192.168.255.100 controller 192.168.255.100" +fi; + +if [ $(hostname) = "compute0" ]; then + sudo vppctl set int state GigabitEthernet0/9/0 up + sudo vppctl set int state GigabitEthernet0/a/0 up + sudo vppctl set int ip address GigabitEthernet0/9/0 10.0.0.2/24 + sudo vppctl sh int + sudo vppctl sh int address + + sleep 20 + curl -u admin:admin -X GET -H 'Content-Type: application/xml' http://localhost:8283/restconf/config/ietf-interfaces:interfaces/ | python -m json.tool +fi; + +if [ $(hostname) = "compute1" ]; then + sudo vppctl set int state GigabitEthernet0/9/0 up + sudo vppctl set int state GigabitEthernet0/a/0 up + sudo vppctl set int ip address GigabitEthernet0/9/0 10.0.0.3/24 + sudo vppctl sh int + sudo vppctl sh int address + + sleep 20 + curl -u admin:admin -X GET -H 'Content-Type: application/xml' http://localhost:8283/restconf/config/ietf-interfaces:interfaces/ | python -m json.tool +fi; + + + diff --git a/demos/vpp-demo/vagrant_scripts/add-user.sh b/demos/vpp-demo/vagrant_scripts/add-user.sh new file mode 100644 index 000000000..7472dc3af --- /dev/null +++ b/demos/vpp-demo/vagrant_scripts/add-user.sh @@ -0,0 +1,12 @@ +#! /bin/bash + +#add user +echo "Adding gbp user..." +sudo deluser gbp +sudo adduser --disabled-password --gecos "" gbp +echo gbp:gbp | sudo chpasswd +sudo adduser gbp vagrant +id gbp +echo "gbp ALL=(root) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/gbp +sudo chmod 0440 /etc/sudoers.d/gbp +echo "Adding gbp user done." diff --git a/demos/vpp-demo/vagrant_scripts/configure-vpp.sh b/demos/vpp-demo/vagrant_scripts/configure-vpp.sh new file mode 100644 index 000000000..f68363b24 --- /dev/null +++ b/demos/vpp-demo/vagrant_scripts/configure-vpp.sh @@ -0,0 +1,13 @@ +#! /bin/bash + +#configure vpp +if ! grep -q "dev 0000:00:09.0 {vlan-strip-offload off}" /etc/vpp/startup.conf; then + echo "configuring VPP..." + sudo sed -i "\$adpdk \n{\n dev 0000:00:09.0 {vlan-strip-offload off}\n dev 0000:00:0a.0 {vlan-strip-offload off}\n}" "/etc/vpp/startup.conf" + echo "configuring VPP done." +else + echo "WARNING: VPP startup conf was not configured..." + exit +fi + +#sudo service vpp start \ No newline at end of file diff --git a/demos/vpp-demo/vagrant_scripts/fix-perms.sh b/demos/vpp-demo/vagrant_scripts/fix-perms.sh new file mode 100644 index 000000000..37c37c2ca --- /dev/null +++ b/demos/vpp-demo/vagrant_scripts/fix-perms.sh @@ -0,0 +1,5 @@ +#! /bin/bash + +#fix permissions +sudo chown vagrant:vagrant /home/vagrant/.ssh/authorized_keys +sudo chmod 0600 /home/vagrant/.ssh/authorized_keys diff --git a/demos/vpp-demo/vagrant_scripts/install-hc.sh b/demos/vpp-demo/vagrant_scripts/install-hc.sh new file mode 100644 index 000000000..c3e928a0b --- /dev/null +++ b/demos/vpp-demo/vagrant_scripts/install-hc.sh @@ -0,0 +1,10 @@ +#! /bin/bash + +#install hc +echo "Installing Honeycomb..." +sudo apt-get update --allow-unauthenticated +sudo apt-get -y -f install --allow-unauthenticated +sudo apt-get -qq install -y --allow-unauthenticated honeycomb +sed -i 's/"restconf-port": 8181/"restconf-port": 8283/g' /opt/honeycomb/config/honeycomb.json +echo "Installing Honeycomb done." +#sudo service honeycomb start \ No newline at end of file diff --git a/demos/vpp-demo/vagrant_scripts/install-java8.sh b/demos/vpp-demo/vagrant_scripts/install-java8.sh new file mode 100644 index 000000000..55548b791 --- /dev/null +++ b/demos/vpp-demo/vagrant_scripts/install-java8.sh @@ -0,0 +1,16 @@ +#! /bin/bash + +#install java 8 for ubuntu +echo "installing java..." +sudo apt-get update +sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys DA1A4A13543B466853BAF164EB9B1D8886F44E2A +if [ ! -f /etc/apt/sources.list.d/openjdk.list ];then + echo "deb http://ppa.launchpad.net/openjdk-r/ppa/ubuntu trusty main " | sudo tee -a /etc/apt/sources.list.d/openjdk.list + echo "deb-src http://ppa.launchpad.net/openjdk-r/ppa/ubuntu trusty main" | sudo tee -a /etc/apt/sources.list.d/openjdk.list +else + echo "OpenJDK source already applied." +fi +sudo apt-get update +sudo apt-get -y install openjdk-8-jdk +export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 +echo "$JAVA_HOME" diff --git a/demos/vpp-demo/vagrant_scripts/install-odl.sh b/demos/vpp-demo/vagrant_scripts/install-odl.sh new file mode 100644 index 000000000..b7675d7a9 --- /dev/null +++ b/demos/vpp-demo/vagrant_scripts/install-odl.sh @@ -0,0 +1,21 @@ +#! /bin/bash + +#install ODL +echo "Installing ODL..." +sudo rm -rf /opt/distribution-karaf-0.5.0-Boron.tar.gz +sudo rm -rf /opt/distribution-karaf-0.5.0-Boron +if [ ! -f /vagrant/distribution-karaf-0.5.0-Boron.tar.gz ];then + cd /tmp/ + echo "downloading ODL (this could take long) ..." + wget https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/distribution-karaf/0.5.0-Boron/distribution-karaf-0.5.0-Boron.tar.gz -q + sudo cp distribution-karaf-0.5.0-Boron.tar.gz /opt/distribution-karaf-0.5.0-Boron.tar.gz +else + sudo cp /vagrant/distribution-karaf-0.5.0-Boron.tar.gz /opt/distribution-karaf-0.5.0-Boron.tar.gz +fi +cd /opt/ +echo "extracting ODL ..." +sudo tar -zxf distribution-karaf-0.5.0-Boron.tar.gz +echo "configuring ODL ..." +sudo sed -i 's/Property name="jetty.port" default="8181"/Property name="jetty.port" default="8081"/g' /opt/distribution-karaf-0.5.0-Boron/etc/jetty.xml +sudo sed -i 's/Property name="jetty.port" default="8080"/Property name="jetty.port" default="8182"/g' /opt/distribution-karaf-0.5.0-Boron/etc/jetty.xml +echo "Installing ODL done." diff --git a/demos/vpp-demo/vagrant_scripts/install-prereqs.sh b/demos/vpp-demo/vagrant_scripts/install-prereqs.sh new file mode 100644 index 000000000..f6cc005e2 --- /dev/null +++ b/demos/vpp-demo/vagrant_scripts/install-prereqs.sh @@ -0,0 +1,19 @@ +#! /bin/bash + +#install pre-reguirements +echo "Installing pre-reguirements..." + +sudo sed -i 's/#force_color_prompt=yes/force_color_prompt=yes/g' /home/vagrant/.bashrc +sudo sed -i 's/#force_color_prompt=yes/force_color_prompt=yes/g' /root/.bashrc + +if [ ! -f /etc/apt/sources.list.d/99fd.io.list ];then + echo "deb https://nexus.fd.io/content/repositories/fd.io.stable.1609.ubuntu.trusty.main/ ./" | sudo tee -a /etc/apt/sources.list.d/99fd.io.list +fi +sudo apt-get -qq update --allow-unauthenticated +sudo apt-get -y remove apparmor apparmor-utils libapparmor-perl +sudo update-grub +sudo apt-get -y update +sudo apt-get -y -f install +sudo apt-get -y install python-virtualenv python-dev iproute2 vim mc debhelper dkms dpkg-dev build-essential +sudo update-alternatives --install /bin/sh sh /bin/bash 100 +echo "Installing pre-reguirements done." diff --git a/demos/vpp-demo/vagrant_scripts/install-vpp.sh b/demos/vpp-demo/vagrant_scripts/install-vpp.sh new file mode 100644 index 000000000..f60542954 --- /dev/null +++ b/demos/vpp-demo/vagrant_scripts/install-vpp.sh @@ -0,0 +1,15 @@ +#! /bin/bash + +#install vpp +echo "Installing VPP..." +sudo apt-get update --allow-unauthenticated +sudo apt-get -y -f install --allow-unauthenticated +sysctl -w vm.nr_hugepages=1024 +HUGEPAGES=`sysctl -n vm.nr_hugepages` +if [ $HUGEPAGES != 1024 ]; then + echo "!!!!!!!!!!!!ERROR: Unable to get 1024 hugepages, only got $HUGEPAGES. Cannot finish!!!!!!!!!!!!" + exit +fi +sudo apt-get install -y --allow-unauthenticated vpp-lib vpp vpp-dev vpp-dpdk-dkms +echo "Installing VPP done." +#sudo service vpp start \ No newline at end of file