Puppet Class: neutron::plugins::nvp

Defined in:
manifests/plugins/nvp.pp

Overview

Configure the Nicira NVP plugin for neutron.

Parameters

nvp_controllers

The password for connection to VMware vCenter server.

nvp_user

The user name for NVP controller.

nvp_password

The password for NVP controller

default_tz_uuid

UUID of the pre-existing default NVP Transport zone to be used for creating tunneled isolated “Neutron” networks. This option MUST be specified.

default_l3_gw_service_uuid

(Optional) UUID for the default l3 gateway service to use with this cluster. To be specified if planning to use logical routers with external gateways. Defaults to None.

Parameters:

  • default_tz_uuid (Any)
  • nvp_controllers (Any)
  • nvp_user (Any)
  • nvp_password (Any)
  • default_l3_gw_service_uuid (Any) (defaults to: undef)
  • package_ensure (Any) (defaults to: 'present')


24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
# File 'manifests/plugins/nvp.pp', line 24

class neutron::plugins::nvp (
  $default_tz_uuid,
  $nvp_controllers,
  $nvp_user,
  $nvp_password,
  $default_l3_gw_service_uuid = undef,
  $package_ensure    = 'present'
) {

  include neutron::params

  Package['neutron'] -> Package['neutron-plugin-nvp']
  Package['neutron-plugin-nvp'] -> Neutron_plugin_nvp<||>
  Neutron_plugin_nvp<||> ~> Service<| title == 'neutron-server' |>
  Package['neutron-plugin-nvp'] -> Service<| title == 'neutron-server' |>

  package { 'neutron-plugin-nvp':
    ensure  => $package_ensure,
    name    => $::neutron::params::nvp_server_package
  }

  validate_array($nvp_controllers)

  neutron_plugin_nvp {
    'DEFAULT/default_tz_uuid': value => $default_tz_uuid;
    'DEFAULT/nvp_controllers': value => join($nvp_controllers, ',');
    'DEFAULT/nvp_user':        value => $nvp_user;
    'DEFAULT/nvp_password':    value => $nvp_password, secret => true;
    'nvp/metadata_mode':       value => 'access_network';
  }

  if($default_l3_gw_service_uuid) {
    neutron_plugin_nvp {
      'DEFAULT/default_l3_gw_service_uuid': value => $default_l3_gw_service_uuid;
    }
  }

  if $::neutron::core_plugin != 'neutron.plugins.nicira.NeutronPlugin.NvpPluginV2' {
    fail('nvp plugin should be the core_plugin in neutron.conf')
  }

  # In RH, this link is used to start Neutron process but in Debian, it's used only
  # to manage database synchronization.
  file {'/etc/neutron/plugin.ini':
    ensure  => link,
    target  => '/etc/neutron/plugins/nicira/nvp.ini',
    require => Package['neutron-plugin-nvp']
  }

}