puppet-neutron/manifests/plugins/ml2/cisco/nexus1000v.pp

111 lines
4.1 KiB
ObjectPascal

#
# Configure the Mech Driver for cisco nexus 1000v neutron plugin
#
# === Parameters
#
#[*n1kv_vsm_ip*]
#IP(s) of N1KV VSM(Virtual Supervisor Module)
#$n1kv_vsm_ip = 1.2.3.4, 5.6.7.8
#Defaults to empty
#
#[*n1kv_vsm_username*]
#Username of N1KV VSM(Virtual Supervisor Module)
#Defaults to empty
#
#[*n1kv_vsm_password*]
#Password of N1KV VSM(Virtual Supervisor Module)
#Defaults to empty
#
#[*default_policy_profile*]
# (Optional) Name of the policy profile to be associated with a port when no
# policy profile is specified during port creates.
# Default value:default-pp
# default_policy_profile = default-pp
#
#[*default_vlan_network_profile*]
# (Optional) Name of the VLAN network profile to be associated with a network.
# Default value:default-vlan-np
# default_vlan_network_profile = default-vlan-np
#
#[*default_vxlan_network_profile*]
# (Optional) Name of the VXLAN network profile to be associated with a network.
# Default value:default-vxlan-np
# default_vxlan_network_profile = default-vxlan-np
#
#[*poll_duration*]
# (Optional) Time in seconds for which the plugin polls the VSM for updates in
# policy profiles.
# Default value: 60
# poll_duration = 60
#
#[*http_pool_size*]
# (Optional) Number of threads to use to make HTTP requests to the VSM.
# Default value: 4
# http_pool_size = 4
#
#[*http_timeout*]
# (Optional) Timeout duration in seconds for the http request
# Default value: 15
# http_timeout = 15
#
#[*sync_interval*]
# (Optional) Time duration in seconds between consecutive neutron-VSM syncs
# Default value: 300, the time between two consecutive syncs is 300 seconds.
# sync_interval = 300
#
#[*max_vsm_retries*]
# (Optional) Maximum number of retry attempts for VSM REST API.
# Default value: 2, each HTTP request to VSM will be retried twice on
# failures.
# max_vsm_retries = 2
#
#[*restrict_policy_profiles*]
# (Optional) Specify whether tenants are restricted from accessing all the
# policy profiles.
# Default value: False, indicating all tenants can access all policy profiles.
# restrict_policy_profiles = False
#
#[*enable_vif_type_n1kv*]
# (Optional) If set to True, the VIF type for portbindings is set to N1KV.
# Otherwise the VIF type is set to OVS.
# Default value: False, indicating that the VIF type will be set to OVS.
# enable_vif_type_n1kv = False
#
class neutron::plugins::ml2::cisco::nexus1000v (
$n1kv_vsm_ip = $::os_service_default,
$n1kv_vsm_username = $::os_service_default,
$n1kv_vsm_password = $::os_service_default,
$default_policy_profile = 'default-pp',
$default_vlan_network_profile = 'default-vlan-np',
$default_vxlan_network_profile = 'default-vxlan-np',
$poll_duration = '60',
$http_pool_size = '4',
$http_timeout = '15',
$sync_interval = '300',
$max_vsm_retries = '2',
$restrict_policy_profiles = 'False',
$enable_vif_type_n1kv = 'False',
)
{
include neutron::deps
include neutron::plugins::ml2::cisco
neutron_plugin_ml2 {
'ml2_cisco_n1kv/n1kv_vsm_ips' : value => $n1kv_vsm_ip;
'ml2_cisco_n1kv/username' : value => $n1kv_vsm_username;
'ml2_cisco_n1kv/password' : value => $n1kv_vsm_password, secret => true;
'ml2_cisco_n1kv/default_policy_profile' : value => $default_policy_profile;
'ml2_cisco_n1kv/default_vlan_network_profile' : value => $default_vlan_network_profile;
'ml2_cisco_n1kv/default_vxlan_network_profile' : value => $default_vxlan_network_profile;
'ml2_cisco_n1kv/poll_duration' : value => $poll_duration;
'ml2_cisco_n1kv/http_pool_size' : value => $http_pool_size;
'ml2_cisco_n1kv/http_timeout' : value => $http_timeout;
'ml2_cisco_n1kv/sync_interval' : value => $sync_interval;
'ml2_cisco_n1kv/max_vsm_retries' : value => $max_vsm_retries;
'ml2_cisco_n1kv/restrict_policy_profiles' : value => $restrict_policy_profiles;
'ml2_cisco_n1kv/enable_vif_type_n1kv' : value => $enable_vif_type_n1kv;
}
}