diff --git a/deployment_scripts/add_hyperv_type.sh b/deployment_scripts/add_hyperv_type.sh
deleted file mode 100755
index 80686ed..0000000
--- a/deployment_scripts/add_hyperv_type.sh
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/bash
-
-. /root/openrc
-
-glance image-update $(glance image-list | awk '/ TestVM / {print $2}') --property hypervisor_type=qemu
-glance image-update $(glance image-list | awk '/ TestVM-VMDK / {print $2}') --property hypervisor_type=vmware
diff --git a/deployment_scripts/puppet/manifests/agents.pp b/deployment_scripts/puppet/manifests/agents.pp
index 5e2f516..53c8aff 100644
--- a/deployment_scripts/puppet/manifests/agents.pp
+++ b/deployment_scripts/puppet/manifests/agents.pp
@@ -1,4 +1,4 @@
-# Copyright 2015 Mirantis, Inc.
+# Copyright 2016 Mirantis, Inc.
#
# 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
@@ -12,7 +12,7 @@
# License for the specific language governing permissions and limitations
# under the License.
-notice('MODULAR: fuel-plugin-vmware-dvs/agent')
+notice('MODULAR: fuel-plugin-vmware-dvs/agents')
$vcenter = hiera_hash('vcenter', {})
$vmware_dvs = hiera_hash('fuel-plugin-vmware-dvs', {})
@@ -22,8 +22,7 @@ $roles = hiera_array('roles', {})
$agents = get_agents_data($vcenter, $neutron, $vmware_dvs, $n_fqdn, $roles)
$defaults = {
- 'neutron_url_timeout' => '3600',
- 'py_root' => '/usr/lib/python2.7/dist-packages',
+ 'py_root' => '/usr/lib/python2.7/dist-packages',
}
create_resources(vmware_dvs::agent, $agents, $defaults)
diff --git a/deployment_scripts/puppet/manifests/compute-vmware.pp b/deployment_scripts/puppet/manifests/compute-vmware.pp
index 3ba237b..40451ce 100644
--- a/deployment_scripts/puppet/manifests/compute-vmware.pp
+++ b/deployment_scripts/puppet/manifests/compute-vmware.pp
@@ -1,4 +1,4 @@
-# Copyright 2015 Mirantis, Inc.
+# Copyright 2016 Mirantis, Inc.
#
# 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
@@ -14,22 +14,21 @@
notice('MODULAR: fuel-plugin-vmware-dvs/compute-vmware')
-$neutron_config = hiera_hash('neutron_config')
-$nova_hash = hiera_hash('nova')
-
-$management_vip = hiera('management_vip')
-$service_endpoint = hiera('service_endpoint', $management_vip)
-$neutron_endpoint = hiera('neutron_endpoint', $management_vip)
-$admin_password = try_get_value($neutron_config, 'keystone/admin_password')
-$admin_tenant_name = try_get_value($neutron_config,
- 'keystone/admin_tenant', 'services')
-$admin_username = try_get_value($neutron_config,
- 'keystone/admin_user', 'neutron')
-$region_name = hiera('region', 'RegionOne')
-$auth_api_version = 'v3'
-$admin_identity_uri = "http://${service_endpoint}:35357"
-$admin_auth_url = "${admin_identity_uri}/${auth_api_version}"
-$neutron_url = "http://${neutron_endpoint}:9696"
+$neutron_config = hiera_hash('neutron_config')
+$management_vip = hiera('management_vip')
+$service_endpoint = hiera('service_endpoint', $management_vip)
+$neutron_endpoint = hiera('neutron_endpoint', $management_vip)
+$admin_password = try_get_value($neutron_config, 'keystone/admin_password')
+$admin_tenant_name = try_get_value($neutron_config,
+ 'keystone/admin_tenant', 'services')
+$admin_username = try_get_value($neutron_config,
+ 'keystone/admin_user', 'neutron')
+$region_name = hiera('region', 'RegionOne')
+$auth_api_version = 'v3'
+$admin_identity_uri = "http://${service_endpoint}:35357"
+$admin_auth_url = "${admin_identity_uri}/${auth_api_version}"
+$neutron_url = "http://${neutron_endpoint}:9696"
+$neutron_url_timeout = '3600'
class {'::vmware_dvs::compute':
admin_password => $admin_password,
@@ -38,5 +37,5 @@ class {'::vmware_dvs::compute':
admin_username => $admin_username,
admin_auth_url => $admin_auth_url,
neutron_url => $neutron_url,
- neutron_url_timeout => '3600',
+ neutron_url_timeout => $neutron_url_timeout,
}
diff --git a/deployment_scripts/puppet/manifests/controllers.pp b/deployment_scripts/puppet/manifests/controllers.pp
deleted file mode 100644
index 022de99..0000000
--- a/deployment_scripts/puppet/manifests/controllers.pp
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 2016 Mirantis, Inc.
-#
-# 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.
-
-notice('MODULAR: fuel-plugin-vmware-dvs/controllers')
-
-$py_root = '/usr/lib/python2.7/dist-packages'
-$ml2_driver_path = 'neutron/plugins/ml2/drivers/mech_vmware_dvs'
-$path = "${py_root}/${ml2_driver_path}"
-
-class {'::vmware_dvs::neutron_server':
- path => $path,
-}
diff --git a/deployment_scripts/puppet/manifests/flag.pp b/deployment_scripts/puppet/manifests/flag.pp
deleted file mode 100644
index 760de8a..0000000
--- a/deployment_scripts/puppet/manifests/flag.pp
+++ /dev/null
@@ -1 +0,0 @@
-notice('MODULAR: fuel-plugin-vmware-dvs')
diff --git a/deployment_scripts/puppet/manifests/override_hiera.pp b/deployment_scripts/puppet/manifests/override_hiera.pp
index b856301..5d30d7b 100644
--- a/deployment_scripts/puppet/manifests/override_hiera.pp
+++ b/deployment_scripts/puppet/manifests/override_hiera.pp
@@ -1,4 +1,4 @@
-notice('MODULAR: fuel-plugin-vmware-dvs/overrride_hiera')
+notice('MODULAR: fuel-plugin-vmware-dvs/override_hiera')
-$src = '/etc/hiera/override/plugins.yaml'
-$res = override_hiera($src)
+$src = '/etc/hiera/plugins/fuel-plugin-vmware-dvs.yaml'
+$res = override_hiera($src)
diff --git a/deployment_scripts/puppet/manifests/restart-nova-compute.pp b/deployment_scripts/puppet/manifests/restart-nova-compute.pp
deleted file mode 100644
index 3213918..0000000
--- a/deployment_scripts/puppet/manifests/restart-nova-compute.pp
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 2016 Mirantis, Inc.
-#
-# 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.
-
-notice('MODULAR: fuel-plugin-vmware-dvs/restart-nova-compute')
-
-$vcenter = hiera_hash('vcenter')
-$vc_setting = parse_vcenter_settings($vcenter['computes'])
-
-$defaults = {
- 'current_node' => hiera('fqdn'),
- 'role' => hiera('role'),
-}
-
-create_resources(vmware_dvs::ha_nova_restart, $vc_setting, $defaults)
diff --git a/deployment_scripts/puppet/manifests/site.pp b/deployment_scripts/puppet/manifests/site.pp
index dd148fb..a7a3eb2 100644
--- a/deployment_scripts/puppet/manifests/site.pp
+++ b/deployment_scripts/puppet/manifests/site.pp
@@ -1,4 +1,4 @@
-# Copyright 2015 Mirantis, Inc.
+# Copyright 2016 Mirantis, Inc.
#
# 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
@@ -11,23 +11,14 @@
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
+#
-notice('MODULAR: fuel-plugin-vmware-dvs')
+notice('MODULAR: fuel-plugin-vmware-dvs/site')
-$vcenter = hiera_hash('vcenter', {})
-$computes = $vcenter['computes'][0]
-$vsphere_hostname = $computes['vc_host']
-$vsphere_login = $computes['vc_user']
-$vsphere_password = $computes['vc_password']
-
-$neutron = hiera_hash('neutron_config', {})
$py_root = '/usr/lib/python2.7/dist-packages'
$ml2_plugin_path = 'neutron/cmd/eventlet/plugins/dvs_neutron_agent.py'
$plugin_path = "${py_root}/${ml2_plugin_path}"
class {'::vmware_dvs':
- vsphere_hostname => $vsphere_hostname,
- vsphere_login => $vsphere_login,
- vsphere_password => $vsphere_password,
- plugin_path => $plugin_path,
+ plugin_path => $plugin_path,
}
diff --git a/deployment_scripts/puppet/manifests/vmware-dvs-network-plugins-l2.pp b/deployment_scripts/puppet/manifests/vmware-dvs-network-plugins-l2.pp
index b6b4d70..a963807 100644
--- a/deployment_scripts/puppet/manifests/vmware-dvs-network-plugins-l2.pp
+++ b/deployment_scripts/puppet/manifests/vmware-dvs-network-plugins-l2.pp
@@ -1,4 +1,4 @@
-notice('MODULAR: fuel-plugin-vmware-dvs/plugins/ml2.pp')
+notice('MODULAR: fuel-plugin-vmware-dvs/vmware-dvs-network-plugins-l2')
class neutron {}
class { 'neutron' :}
diff --git a/deployment_scripts/puppet/modules/vmware_dvs/files/dvs_neutron_agent.py b/deployment_scripts/puppet/modules/vmware_dvs/files/dvs_neutron_agent.py
index 402b57f..120f078 100644
--- a/deployment_scripts/puppet/modules/vmware_dvs/files/dvs_neutron_agent.py
+++ b/deployment_scripts/puppet/modules/vmware_dvs/files/dvs_neutron_agent.py
@@ -1,4 +1,4 @@
-"""Copyright 2015 Mirantis, Inc.
+"""Copyright 2016 Mirantis, Inc.
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
diff --git a/deployment_scripts/puppet/modules/vmware_dvs/files/ocf-neutron-dvs-agent b/deployment_scripts/puppet/modules/vmware_dvs/files/ocf-neutron-dvs-agent
index 244e9b3..c6092d6 100755
--- a/deployment_scripts/puppet/modules/vmware_dvs/files/ocf-neutron-dvs-agent
+++ b/deployment_scripts/puppet/modules/vmware_dvs/files/ocf-neutron-dvs-agent
@@ -17,7 +17,6 @@
# OCF instance parameters:
# OCF_RESKEY_binary
# OCF_RESKEY_config
-# OCF_RESKEY_plugin_config
# OCF_RESKEY_user
# OCF_RESKEY_pid
# OCF_RESKEY_additional_parameters
@@ -35,7 +34,6 @@
OCF_RESKEY_binary_default="neutron-dvs-agent"
OCF_RESKEY_config_default="/etc/neutron/neutron.conf"
-OCF_RESKEY_plugin_config_default="/etc/neutron/plugin.ini"
OCF_RESKEY_user_default="neutron"
OCF_RESKEY_pid_default="${HA_RSCTMP}/${__SCRIPT_NAME}/${__SCRIPT_NAME}.pid"
OCF_RESKEY_log_file_default="/var/log/neutron/vmware-dvs-agent-vcenter-sn.log"
@@ -45,7 +43,6 @@ OCF_RESKEY_debug_default='false'
: ${HA_LOGFACILITY="daemon"}
: ${OCF_RESKEY_binary=${OCF_RESKEY_binary_default}}
: ${OCF_RESKEY_config=${OCF_RESKEY_config_default}}
-: ${OCF_RESKEY_plugin_config=${OCF_RESKEY_plugin_config_default}}
: ${OCF_RESKEY_user=${OCF_RESKEY_user_default}}
: ${OCF_RESKEY_pid=${OCF_RESKEY_pid_default}}
: ${OCF_RESKEY_log_file=${OCF_RESKEY_log_file_default}}
@@ -100,14 +97,6 @@ Location of the OpenStack Neutron Service (neutron-server) configuration file
-
-
-Location of the OpenStack VMware DVS agent (${OCF_RESKEY_binary}) configuration file
-
-OpenStack VMware DVS agent (${OCF_RESKEY_binary}) config file
-
-
-
User running OpenStack VMware DVS Service (${OCF_RESKEY_binary})
@@ -250,7 +239,7 @@ neutron_dvs_agent_start() {
# run and detach to background neutron-dvs-agent as daemon.
# Don't use ocf_run as we're sending the tool's output
su ${OCF_RESKEY_user} -s /bin/sh -c "${OCF_RESKEY_binary} --config-file=$OCF_RESKEY_config \
- --config-file=$OCF_RESKEY_plugin_config --log-file=$OCF_RESKEY_log_file $OCF_RESKEY_additional_parameters \
+ --log-file=$OCF_RESKEY_log_file $OCF_RESKEY_additional_parameters \
>> /dev/null"' 2>&1 & echo $! > $OCF_RESKEY_pid'
ocf_log debug "Create pid file: ${OCF_RESKEY_pid} with content $(cat ${OCF_RESKEY_pid})"
diff --git a/deployment_scripts/puppet/modules/vmware_dvs/manifests/agent.pp b/deployment_scripts/puppet/modules/vmware_dvs/manifests/agent.pp
index ea55424..b4045cf 100644
--- a/deployment_scripts/puppet/modules/vmware_dvs/manifests/agent.pp
+++ b/deployment_scripts/puppet/modules/vmware_dvs/manifests/agent.pp
@@ -1,4 +1,4 @@
-# Copyright 2015 Mirantis, Inc.
+# Copyright 2016 Mirantis, Inc.
#
# 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
@@ -11,25 +11,29 @@
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
-
+#
# === Parameters
#
# [*host*]
# (required) String. The host parameter for nova-compute process
+# Defaults to 'vcenter-servicename'.
#
# [*vsphere_hostname*]
# (required) String. This is a name or ip of VMware vSphere server.
+# Defaults to '192.168.0.1'.
#
# [*vsphere_login*]
# (required) String. This is a name of VMware vSphere user.
+# Defaults to 'administrator@vsphere.local'.
#
# [*vsphere_password*]
# (required) String. This is a password of VMware vSphere user.
+# Defaults to 'StrongPassword!'.
#
# [*vsphere_insecure*]
# (optional) If true, the ESX/vCenter server certificate is not verified.
# If false, then the default CA truststore is used for verification.
-# Defaults to 'True'.
+# Defaults to 'true'.
#
# [*vsphere_ca_file*]
# (optional) The hash name of the CA bundle file and data in format of:
@@ -39,23 +43,24 @@
#
# [*network_maps*]
# (required) String. This is a name of DVS.
-#
-# [*neutron_url_timeout*]
-# (required) String. This is the timeout for neutron.
+# Defaults to 'physnet1:dvSwitch1'.
#
# [*use_fw_driver*]
# (optional) Boolean. Use firewall driver or mock.
+# Defaults to true.
#
# [*py_root*]
# (optional) String. Path for python's dist-packages.
+# Defaults to '/usr/lib/python2.7/dist-packages'
#
# [*ha_enabled*]
# (optional) Boolean. True for Corosync using.
+# Defaults to true.
#
# [*primary*]
# (optional) Boolean. Parameter for using that cs_service.
-
-
+# Defaults to false.
+#
define vmware_dvs::agent(
$host = 'vcenter-servicename',
$vsphere_hostname = '192.168.0.1',
@@ -65,29 +70,25 @@ define vmware_dvs::agent(
$vsphere_ca_file = undef,
$network_maps = 'physnet1:dvSwitch1',
$use_fw_driver = true,
- $neutron_url_timeout = '3600',
$py_root = '/usr/lib/python2.7/dist-packages',
$ha_enabled = true,
$primary = false,
)
{
- $neutron_conf = '/etc/neutron/neutron.conf'
- $ml2_conf = '/etc/neutron/plugin.ini'
- $ocf_dvs_name = 'ocf-neutron-dvs-agent'
- $ocf_dvs_res = "/usr/lib/ocf/resource.d/fuel/${ocf_dvs_name}"
- $agent_config = "/etc/neutron/plugins/ml2/vmware_dvs-${host}.ini"
- $agent_name = "neutron-plugin-vmware-dvs-agent-${host}"
- $agent_init = "/etc/init/${agent_name}.conf"
- $agent_initd = "/etc/init.d/${agent_name}"
- $agent_log = "/var/log/neutron/vmware-dvs-agent-${host}.log"
- $ocf_pid_dir = '/var/run/resource-agents/ocf-neutron-dvs-agent'
- $ocf_pid = "${ocf_pid_dir}/${agent_name}.pid"
-
+ $neutron_conf = '/etc/neutron/neutron.conf'
+ $ocf_dvs_name = 'ocf-neutron-dvs-agent'
+ $ocf_dvs_res = "/usr/lib/ocf/resource.d/fuel/${ocf_dvs_name}"
+ $agent_config = "/etc/neutron/plugins/ml2/vmware_dvs-${host}.ini"
+ $agent_name = "neutron-plugin-vmware-dvs-agent-${host}"
+ $agent_init = "/etc/init/${agent_name}.conf"
+ $agent_initd = "/etc/init.d/${agent_name}"
+ $agent_log = "/var/log/neutron/vmware-dvs-agent-${host}.log"
+ $ocf_pid_dir = '/var/run/resource-agents/ocf-neutron-dvs-agent'
+ $ocf_pid = "${ocf_pid_dir}/${agent_name}.pid"
$vcenter_ca_file = pick($vsphere_ca_file, {})
$vcenter_ca_content = pick($vcenter_ca_file['content'], {})
$vcenter_ca_filepath = "/etc/neutron/vmware-${host}-ca.pem"
-
if $use_fw_driver {
$fw_driver = 'networking_vsphere.agent.firewalls.vcenter_firewall.DVSFirewallDriver'
}
@@ -95,11 +96,6 @@ define vmware_dvs::agent(
$fw_driver = 'networking_vsphere.agent.firewalls.noop_firewall.NoopvCenterFirewallDriver'
}
-
- if ! defined(Nova_config['neutron/url_timeout']) {
- nova_config {'neutron/url_timeout': value => $neutron_url_timeout}
- }
-
if ! defined(File["${py_root}/nova.patch"]) {
file {"${py_root}/nova.patch":
source => 'puppet:///modules/vmware_dvs/nova.patch',
@@ -169,7 +165,6 @@ define vmware_dvs::agent(
'resource-stickiness' => '1'
}
$parameters = {
- 'plugin_config' => $ml2_conf,
'additional_parameters' => "--config-file=${agent_config}",
'log_file' => $agent_log,
'pid' => $ocf_pid,
diff --git a/deployment_scripts/puppet/modules/vmware_dvs/manifests/compute.pp b/deployment_scripts/puppet/modules/vmware_dvs/manifests/compute.pp
index a620da3..bec5c41 100644
--- a/deployment_scripts/puppet/modules/vmware_dvs/manifests/compute.pp
+++ b/deployment_scripts/puppet/modules/vmware_dvs/manifests/compute.pp
@@ -34,8 +34,9 @@
#
# [*neutron_url_timeout*]
# (optional) String.
+# Defaults to '3600'.
+#
#
-
class vmware_dvs::compute(
$admin_password,
$admin_tenant_name,
@@ -77,10 +78,4 @@ class vmware_dvs::compute(
}
Nova_config<| |> ~> Service['nova-compute']
- if($::operatingsystem == 'Ubuntu') {
- tweaks::ubuntu_service_override { 'nova-network':
- package_name => 'nova-network',
- }
- }
-
}
diff --git a/deployment_scripts/puppet/modules/vmware_dvs/manifests/ha_nova_restart.pp b/deployment_scripts/puppet/modules/vmware_dvs/manifests/ha_nova_restart.pp
deleted file mode 100644
index 1cd3433..0000000
--- a/deployment_scripts/puppet/modules/vmware_dvs/manifests/ha_nova_restart.pp
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 2016 Mirantis, Inc.
-#
-# 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.
-
-define vmware_dvs::ha_nova_restart(
- $availability_zone_name,
- $vc_cluster,
- $vc_host,
- $vc_user,
- $vc_password,
- $service_name,
- $current_node,
- $target_node,
- $role,
- $datastore_regex = undef,
- $api_retry_count = 5,
- $maximum_objects = 100,
- $nova_compute_conf = '/etc/nova/nova-compute.conf',
- $task_poll_interval = 5.0,
- $use_linked_clone = true,
- $wsdl_location = undef,
- $service_enabled = false,
-)
-{
- if $target_node =~ /controller/ and $role =~ /controller/ {
-
- $res = "p_nova_compute_vmware_${availability_zone_name}-${service_name}"
- exec {$res:
- path => '/usr/bin:/usr/sbin:/bin:/sbin',
- command => "crm resource restart ${res}",
- }
- }
-
- if $target_node in $current_node {
- exec { 'nova-compute-restart':
- path => '/usr/bin:/usr/sbin:/bin:/sbin',
- command => 'service nova-compute restart',
- }
- }
-
-}
diff --git a/deployment_scripts/puppet/modules/vmware_dvs/manifests/init.pp b/deployment_scripts/puppet/modules/vmware_dvs/manifests/init.pp
index 45677fc..921020d 100644
--- a/deployment_scripts/puppet/modules/vmware_dvs/manifests/init.pp
+++ b/deployment_scripts/puppet/modules/vmware_dvs/manifests/init.pp
@@ -1,4 +1,4 @@
-# Copyright 2015 Mirantis, Inc.
+# Copyright 2016 Mirantis, Inc.
#
# 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
@@ -11,36 +11,19 @@
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
-
+#
# == Class: ::vmware_dvs
#
-# install the vmware_dvs neutron ml2 driver and configure the neutron for it
+# Install the vmware_dvs neutron ml2 driver and configure the neutron for it.
#
# === Parameters
#
-# [*vsphere_hostname*]
-# (required) String. This is a name or ip of VMware vSphere server.
-#
-# [*vsphere_login*]
-# (required) String. This is a name of VMware vSphere user.
-#
-# [*vsphere_password*]
-# (required) String. This is a password of VMware vSphere user.
-#
-# [*network_maps*]
-# (required) String. This is a name of DVS.
-#
-# [*driver_path*]
-# (required) String. This is the ml2 driver's path.
-#
# [*plugin_path*]
# (required) String. This is the ml2 plugin's path.
-
+# Defaults to 'neutron/cmd/eventlet/plugins/dvs_neutron_agent.py'.
+#
class vmware_dvs(
- $vsphere_hostname = '192.168.0.1',
- $vsphere_login = 'administrator@vsphere.loc',
- $vsphere_password = 'StrongPassword!',
- $plugin_path = 'neutron/cmd/eventlet/plugins/dvs_neutron_agent.py',
+ $plugin_path = 'neutron/cmd/eventlet/plugins/dvs_neutron_agent.py',
)
{
package { ['python-suds','python-networking-vsphere']:
@@ -55,16 +38,9 @@ class vmware_dvs(
path => $plugin_path,
source => 'puppet:///modules/vmware_dvs/dvs_neutron_agent.py',
}
+
neutron_config {
'oslo_messaging_notifications/driver': value => 'messagingv2';
}
- neutron_plugin_ml2 {
- 'ml2_vmware/vsphere_hostname': value => $vsphere_hostname;
- 'ml2_vmware/vsphere_login': value => $vsphere_login;
- 'ml2_vmware/vsphere_password': value => $vsphere_password;
- }
- file {'/etc/neutron/plugin.ini':
- ensure => 'link',
- target => '/etc/neutron/plugins/ml2/ml2_conf.ini',
- }
+
}
diff --git a/deployment_scripts/puppet/modules/vmware_dvs/manifests/l2.pp b/deployment_scripts/puppet/modules/vmware_dvs/manifests/l2.pp
index 9616a59..fdadb64 100644
--- a/deployment_scripts/puppet/modules/vmware_dvs/manifests/l2.pp
+++ b/deployment_scripts/puppet/modules/vmware_dvs/manifests/l2.pp
@@ -19,9 +19,9 @@ class vmware_dvs::l2 {
$primary_controller = roles_include($neutron_primary_controller_roles)
$compute = roles_include($neutron_compute_roles)
- $neutron_config = hiera_hash('neutron_config')
+ $neutron_config = hiera_hash('neutron_config')
$neutron_server_enable = pick($neutron_config['neutron_server_enable'], true)
- $neutron_nodes = hiera_hash('neutron_nodes')
+ $neutron_nodes = hiera_hash('neutron_nodes')
$dpdk_config = hiera_hash('dpdk', {})
$enable_dpdk = pick($dpdk_config['enabled'], false)
@@ -45,10 +45,10 @@ class vmware_dvs::l2 {
prepare_network_config($network_scheme)
$neutron_advanced_config = hiera_hash('neutron_advanced_configuration', { })
- $l2_population = try_get_value($neutron_advanced_config, 'neutron_l2_pop', false)
- $dvr = try_get_value($neutron_advanced_config, 'neutron_dvr', false)
- $enable_qos = pick($neutron_advanced_config['neutron_qos'], false)
- $segmentation_type = try_get_value($neutron_config, 'L2/segmentation_type')
+ $l2_population = try_get_value($neutron_advanced_config, 'neutron_l2_pop', false)
+ $dvr = try_get_value($neutron_advanced_config, 'neutron_dvr', false)
+ $enable_qos = pick($neutron_advanced_config['neutron_qos'], false)
+ $segmentation_type = try_get_value($neutron_config, 'L2/segmentation_type')
if $compute and ! $dvr {
$do_floating = false
@@ -69,11 +69,11 @@ class vmware_dvs::l2 {
})
if $segmentation_type == 'vlan' {
- $net_role_property = 'neutron/private'
- $iface = get_network_role_property($net_role_property, 'phys_dev')
- $enable_tunneling = false
- $network_type = 'vlan'
- $tunnel_types = []
+ $net_role_property = 'neutron/private'
+ $iface = get_network_role_property($net_role_property, 'phys_dev')
+ $enable_tunneling = false
+ $network_type = 'vlan'
+ $tunnel_types = []
} else {
$net_role_property = 'neutron/mesh'
$tunneling_ip = get_network_role_property($net_role_property, 'ipaddr')
@@ -81,11 +81,11 @@ class vmware_dvs::l2 {
$physical_net_mtu = pick(get_transformation_property('mtu', $iface[0]), '1500')
if $segmentation_type == 'gre' {
- $mtu_offset = '42'
+ $mtu_offset = '42'
$network_type = 'gre'
} else {
# vxlan is the default segmentation type for non-vlan cases
- $mtu_offset = '50'
+ $mtu_offset = '50'
$network_type = 'vxlan'
}
$tunnel_types = [$network_type]
@@ -137,9 +137,9 @@ class vmware_dvs::l2 {
}
service { 'neutron-server':
+ ensure => $service_ensure,
name => $::neutron::params::server_service,
enable => $neutron_server_enable,
- ensure => $service_ensure,
hasstatus => true,
hasrestart => true,
tag => 'neutron-service',
@@ -174,8 +174,8 @@ class vmware_dvs::l2 {
# Stub for upstream neutron manifests
package { 'neutron':
- name => 'binutils',
ensure => 'installed',
+ name => 'binutils',
}
}
diff --git a/deployment_scripts/puppet/modules/vmware_dvs/manifests/neutron_server.pp b/deployment_scripts/puppet/modules/vmware_dvs/manifests/neutron_server.pp
deleted file mode 100644
index c8914e3..0000000
--- a/deployment_scripts/puppet/modules/vmware_dvs/manifests/neutron_server.pp
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 2016 Mirantis, Inc.
-#
-# 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.
-
-# === Parameters
-#
-# [*path*]
-# (required) String. The path to the mech_vmware_dvs ml2 driver.
-#
-
-class vmware_dvs::neutron_server(
- $path = 'filepath',
-)
-{
- service { 'neutron-server':
- ensure => running,
- enable => true,
- subscribe => File[$path],
- }
-
- file_line { 'neutron_timeout':
- path => '/etc/haproxy/conf.d/085-neutron.cfg',
- line => ' timeout server 1h',
- after => 'listen neutron',
- }
-
- service {'haproxy':
- ensure => running,
- hasrestart => true,
- restart => '/sbin/ip netns exec haproxy service haproxy reload',
- subscribe => File_Line['neutron_timeout'],
- }
-}
diff --git a/deployment_scripts/puppet/modules/vmware_dvs/templates/agent_config.erb b/deployment_scripts/puppet/modules/vmware_dvs/templates/agent_config.erb
index 9b3b07d..2e9f095 100644
--- a/deployment_scripts/puppet/modules/vmware_dvs/templates/agent_config.erb
+++ b/deployment_scripts/puppet/modules/vmware_dvs/templates/agent_config.erb
@@ -2,7 +2,7 @@
host=<%= @host %>
[securitygroup]
-enable_security_group = <%= @use_fw_driver %>
+enable_security_group=<%= @use_fw_driver %>
firewall_driver=<%= @fw_driver %>
[ml2_vmware]
diff --git a/deployment_scripts/puppet/modules/vmware_dvs/templates/agent_init.d.erb b/deployment_scripts/puppet/modules/vmware_dvs/templates/agent_init.d.erb
index 6413a7d..b8de0d5 100644
--- a/deployment_scripts/puppet/modules/vmware_dvs/templates/agent_init.d.erb
+++ b/deployment_scripts/puppet/modules/vmware_dvs/templates/agent_init.d.erb
@@ -8,18 +8,18 @@
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Neutron VMware DVS Agent
-# Description: Agent to use within neutron vmware dvs driver
+# Description: Agent to use within Neutron VMware DVS driver
### END INIT INFO
# Authors: Igor Gajsin
DESC="Openstack Neutron VMware DVS Plugin Agent"
PROJECT_NAME=neutron
-NAME=${PROJECT_NAME}-vmware-dvs-agent
+NAME=<%= @agent_name %>
CONFIG_FILE=<%= @agent_config %>
DAEMON=/usr/bin/neutron-dvs-agent
-DAEMON_ARGS="--config-file=/etc/neutron/neutron.conf --config-file=/etc/neutron/plugins/ml2/ml2_conf.ini"
+DAEMON_ARGS="--config-file=/etc/neutron/neutron.conf"
#!/bin/sh
# The content after this line comes from openstack-pkg-tools
# and has been automatically added to a .init.in script, which
@@ -41,7 +41,7 @@ fi
if [ -z "${SYSTEM_USER}" ] ; then
SYSTEM_USER=${PROJECT_NAME}
fi
-if [ -z "${SYSTEM_USER}" ] ; then
+if [ -z "${SYSTEM_GROUP}" ] ; then
SYSTEM_GROUP=${PROJECT_NAME}
fi
if [ "${SYSTEM_USER}" != "root" ] ; then
@@ -60,10 +60,10 @@ fi
# If ran as root, create /var/lock/X, /var/run/X, /var/lib/X and /var/log/X as needed
if [ `whoami` = "root" ] ; then
- for i in lock run log lib ; do
- mkdir -p /var/$i/${PROJECT_NAME}
- chown ${SYSTEM_USER} /var/$i/${PROJECT_NAME}
- done
+ for i in lock run log lib ; do
+ mkdir -p /var/$i/${PROJECT_NAME}
+ chown ${SYSTEM_USER} /var/$i/${PROJECT_NAME}
+ done
fi
# This defines init_is_upstart which we use later on (+ more...)
@@ -73,7 +73,9 @@ fi
[ -r /etc/default/openstack ] && . /etc/default/openstack
[ -r /etc/default/$NAME ] && . /etc/default/$NAME
[ "x$USE_SYSLOG" = "xyes" ] && DAEMON_ARGS="$DAEMON_ARGS --use-syslog"
-[ "x$USE_LOGFILE" != "xno" ] && DAEMON_ARGS="$DAEMON_ARGS --log-file=$LOGFILE"
+if [ -z "${NO_OPENSTACK_LOGFILE_DAEMON_ARG}" ] ; then
+ [ "x$USE_LOGFILE" != "xno" ] && DAEMON_ARGS="$DAEMON_ARGS --log-file=$LOGFILE"
+fi
do_start() {
start-stop-daemon --start --quiet --background ${STARTDAEMON_CHUID} --make-pidfile --pidfile ${PIDFILE} --chdir /var/lib/${PROJECT_NAME} --startas $DAEMON \
@@ -95,48 +97,48 @@ do_systemd_start() {
case "$1" in
start)
- init_is_upstart > /dev/null 2>&1 && exit 1
- log_daemon_msg "Starting $DESC" "$NAME"
- do_start
- case $? in
- 0|1) log_end_msg 0 ;;
- 2) log_end_msg 1 ;;
- esac
+ init_is_upstart > /dev/null 2>&1 && exit 1
+ log_daemon_msg "Starting $DESC" "$NAME"
+ do_start
+ case $? in
+ 0|1) log_end_msg 0 ;;
+ 2) log_end_msg 1 ;;
+ esac
;;
stop)
- init_is_upstart > /dev/null 2>&1 && exit 0
- log_daemon_msg "Stopping $DESC" "$NAME"
- do_stop
- case $? in
- 0|1) log_end_msg 0 ;;
- 2) log_end_msg 1 ;;
- esac
+ init_is_upstart > /dev/null 2>&1 && exit 0
+ log_daemon_msg "Stopping $DESC" "$NAME"
+ do_stop
+ case $? in
+ 0|1) log_end_msg 0 ;;
+ 2) log_end_msg 1 ;;
+ esac
;;
status)
- status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $?
+ status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $?
;;
systemd-start)
- do_systemd_start
+ do_systemd_start
;;
restart|force-reload)
- init_is_upstart > /dev/null 2>&1 && exit 1
- log_daemon_msg "Restarting $DESC" "$NAME"
- do_stop
- case $? in
- 0|1)
- do_start
- case $? in
- 0) log_end_msg 0 ;;
- 1) log_end_msg 1 ;; # Old process is still running
- *) log_end_msg 1 ;; # Failed to start
- esac
- ;;
- *) log_end_msg 1 ;; # Failed to stop
- esac
+ init_is_upstart > /dev/null 2>&1 && exit 1
+ log_daemon_msg "Restarting $DESC" "$NAME"
+ do_stop
+ case $? in
+ 0|1)
+ do_start
+ case $? in
+ 0) log_end_msg 0 ;;
+ 1) log_end_msg 1 ;; # Old process is still running
+ *) log_end_msg 1 ;; # Failed to start
+ esac
+ ;;
+ *) log_end_msg 1 ;; # Failed to stop
+ esac
;;
*)
- echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload|systemd-start}" >&2
- exit 3
+ echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload|systemd-start}" >&2
+ exit 3
;;
esac
diff --git a/deployment_scripts/puppet/modules/vmware_dvs/templates/agent_init.erb b/deployment_scripts/puppet/modules/vmware_dvs/templates/agent_init.erb
index cbb8127..5996679 100644
--- a/deployment_scripts/puppet/modules/vmware_dvs/templates/agent_init.erb
+++ b/deployment_scripts/puppet/modules/vmware_dvs/templates/agent_init.erb
@@ -1,8 +1,8 @@
-description "Neutron vmware dvs plugin agent"
+description "Neutron VMware DVS plugin agent"
author "Igor Gajsin "
start on runlevel [2345]
-stop on runlevel [016]
+stop on runlevel [!2345]
chdir /var/run
@@ -11,32 +11,33 @@ respawn limit 20 5
limit nofile 65535 65535
pre-start script
- mkdir -p /var/run/neutron
- chown neutron:root /var/run/neutron
+ for i in lock run log lib ; do
+ mkdir -p /var/$i/neutron
+ chown neutron /var/$i/neutron
+ done
end script
script
- [ -r /usr/share/neutron-common/plugin_guess_func ] || exit 0
- . /usr/share/neutron-common/plugin_guess_func
-
- if ! [ -r /etc/neutron/neutron.conf ] ; then
- echo "Cloud not read /etc/neutron/neutron.conf: exiting"
- exit 0
- fi
- CURRENT_PLUGIN=`grep "^[ \t]*core_plugin[ \t]*=[ \t]*[._a-zA-Z0-9]*\$" /etc/neutron/neutron.conf | sed -e 's/^[ \t]*core_plugin[ \t]*=[ \t]*//'`
- if [ -z "${CURRENT_PLUGIN}" ] ; then
- echo "No core_plugin= value found: please set it and try again"
- exit 0
- fi
-
- neutron_core_plugin_to_plugin_name ${CURRENT_PLUGIN}
- neutron_plugin_ini_path ${NEUTRON_PLUGIN_NAME}
- [ -r "$NEUTRON_PLUGIN_CONFIG" ] && CONF_ARG="--config-file $NEUTRON_PLUGIN_CONFIG --config-file <%= @agent_config %>"
+ [ -x "/usr/bin/neutron-dvs-agent" ] || {
+ echo "$UPSTART_JOB" "ERROR: /usr/bin/neutron-dvs-agent not exists : exiting";
+ exit 0;
+ }
+ [ -r /etc/neutron/neutron.conf ] || {
+ echo "$UPSTART_JOB" "ERROR: Cloud not read /etc/neutron/neutron.conf: exiting";
+ exit 0;
+ }
+ DAEMON_ARGS="--config-file=/etc/neutron/neutron.conf"
+ CONFIG_FILE="<%= @agent_config %>"
+ USE_SYSLOG=""
+ USE_LOGFILE=""
+ NO_OPENSTACK_CONFIG_FILE_DAEMON_ARG=""
[ -r /etc/default/openstack ] && . /etc/default/openstack
[ -r /etc/default/$UPSTART_JOB ] && . /etc/default/$UPSTART_JOB
-
[ "x$USE_SYSLOG" = "xyes" ] && DAEMON_ARGS="$DAEMON_ARGS --use-syslog"
[ "x$USE_LOGFILE" != "xno" ] && DAEMON_ARGS="$DAEMON_ARGS --log-file=<%= @agent_log %>"
- exec start-stop-daemon --start --chuid neutron:neutron --exec /usr/bin/neutron-dvs-agent -- \
- --config-file=/etc/neutron/neutron.conf $CONF_ARG $DAEMON_ARGS
+ [ -z "$NO_OPENSTACK_CONFIG_FILE_DAEMON_ARG" ] && DAEMON_ARGS="$DAEMON_ARGS --config-file=$CONFIG_FILE"
+
+ exec start-stop-daemon --start --chdir /var/lib/neutron \
+ --chuid neutron:neutron --make-pidfile --pidfile /var/run/neutron/$UPSTART_JOB.pid \
+ --exec /usr/bin/neutron-dvs-agent -- ${DAEMON_ARGS}
end script
diff --git a/deployment_tasks.yaml b/deployment_tasks.yaml
index 73d4e4e..f0368b3 100644
--- a/deployment_tasks.yaml
+++ b/deployment_tasks.yaml
@@ -44,7 +44,7 @@
- id: vmware-dvs-set-neutron-timeout
version: 2.1.0
groups: ['primary-controller','controller']
- required_for: [deploy_end]
+ required_for: [vmware-vcenter]
requires: [openstack-network-server-nova]
type: puppet
parameters: