From 9deb9d177ac7df32ea978480e5799106f9503909 Mon Sep 17 00:00:00 2001 From: Igor Gajsin Date: Tue, 18 Aug 2015 19:41:17 +0300 Subject: [PATCH] Provide launch several vms simultaneously. There was a bug 1481071 which was fixed on driver side. This patch-set does corresponding changes on the plugin level. Change-Id: I7268c3201664190a086d69615c66309ac020e620 --- deployment_scripts/del_predefined_networks.sh | 15 +++++++++++++ deployment_scripts/install_the_driver.sh | 21 +++++++------------ deployment_scripts/puppet/manifests/site.pp | 1 + .../modules/vmware_dvs/manifests/init.pp | 16 +++++++++++++- metadata.yaml | 2 +- tasks.yaml | 16 +++++++++----- 6 files changed, 50 insertions(+), 21 deletions(-) create mode 100755 deployment_scripts/del_predefined_networks.sh diff --git a/deployment_scripts/del_predefined_networks.sh b/deployment_scripts/del_predefined_networks.sh new file mode 100755 index 0000000..1c5039e --- /dev/null +++ b/deployment_scripts/del_predefined_networks.sh @@ -0,0 +1,15 @@ +#!/bin/bash + +. /root/openrc +router=router04 + +neutron router-gateway-clear $router + +for port in $(neutron router-port-list $router| grep ip_a| cut -f 2 -d\ ); do + neutron router-interface-delete $router port=$port + neutron port-delete $port +done + +for net in $(neutron net-list|grep '/'|cut -f 4 -d\ ); do + neutron net-delete $net +done diff --git a/deployment_scripts/install_the_driver.sh b/deployment_scripts/install_the_driver.sh index 070da1e..d913b77 100755 --- a/deployment_scripts/install_the_driver.sh +++ b/deployment_scripts/install_the_driver.sh @@ -7,6 +7,7 @@ port=8080 function _nova_patch { wget -O /usr/lib/python2.7/dist-packages/nova.patch "http://$ip:$port/plugins/$plugin_name-$plugin_version/nova.patch" && cd /usr/lib/python2.7/dist-packages/ ; patch -N -p1 < nova.patch + sed -i s/neutron_url_timeout=.*/neutron_url_timeout=3600/ /etc/nova/nova.conf for resource in $(crm_mon -1|awk '/nova_compute_vmware/ {print $1}'); do execute_node=$(crm resource status $resource | cut -f 6 -d\ ) if [ "$execute_node"="$(hostname)" ]; @@ -16,6 +17,11 @@ function _nova_patch { done } +function _haproxy_config { + echo ' timeout server 1h' >> /etc/haproxy/conf.d/085-neutron.cfg + crm resource restart p_haproxy +} + function _dirty_hack { cd /usr/lib/python2.7/dist-packages/oslo mv messaging messaging.old @@ -41,24 +47,11 @@ function _ln { ln -s /usr/lib/python2.7/dist-packages/oslo/rootwrap } -function _del_network { - . /root/openrc - router=router04 - neutron router-gateway-clear $router - for port in $(neutron router-port-list $router| grep ip_a| cut -f 2 -d\ ); do - neutron router-interface-delete $router port=$port - neutron port-delete $port - done - for net in $(neutron net-list|grep '/'|cut -f 4 -d\ ); do - neutron net-delete $net - done -} - function _neutron_restart { service neutron-server restart } -_del_network +_haproxy_config _nova_patch _core_install _dirty_hack diff --git a/deployment_scripts/puppet/manifests/site.pp b/deployment_scripts/puppet/manifests/site.pp index f915867..087d9f1 100644 --- a/deployment_scripts/puppet/manifests/site.pp +++ b/deployment_scripts/puppet/manifests/site.pp @@ -37,4 +37,5 @@ class {'vmware_dvs': nets => $nets, keystone_admin_tenant => $keystone_admin_tenant, driver_name => 'vmware_dvs', + neutron_url_timeout => '3600', } diff --git a/deployment_scripts/puppet/modules/vmware_dvs/manifests/init.pp b/deployment_scripts/puppet/modules/vmware_dvs/manifests/init.pp index 2f79e19..6b70189 100644 --- a/deployment_scripts/puppet/modules/vmware_dvs/manifests/init.pp +++ b/deployment_scripts/puppet/modules/vmware_dvs/manifests/init.pp @@ -12,9 +12,17 @@ # License for the specific language governing permissions and limitations # under the License. +# == Class: ::vmware_dvs +# # edit /etc/neutron/neturon.conf and /etc/neutron/plugin.ini # recreate net04 and net04_ext on primary-controller # restart the neutron-server +# +# === Parameters +# +# [*vsphere_hostname*] +# (required) String. This is a name or ip of VMware vSphere server +# class vmware_dvs( $vsphere_hostname, $vsphere_login, @@ -25,6 +33,7 @@ class vmware_dvs( $nets, $keystone_admin_tenant, $driver_name = 'vmware_dvs', + $neutron_url_timeout = '3600', ) { $true_network_maps = get_network_maps($network_maps, $neutron_physnet) @@ -47,7 +56,12 @@ class vmware_dvs( setting => 'mechanism_drivers', subsetting => $driver_name, subsetting_separator => ',' - } + } -> + exec {'restart_neutron': + command => 'service neutron-server restart', + path => '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin' + } + if $primary_controller { Service<| title == 'neutron-server' |> -> diff --git a/metadata.yaml b/metadata.yaml index 5dbfa44..fa62d32 100644 --- a/metadata.yaml +++ b/metadata.yaml @@ -3,7 +3,7 @@ name: fuel-plugin-vmware-dvs # Human-readable name for your plugin title: use Neutron VMware DVS ML2 plugin # Plugin version -version: '1.0.0' +version: '1.0.2' # Description description: Enable to use plugin vmware_dvs for Neutron # Required fuel version diff --git a/tasks.yaml b/tasks.yaml index 287a941..cb8f982 100644 --- a/tasks.yaml +++ b/tasks.yaml @@ -1,19 +1,25 @@ -- role: ['primary-controller','controller'] +- role: ['primary-controller'] stage: post_deployment/7000 type: shell parameters: - cmd: ./install_the_driver.sh - timeout: 720 + cmd: ./del_predefined_networks.sh 2>&1 | tee -a /tmp/dep_pre_nets.log + timeout: 120 - role: ['primary-controller','controller'] stage: post_deployment/7001 + type: shell + parameters: + cmd: ./install_the_driver.sh 2>&1 | tee -a /tmp/ins_the_drivers.log + timeout: 720 +- role: ['primary-controller','controller'] + stage: post_deployment/7002 type: puppet parameters: puppet_manifest: puppet/manifests/site.pp puppet_modules: puppet/modules:/etc/puppet/modules timeout: 720 - role: ['primary-controller','controller'] - stage: post_deployment/7002 + stage: post_deployment/7003 type: shell parameters: cmd: service neutron-server restart - timeout: 60 \ No newline at end of file + timeout: 60