puppet-neutron/manifests/plugins/ml2/bigswitch/restproxy.pp

126 lines
4.3 KiB
Puppet

#
# Set config file parameters for connecting Neutron server to Big
# Switch controllers.
#
# === Parameters
#
# [*servers*]
# Comma-separated list of Big Switch controllers.
# The format is "IP:port,IP:port".
# Defaults to $::os_service_default
#
# [*server_auth*]
# Credentials for the Big Switch controllers.
# The format is "username:password".
# Defaults to $::os_service_default
#
# [*auth_tenant*]
# (optional) The tenant of the auth user
# Defaults to service
#
# [*auth_password*]
# (optional) The password to use for authentication (keystone)
# Defaults to false.
#
# [*auth_user*]
# (optional) The name of the auth user
# Defaults to neutron
#
# [*auth_url*]
# (optional) Complete public Identity API endpoint.
# Defaults to: false
#
# [*auto_sync_on_failure*]
# (optional) When a failover happens in active/passive Big Switch
# controllers, resynchronize with the new master server. Defaults to
# true.
# Defaults to $::os_service_default
#
# [*cache_connections*]
# (optional) Re-use HTTP/HTTPS connections to the controller.
# Defaults to $::os_service_default
#
# [*consistency_interval*]
# (optional) Interval of a keepalive message sent from Neutron server
# to a Big Switch controller..
# Defaults to $::os_service_default
#
# [*keystone_sync_interval*]
# (optional) Time between openstack tenant sync queries
# Defaults to $::os_service_default
#
# [*neutron_id*]
# (optional) Unique identifier of the Neutron instance for the Big
# Switch controller. Defaults to 'neutron'.
#
# [*no_ssl_validation*]
# (optional) Disables SSL certificate validaiton for controllers
# Defaults to $::os_service_default
#
# [*server_ssl*]
# (optional) Whether Neutron should use SSL to talk to the Big Switch
# controllers.
# Defaults to $::os_service_default
#
# [*server_timeout*]
# (optional) Maximum number of seconds to wait for proxy request to connect
# and complete.
# Defaults to $::os_service_default
#
# [*ssl_cert_directory*]
# (optional) Directory where Big Switch controller certificate will be
# stored. Defaults to '/var/lib/neutron'.
#
# [*sync_data*]
# (optional) Sync data on connect
# Defaults to $::os_service_default
#
# [*thread_pool_size*]
# (optional) Maximum number of threads to spawn to handle large volumes of
# port creations.
# Defaults to $::os_service_default
#
class neutron::plugins::ml2::bigswitch::restproxy (
$servers = $::os_service_default,
$server_auth = $::os_service_default,
$auth_tenant = 'services',
$auth_password = false,
$auth_user = 'neutron',
$auth_url = false,
$auto_sync_on_failure = $::os_service_default,
$cache_connections = $::os_service_default,
$consistency_interval = $::os_service_default,
$keystone_sync_interval = $::os_service_default,
$neutron_id = 'neutron',
$no_ssl_validation = $::os_service_default,
$server_ssl = $::os_service_default,
$server_timeout = $::os_service_default,
$ssl_cert_directory = '/var/lib/neutron',
$sync_data = $::os_service_default,
$thread_pool_size = $::os_service_default,
) {
include neutron::deps
require ::neutron::plugins::ml2::bigswitch
neutron_plugin_ml2 {
'restproxy/servers' : value => $servers;
'restproxy/server_auth' : value => $server_auth;
'restproxy/auth_tenant' : value => $auth_tenant;
'restproxy/auth_password' : value => $auth_password, secret => true;
'restproxy/auth_user' : value => $auth_user;
'restproxy/auth_url' : value => $auth_url;
'restproxy/auto_sync_on_failure' : value => $auto_sync_on_failure;
'restproxy/cache_connections' : value => $cache_connections;
'restproxy/consistency_interval' : value => $consistency_interval;
'restproxy/keystone_sync_interval': value => $keystone_sync_interval;
'restproxy/neutron_id' : value => $neutron_id;
'restproxy/no_ssl_validation' : value => $no_ssl_validation;
'restproxy/server_ssl' : value => $server_ssl;
'restproxy/server_timeout' : value => $server_timeout;
'restproxy/ssl_cert_directory' : value => $ssl_cert_directory;
'restproxy/sync_data' : value => $sync_data;
'restproxy/thread_pool_size' : value => $thread_pool_size;
}
}