refactoring manifests
Do it more granular and clear. Remove useless and redundant things. Add new task. Change-Id: I0c218cf373f2d85dd3e57533d3780036312d4aae
This commit is contained in:
parent
4ed6126c1d
commit
5d53a641f6
|
@ -12,11 +12,18 @@
|
|||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
notice('MODULAR: vmware_dvs agent install')
|
||||
notice('MODULAR: fuel-plugin-vmware-dvs/agent')
|
||||
|
||||
$vcenter = hiera('vcenter', {})
|
||||
$vmware_dvs = hiera_hash('fuel-plugin-vmware-dvs', {})
|
||||
$neutron = hiera_hash('neutron_config', {})
|
||||
$agents = get_agents_data($vcenter, $neutron, $vmware_dvs)
|
||||
$vcenter = hiera('vcenter', {})
|
||||
$vmware_dvs = hiera_hash('fuel-plugin-vmware-dvs', {})
|
||||
$neutron = hiera_hash('neutron_config', {})
|
||||
$n_fqdn = hiera('fqdn')
|
||||
$roles = hiera_array('roles', {})
|
||||
$agents = get_agents_data($vcenter, $neutron, $vmware_dvs, $n_fqdn, $roles)
|
||||
|
||||
create_resources(vmware_dvs::agent, $agents)
|
||||
$defaults = {
|
||||
'neutron_url_timeout' => '3600',
|
||||
'py_root' => '/usr/lib/python2.7/dist-packages',
|
||||
}
|
||||
|
||||
create_resources(vmware_dvs::agent, $agents, $defaults)
|
||||
|
|
|
@ -1,9 +1,21 @@
|
|||
# Copyright 2015 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/compute-vmware')
|
||||
|
||||
include nova::params
|
||||
|
||||
$neutron_config = hiera_hash('neutron_config')
|
||||
$nova_hash = hiera_hash('nova')
|
||||
$neutron_config = hiera_hash('neutron_config')
|
||||
$nova_hash = hiera_hash('nova')
|
||||
|
||||
$management_vip = hiera('management_vip')
|
||||
$service_endpoint = hiera('service_endpoint', $management_vip)
|
||||
|
@ -19,47 +31,12 @@ $admin_identity_uri = "http://${service_endpoint}:35357"
|
|||
$admin_auth_url = "${admin_identity_uri}/${auth_api_version}"
|
||||
$neutron_url = "http://${neutron_endpoint}:9696"
|
||||
|
||||
class {'nova::network::neutron':
|
||||
neutron_admin_password => $admin_password,
|
||||
neutron_admin_tenant_name => $admin_tenant_name,
|
||||
neutron_region_name => $region_name,
|
||||
neutron_admin_username => $admin_username,
|
||||
neutron_admin_auth_url => $admin_auth_url,
|
||||
neutron_url => $neutron_url,
|
||||
}
|
||||
|
||||
file {'/usr/lib/python2.7/dist-packages/nova.patch':
|
||||
source => 'puppet:///modules/vmware_dvs/nova.patch',
|
||||
notify => Exec['apply-nova-patch'],
|
||||
}
|
||||
exec {'apply-nova-patch':
|
||||
path => '/usr/bin:/usr/sbin:/bin',
|
||||
command => 'patch -d /usr/lib/python2.7/dist-packages -N -p1
|
||||
< /usr/lib/python2.7/dist-packages/nova.patch',
|
||||
refreshonly => true,
|
||||
}
|
||||
|
||||
augeas { 'sysctl-net.bridge.bridge-nf-call-arptables':
|
||||
context => '/files/etc/sysctl.conf',
|
||||
changes => "set net.bridge.bridge-nf-call-arptables '1'",
|
||||
}
|
||||
augeas { 'sysctl-net.bridge.bridge-nf-call-iptables':
|
||||
context => '/files/etc/sysctl.conf',
|
||||
changes => "set net.bridge.bridge-nf-call-iptables '1'",
|
||||
}
|
||||
augeas { 'sysctl-net.bridge.bridge-nf-call-ip6tables':
|
||||
context => '/files/etc/sysctl.conf',
|
||||
changes => "set net.bridge.bridge-nf-call-ip6tables '1'",
|
||||
}
|
||||
|
||||
service { 'nova-compute':
|
||||
ensure => 'running',
|
||||
name => $::nova::params::compute_service_name,
|
||||
}
|
||||
Nova_config<| |> ~> Service['nova-compute']
|
||||
|
||||
if($::operatingsystem == 'Ubuntu') {
|
||||
tweaks::ubuntu_service_override { 'nova-network':
|
||||
package_name => 'nova-network',
|
||||
}
|
||||
class {'::vmware_dvs::compute':
|
||||
admin_password => $admin_password,
|
||||
admin_tenant_name => $admin_tenant_name,
|
||||
region_name => $region_name,
|
||||
admin_username => $admin_username,
|
||||
admin_auth_url => $admin_auth_url,
|
||||
neutron_url => $neutron_url,
|
||||
neutron_url_timeout => '3600',
|
||||
}
|
||||
|
|
|
@ -0,0 +1,23 @@
|
|||
# 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,
|
||||
}
|
|
@ -1,3 +1,4 @@
|
|||
notice('MODULAR: vmware_dvs overrride hiera task')
|
||||
notice('MODULAR: fuel-plugin-vmware-dvs/overrride_hiera')
|
||||
|
||||
$src = '/etc/hiera/override/plugins.yaml'
|
||||
$res = override_hiera($src)
|
||||
|
|
|
@ -0,0 +1,17 @@
|
|||
# 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/set-neutron-timeout')
|
||||
|
||||
nova_config { 'neutron/timeout': value => '3600'}
|
|
@ -14,18 +14,30 @@
|
|||
|
||||
notice('MODULAR: fuel-plugin-vmware-dvs')
|
||||
|
||||
$vcenter = hiera('vcenter', {})
|
||||
$vmware_dvs = hiera_hash('fuel-plugin-vmware-dvs', {})
|
||||
$neutron = hiera_hash('neutron_config', {})
|
||||
$vcenter = hiera_hash('vcenter', {})
|
||||
$computes = $vcenter['computes'][0]
|
||||
$vsphere_hostname = $computes['vc_host']
|
||||
$vsphere_login = $computes['vc_user']
|
||||
$vsphere_password = $computes['vc_password']
|
||||
|
||||
$agents = get_agents_data($vcenter, $neutron, $vmware_dvs)
|
||||
$agents_arr = values($agents)
|
||||
$vc_creds = $agents_arr[1]
|
||||
$neutron = hiera_hash('neutron_config', {})
|
||||
$physnet = $neutron["predefined_networks"]["admin_internal_net"]["L2"]["physnet"]
|
||||
|
||||
$vmware_dvs = hiera_hash('fuel-plugin-vmware-dvs', {})
|
||||
$vds = $vmware_dvs['vmware_dvs_net_maps']
|
||||
$network_maps = "${physnet}:${vds}"
|
||||
|
||||
$py_root = '/usr/lib/python2.7/dist-packages'
|
||||
$ml2_driver_path = 'neutron/plugins/ml2/drivers/mech_vmware_dvs'
|
||||
$ml2_plugin_path = 'neutron/cmd/eventlet/plugins/dvs_neutron_agent.py'
|
||||
$driver_path = "${py_root}/${ml2_driver_path}"
|
||||
$plugin_path = "${py_root}/${ml2_plugin_path}"
|
||||
|
||||
class {'::vmware_dvs':
|
||||
vsphere_hostname => $vc_creds['vsphere_hostname'],
|
||||
vsphere_login => $vc_creds['vsphere_login'],
|
||||
vsphere_password => $vc_creds['vsphere_password'],
|
||||
network_maps => $vc_creds['network_maps'],
|
||||
neutron_url_timeout => '3600',
|
||||
vsphere_hostname => $vsphere_hostname,
|
||||
vsphere_login => $vsphere_login,
|
||||
vsphere_password => $vsphere_password,
|
||||
network_maps => $network_maps,
|
||||
driver_path => $driver_path,
|
||||
plugin_path => $plugin_path,
|
||||
}
|
||||
|
|
|
@ -1,22 +1,26 @@
|
|||
module Puppet::Parser::Functions
|
||||
module Puppet::Parser::Functions
|
||||
newfunction(:get_agents_data, :type => :rvalue,
|
||||
:doc => <<-EOS
|
||||
Create parameters for the agent resource
|
||||
EOS
|
||||
) do |args|
|
||||
raise(Puppet::ParseError, 'Shoud have 3 arguments!') if args.size < 2 or args[0] == ""
|
||||
raise(Puppet::ParseError, 'Shoud have 5 arguments!') if args.size < 4 or args[0] == ""
|
||||
vcenter = args[0]['computes']
|
||||
physnet = args[1]["predefined_networks"]["admin_internal_net"]["L2"]["physnet"]
|
||||
dvSwitch = args[2]["vmware_dvs_net_maps"]
|
||||
current_node = args[3].split(".")[0]
|
||||
controllersp = args[4].any? {|role| role.include?("controller")}
|
||||
agents = []
|
||||
vcenter.each {|vc|
|
||||
agent = {}
|
||||
agent["host"] = vc["availability_zone_name"] + "-" + vc["service_name"]
|
||||
agent["vsphere_hostname"] = vc["vc_host"]
|
||||
agent["vsphere_login"] = vc["vc_user"]
|
||||
agent["vsphere_password"] = vc["vc_password"]
|
||||
agent["network_maps"] = physnet + ":" + dvSwitch
|
||||
agents.push(agent)
|
||||
if (vc["target_node"] == "controllers" and controllersp) or current_node == vc["target_node"]
|
||||
agent = {}
|
||||
agent["host"] = vc["availability_zone_name"] + "-" + vc["service_name"]
|
||||
agent["vsphere_hostname"] = vc["vc_host"]
|
||||
agent["vsphere_login"] = vc["vc_user"]
|
||||
agent["vsphere_password"] = vc["vc_password"]
|
||||
agent["network_maps"] = physnet + ":" + dvSwitch
|
||||
agents.push(agent)
|
||||
end
|
||||
}
|
||||
Hash[agents.collect {|agent| [agent["host"], agent]}]
|
||||
end
|
||||
|
|
|
@ -12,19 +12,58 @@
|
|||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
# === Parameters
|
||||
#
|
||||
# [*host*]
|
||||
# (required) String. The host parameter for nova-compute process
|
||||
#
|
||||
# [*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.
|
||||
#
|
||||
# [*neutron_url_timeout*]
|
||||
# (required) String. This is the timeout for neutron.
|
||||
#
|
||||
# [*py_root*]
|
||||
# (required) String. Path for python's dist-packages.
|
||||
|
||||
|
||||
define vmware_dvs::agent(
|
||||
$host = 'vcenter-servicename',
|
||||
$vsphere_hostname = '192.168.0.1',
|
||||
$vsphere_login = 'administrator@vsphere.local',
|
||||
$vsphere_password = 'StrongPassword!',
|
||||
$network_maps = 'physnet1:dvSwitch1',
|
||||
$host = 'vcenter-servicename',
|
||||
$vsphere_hostname = '192.168.0.1',
|
||||
$vsphere_login = 'administrator@vsphere.local',
|
||||
$vsphere_password = 'StrongPassword!',
|
||||
$network_maps = 'physnet1:dvSwitch1',
|
||||
$neutron_url_timeout = '3600',
|
||||
$py_root = '/usr/lib/python2.7/dist-packages',
|
||||
)
|
||||
{
|
||||
|
||||
$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_log = "/var/log/neutron/vmware-dvs-agent-${host}.log"
|
||||
|
||||
nova_config {'neutron/url_timeout': value => $neutron_url_timeout}
|
||||
|
||||
file {"${py_root}/nova.patch":
|
||||
source => 'puppet:///modules/vmware_dvs/nova.patch',
|
||||
notify => Exec['apply-nova-patch'],
|
||||
}
|
||||
exec {'apply-nova-patch':
|
||||
path => '/usr/bin:/usr/sbin:/bin:/sbin',
|
||||
command => "patch -d ${py_root} -N -p1 < ${py_root}/nova.patch",
|
||||
refreshonly => true,
|
||||
}
|
||||
|
||||
file {$agent_config:
|
||||
ensure => present,
|
||||
content => template('vmware_dvs/agent_config.erb'),
|
||||
|
|
|
@ -0,0 +1,86 @@
|
|||
# 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
|
||||
#
|
||||
# [*admin_password*]
|
||||
# (required) String. The admin's password
|
||||
#
|
||||
# [*admin_tenant_name*]
|
||||
# (required) String. Name of the tenant's admin
|
||||
#
|
||||
# [*region_name*]
|
||||
# (required) String.
|
||||
#
|
||||
# [*admin_username*]
|
||||
# (required) String.
|
||||
#
|
||||
# [*admin_auth_url*]
|
||||
# (required) String.
|
||||
#
|
||||
# [*neutron_url*]
|
||||
# (required) String.
|
||||
#
|
||||
# [*neutron_url_timeout*]
|
||||
# (optional) String.
|
||||
#
|
||||
|
||||
class vmware_dvs::compute(
|
||||
$admin_password,
|
||||
$admin_tenant_name,
|
||||
$region_name,
|
||||
$admin_username,
|
||||
$admin_auth_url,
|
||||
$neutron_url,
|
||||
$neutron_url_timeout = '3600',
|
||||
)
|
||||
{
|
||||
include ::nova::params
|
||||
|
||||
class {'::nova::network::neutron':
|
||||
neutron_admin_password => $admin_password,
|
||||
neutron_admin_tenant_name => $admin_tenant_name,
|
||||
neutron_region_name => $region_name,
|
||||
neutron_admin_username => $admin_username,
|
||||
neutron_admin_auth_url => $admin_auth_url,
|
||||
neutron_url => $neutron_url,
|
||||
neutron_url_timeout => $neutron_url_timeout,
|
||||
}
|
||||
|
||||
augeas { 'sysctl-net.bridge.bridge-nf-call-arptables':
|
||||
context => '/files/etc/sysctl.conf',
|
||||
changes => "set net.bridge.bridge-nf-call-arptables '1'",
|
||||
}
|
||||
augeas { 'sysctl-net.bridge.bridge-nf-call-iptables':
|
||||
context => '/files/etc/sysctl.conf',
|
||||
changes => "set net.bridge.bridge-nf-call-iptables '1'",
|
||||
}
|
||||
augeas { 'sysctl-net.bridge.bridge-nf-call-ip6tables':
|
||||
context => '/files/etc/sysctl.conf',
|
||||
changes => "set net.bridge.bridge-nf-call-ip6tables '1'",
|
||||
}
|
||||
|
||||
service { 'nova-compute':
|
||||
ensure => 'running',
|
||||
name => $::nova::params::compute_service_name,
|
||||
}
|
||||
Nova_config<| |> ~> Service['nova-compute']
|
||||
|
||||
if($::operatingsystem == 'Ubuntu') {
|
||||
tweaks::ubuntu_service_override { 'nova-network':
|
||||
package_name => 'nova-network',
|
||||
}
|
||||
}
|
||||
|
||||
}
|
|
@ -30,18 +30,21 @@
|
|||
# [*network_maps*]
|
||||
# (required) String. This is a name of DVS.
|
||||
#
|
||||
# [*neutron_url_timeout*]
|
||||
# (optional) String. This is the timeout for neutron
|
||||
# [*driver_path*]
|
||||
# (required) String. This is the ml2 driver's path.
|
||||
#
|
||||
# [*plugin_path*]
|
||||
# (required) String. This is the ml2 plugin's path.
|
||||
|
||||
class vmware_dvs(
|
||||
$vsphere_hostname = '192.168.0.1',
|
||||
$vsphere_login = 'administrator@vsphere.loc',
|
||||
$vsphere_password = 'StrongPassword!',
|
||||
$network_maps = 'physnet2:dvSwitch1',
|
||||
$neutron_url_timeout = '3600',
|
||||
$vsphere_hostname = '192.168.0.1',
|
||||
$vsphere_login = 'administrator@vsphere.loc',
|
||||
$vsphere_password = 'StrongPassword!',
|
||||
$network_maps = 'physnet2:dvSwitch1',
|
||||
$driver_path = 'neutron/plugins/ml2/drivers/mech_vmware_dvs',
|
||||
$plugin_path = 'neutron/cmd/eventlet/plugins/dvs_neutron_agent.py',
|
||||
)
|
||||
{
|
||||
$py_root = '/usr/lib/python2.7/dist-packages'
|
||||
neutron_config {
|
||||
'DEFAULT/notification_driver': value => 'messagingv2';
|
||||
'DEFAULT/notification_topics': value => 'notifications,vmware_dvs';
|
||||
|
@ -55,53 +58,21 @@ class vmware_dvs(
|
|||
package { ['python-suds','python-mech-vmware-dvs']:
|
||||
ensure => present,
|
||||
}->
|
||||
file {"${py_root}/neutron/plugins/ml2/drivers/mech_vmware_dvs":
|
||||
file {$driver_path:
|
||||
ensure => 'link',
|
||||
target => '/usr/local/lib/python2.7/dist-packages/mech_vmware_dvs',
|
||||
}
|
||||
file {'dvs_neutron_agent.py':
|
||||
path => $plugin_path,
|
||||
source => 'puppet:///modules/vmware_dvs/dvs_neutron_agent.py',
|
||||
}
|
||||
|
||||
service { 'neutron-server':
|
||||
ensure => running,
|
||||
enable => true,
|
||||
subscribe => File["${py_root}/neutron/plugins/ml2/drivers/mech_vmware_dvs"],
|
||||
}
|
||||
|
||||
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'],
|
||||
}
|
||||
|
||||
nova_config {'neutron/url_timeout': value => $neutron_url_timeout}
|
||||
|
||||
file {"${py_root}/nova.patch":
|
||||
source => 'puppet:///modules/vmware_dvs/nova.patch',
|
||||
notify => Exec['apply-nova-patch'],
|
||||
}
|
||||
exec {'apply-nova-patch':
|
||||
path => '/usr/bin:/usr/sbin:/bin:/sbin',
|
||||
command => "patch -d ${py_root} -N -p1 < ${py_root}/nova.patch",
|
||||
refreshonly => true,
|
||||
}
|
||||
|
||||
file {'dvs_neutron_agent.py':
|
||||
path => "${py_root}/neutron/cmd/eventlet/plugins/dvs_neutron_agent.py",
|
||||
source => 'puppet:///modules/vmware_dvs/dvs_neutron_agent.py',
|
||||
}
|
||||
|
||||
file {'neutron-dvs-agent':
|
||||
path => '/usr/local/bin/neutron-dvs-agent',
|
||||
source => 'puppet:///modules/vmware_dvs/neutron-dvs-agent',
|
||||
owner => 'root',
|
||||
group => 'root',
|
||||
mode => '0755',
|
||||
require => Package['python-mech-vmware-dvs'],
|
||||
}
|
||||
file {'neutron-dvs-agent':
|
||||
path => '/usr/local/bin/neutron-dvs-agent',
|
||||
source => 'puppet:///modules/vmware_dvs/neutron-dvs-agent',
|
||||
owner => 'root',
|
||||
group => 'root',
|
||||
mode => '0755',
|
||||
require => Package['python-mech-vmware-dvs'],
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,43 @@
|
|||
# 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'],
|
||||
}
|
||||
}
|
|
@ -1,4 +1,5 @@
|
|||
- id: vmware-dvs-property-hypervisor_type
|
||||
version: 2.0.0
|
||||
role: ['primary-controller']
|
||||
required_for: [post_deployment_end]
|
||||
requires: [disable_keystone_service_token]
|
||||
|
@ -8,9 +9,10 @@
|
|||
timeout: 120
|
||||
|
||||
- id: vmware-dvs-override-hiera
|
||||
groups: ['primary-controller','controller']
|
||||
required_for: [openstack-network-plugins-l2]
|
||||
requires: [openstack-network-server-config]
|
||||
version: 2.0.0
|
||||
groups: ['primary-controller','controller', 'compute-vmware']
|
||||
required_for: [openstack-network-server-config, vmware-dvs-network-common-config]
|
||||
requires: [override_configuration]
|
||||
type: puppet
|
||||
parameters:
|
||||
puppet_manifest: puppet/manifests/override_hiera.pp
|
||||
|
@ -18,9 +20,10 @@
|
|||
timeout: 720
|
||||
|
||||
- id: vmware-dvs-setup-neutron-plugin
|
||||
groups: ['primary-controller','controller']
|
||||
required_for: [openstack-network-plugins-l2]
|
||||
requires: [vmware-dvs-override-hiera]
|
||||
version: 2.0.0
|
||||
groups: ['primary-controller','controller', 'compute-vmware']
|
||||
required_for: [primary-openstack-network-plugins-l2,openstack-network-plugins-l2,vmware-dvs-network-plugins-l2]
|
||||
requires: [openstack-network-common-config, vmware-dvs-network-common-config, vmware-dvs-override-hiera]
|
||||
type: puppet
|
||||
parameters:
|
||||
puppet_manifest: puppet/manifests/site.pp
|
||||
|
@ -28,9 +31,10 @@
|
|||
timeout: 720
|
||||
|
||||
- id: vmware-dvs-neutron-agent-install
|
||||
version: 2.0.0
|
||||
groups: ['primary-controller','controller','compute-vmware']
|
||||
require_for: [openstack-network-networks]
|
||||
requires: [vware-dvs-network-common-config]
|
||||
requires: [vmware-dvs-network-common-config]
|
||||
type: puppet
|
||||
parameters:
|
||||
puppet_manifest: puppet/manifests/agents.pp
|
||||
|
@ -38,20 +42,57 @@
|
|||
timeout: 720
|
||||
|
||||
- id: vmware-dvs-compute-vmware
|
||||
version: 2.0.0
|
||||
groups: ['compute-vmware']
|
||||
requires: [top-role-compute-vmware]
|
||||
requires: [vmware-dvs-network-compute-nova]
|
||||
type: puppet
|
||||
parameters:
|
||||
puppet_manifest: puppet/manifests/compute-vmware.pp
|
||||
puppet_modules: puppet/modules:/etc/puppet/modules
|
||||
timeout: 720
|
||||
|
||||
- id: vware-dvs-network-common-config
|
||||
- id: vmware-dvs-network-compute-nova
|
||||
type: puppet
|
||||
version: 2.0.0
|
||||
groups: [compute-vmware]
|
||||
required_for: [openstack-network-end]
|
||||
requires: [openstack-network-start]
|
||||
groups: ['compute-vmware']
|
||||
required_for: [vmware-dvs-network-end]
|
||||
requires: [vmware-dvs-network-common-config,vmware-dvs-network-agents-l3,vmware-dvs-network-agents-metadata]
|
||||
cross-depends:
|
||||
- name: /(primary-)?openstack-network-plugins-l2/
|
||||
parameters:
|
||||
puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/openstack-network/compute-nova.pp
|
||||
puppet_modules: /etc/puppet/modules
|
||||
timeout: 1800
|
||||
|
||||
- id: vmware-dvs-set-neutron-timeout
|
||||
version: 2.0.0
|
||||
groups: ['primary-controller','controller']
|
||||
required_for: [deploy_end]
|
||||
requires: [openstack-network-server-nova]
|
||||
type: puppet
|
||||
parameters:
|
||||
puppet_manifest: puppet/manifests/set-neutron-timeout.pp
|
||||
puppet_modules: puppet/modules:/etc/puppet/modules
|
||||
timeout: 720
|
||||
|
||||
# Anchor (empty task) for another tasks, say 'tenant network FW setup starting'
|
||||
- id: vmware-dvs-network-start
|
||||
type: skipped
|
||||
version: 2.0.0
|
||||
groups: ['primary-controller','controller','compute-vmware']
|
||||
requires: [neutron-keystone, neutron-db, netconfig, openstack-controller, top-role-compute]
|
||||
required_for: [openstack-network-common-config]
|
||||
cross-depends:
|
||||
- name: neutron-keystone
|
||||
- name: openstack-haproxy
|
||||
- name: neutron-db
|
||||
|
||||
- id: vmware-dvs-network-common-config
|
||||
type: puppet
|
||||
version: 2.0.0
|
||||
groups: ['primary-controller','controller','compute-vmware']
|
||||
required_for: [vmware-dvs-network-end]
|
||||
requires: [vmware-dvs-network-start]
|
||||
parameters:
|
||||
puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/openstack-network/common-config.pp
|
||||
puppet_modules: /etc/puppet/modules
|
||||
|
@ -60,9 +101,9 @@
|
|||
- id: vmware-dvs-network-plugins-l2
|
||||
type: puppet
|
||||
version: 2.0.0
|
||||
groups: [compute-vmware]
|
||||
required_for: [openstack-network-end]
|
||||
requires: [openstack-network-common-config, openstack-network-server-config]
|
||||
groups: ['primary-controller','controller','compute-vmware']
|
||||
required_for: [vmware-dvs-network-end]
|
||||
requires: [vmware-dvs-network-common-config, openstack-network-server-config]
|
||||
refresh_on: [neutron_plugin_ml2, neutron_agent_ovs, neutron_config, neutron_api_config]
|
||||
cross-depends:
|
||||
- name: primary-openstack-network-plugins-l2
|
||||
|
@ -71,12 +112,12 @@
|
|||
puppet_modules: /etc/puppet/modules
|
||||
timeout: 1800
|
||||
|
||||
- id: vmare-dvs-network-agents-l3
|
||||
- id: vmware-dvs-network-agents-l3
|
||||
type: puppet
|
||||
version: 2.0.0
|
||||
groups: [compute-vmware]
|
||||
required_for: [openstack-network-end]
|
||||
requires: [openstack-network-networks, openstack-network-routers, primary-openstack-network-plugins-l2, openstack-network-plugins-l2]
|
||||
groups: ['primary-controller','controller','compute-vmware']
|
||||
required_for: [vmware-dvs-network-end]
|
||||
requires: [openstack-network-networks, openstack-network-routers, primary-openstack-network-plugins-l2, vmware-dvs-network-plugins-l2]
|
||||
refresh_on: [neutron_l3_agent_config]
|
||||
cross-depends:
|
||||
- name: /(primary-)?openstack-network-plugins-l2/
|
||||
|
@ -89,9 +130,9 @@
|
|||
- id: vmware-dvs-network-agents-metadata
|
||||
type: puppet
|
||||
version: 2.0.0
|
||||
groups: [compute-vmware]
|
||||
required_for: [openstack-network-end]
|
||||
requires: [openstack-network-common-config,openstack-network-server-nova,openstack-network-agents-l3]
|
||||
groups: ['primary-controller','controller','compute-vmware']
|
||||
required_for: [vmware-dvs-network-end]
|
||||
requires: [vmware-dvs-network-common-config, openstack-network-server-nova,vmware-dvs-network-agents-l3]
|
||||
refresh_on: [neutron_metadata_agent_config]
|
||||
cross-depends:
|
||||
- name: primary-openstack-network-agents-metadata
|
||||
|
@ -101,3 +142,10 @@
|
|||
puppet_modules: /etc/puppet/modules
|
||||
timeout: 1800
|
||||
|
||||
# Anchor (empty task) for another tasks, say 'tenant network FW setup done'
|
||||
- id: vmware-dvs-network-end
|
||||
type: skipped
|
||||
version: 2.0.0
|
||||
groups: ['primary-controller','controller','compute-vmware']
|
||||
required_for: [deploy_end]
|
||||
requires: []
|
||||
|
|
|
@ -3,7 +3,7 @@ name: fuel-plugin-vmware-dvs
|
|||
# Human-readable name for your plugin
|
||||
title: Neutron VMware DVS ML2 plugin
|
||||
# Plugin version
|
||||
version: '2.1.0'
|
||||
version: '2.1.4'
|
||||
# Description
|
||||
description: Enable to use plugin vmware_dvs for Neutron
|
||||
# Required fuel version
|
||||
|
@ -22,7 +22,7 @@ is_hotpluggable: false
|
|||
# The plugin is compatible with releases in the list
|
||||
releases:
|
||||
- os: ubuntu
|
||||
version: 2015.1.0-8.0
|
||||
version: liberty-8.0
|
||||
mode: ['ha', 'multinode']
|
||||
deployment_scripts_path: deployment_scripts/
|
||||
repository_path: repositories/ubuntu
|
||||
|
|
Loading…
Reference in New Issue