diff options
Diffstat (limited to 'manifests/profile')
-rw-r--r-- | manifests/profile/base/neutron/plugins/ml2/opendaylight.pp | 21 | ||||
-rw-r--r-- | manifests/profile/base/snmp.pp | 44 | ||||
-rw-r--r-- | manifests/profile/base/tuned.pp | 4 | ||||
-rw-r--r-- | manifests/profile/pacemaker/ovn_dbs_bundle.pp | 7 | ||||
-rw-r--r-- | manifests/profile/pacemaker/ovn_northd.pp | 6 |
5 files changed, 51 insertions, 31 deletions
diff --git a/manifests/profile/base/neutron/plugins/ml2/opendaylight.pp b/manifests/profile/base/neutron/plugins/ml2/opendaylight.pp index c98f555..cb3e817 100644 --- a/manifests/profile/base/neutron/plugins/ml2/opendaylight.pp +++ b/manifests/profile/base/neutron/plugins/ml2/opendaylight.pp @@ -34,10 +34,6 @@ # (Optional) Virtual IP address for ODL Api Service # Defaults to hiera('opendaylight_api_vip') # -# [*odl_api_ips*] -# (Optional) List of OpenStack Controller IPs for ODL API -# Defaults to hiera('opendaylight_api_node_ips') -# # [*conn_proto*] # (Optional) Protocol to use to for ODL REST access # Defaults to hiera('opendaylight::nb_connection_protocol') @@ -52,7 +48,6 @@ class tripleo::profile::base::neutron::plugins::ml2::opendaylight ( $odl_username = hiera('opendaylight::username'), $odl_password = hiera('opendaylight::password'), $odl_url_ip = hiera('opendaylight_api_vip'), - $odl_api_ips = hiera('opendaylight_api_node_ips'), $conn_proto = hiera('opendaylight::nb_connection_protocol'), $step = Integer(hiera('step')), ) { @@ -60,24 +55,12 @@ class tripleo::profile::base::neutron::plugins::ml2::opendaylight ( if $step >= 4 { if ! $odl_url_ip { fail('OpenDaylight API VIP is Empty') } - $ml2_odl_params = { - 'odl_username' => $odl_username, - 'odl_password' => $odl_password, - 'odl_url' => "${conn_proto}://${odl_url_ip}:${odl_port}/controller/nb/v2/neutron", - } - - validate_array($odl_api_ips) - if size($odl_api_ips) > 2 { - $odl_features = 'False' - } else { - $odl_features = $::os_service_default - } - + # TODO(trozet) remove odl_features once ODL BZ: 9256, 9147 are fixed class { '::neutron::plugins::ml2::opendaylight': odl_username => $odl_username, odl_password => $odl_password, odl_url => "${conn_proto}://${odl_url_ip}:${odl_port}/controller/nb/v2/neutron", - odl_features => $odl_features; + odl_features => 'False'; } } } diff --git a/manifests/profile/base/snmp.pp b/manifests/profile/base/snmp.pp index ecef5ae..6c26e1c 100644 --- a/manifests/profile/base/snmp.pp +++ b/manifests/profile/base/snmp.pp @@ -18,6 +18,20 @@ # # === Parameters # +# [*snmpd_config*] +# An array of snmp config. +# Example: +# snmpd_config: +# - 'createUser ro_snmp_user MD5 "secrete"', +# - 'rouser ro_snmp_user' +# - 'proc neutron-server' +# - 'proc nova-api' +# Note: since we give total freedom to configure snmpd_config and don't +# verify the content, the user will have to ensure that the parameters +# related to user / password in the array, are the same given to +# THT via SnmpdReadonlyUserName and SnmpdReadonlyUserPassword. +# Defaults to undef. +# # [*snmpd_password*] # The SNMP password # Defaults to hiera('snmpd_readonly_user_password') @@ -32,6 +46,7 @@ # Defaults to hiera('step') # class tripleo::profile::base::snmp ( + $snmpd_config = undef, $snmpd_password = hiera('snmpd_readonly_user_password'), $snmpd_user = hiera('snmpd_readonly_user_name'), $step = Integer(hiera('step')), @@ -41,17 +56,24 @@ class tripleo::profile::base::snmp ( authtype => 'MD5', authpass => $snmpd_password, } - class { '::snmp': - snmpd_config => [ join(['createUser ', $snmpd_user, ' MD5 "', $snmpd_password, '"']), - join(['rouser ', $snmpd_user]), - 'proc cron', - 'includeAllDisks 10%', - 'master agentx', - 'trapsink localhost public', - 'iquerySecName internalUser', - 'rouser internalUser', - 'defaultMonitors yes', - 'linkUpDownNotifications yes' ], + if $snmpd_config { + validate_array($snmpd_config) + class { '::snmp': + snmpd_config => $snmpd_config, + } + } else { + class { '::snmp': + snmpd_config => [ join(['createUser ', $snmpd_user, ' MD5 "', $snmpd_password, '"']), + join(['rouser ', $snmpd_user]), + 'proc cron', + 'includeAllDisks 10%', + 'master agentx', + 'trapsink localhost public', + 'iquerySecName internalUser', + 'rouser internalUser', + 'defaultMonitors yes', + 'linkUpDownNotifications yes' ], + } } } } diff --git a/manifests/profile/base/tuned.pp b/manifests/profile/base/tuned.pp index 8dfcea0..48951bd 100644 --- a/manifests/profile/base/tuned.pp +++ b/manifests/profile/base/tuned.pp @@ -12,9 +12,11 @@ class tripleo::profile::base::tuned ( $profile = 'throughput-performance' ) { + ensure_resource('package', 'tuned', { ensure => 'present' }) exec { 'tuned-adm': path => ['/bin', '/usr/bin', '/sbin', '/usr/sbin'], command => "tuned-adm profile ${profile}", - unless => "tuned-adm active | grep -q '${profile}'" + unless => "tuned-adm active | grep -q '${profile}'", + require => Package['tuned'], } } diff --git a/manifests/profile/pacemaker/ovn_dbs_bundle.pp b/manifests/profile/pacemaker/ovn_dbs_bundle.pp index efe3e93..29ba85b 100644 --- a/manifests/profile/pacemaker/ovn_dbs_bundle.pp +++ b/manifests/profile/pacemaker/ovn_dbs_bundle.pp @@ -71,6 +71,13 @@ class tripleo::profile::pacemaker::ovn_dbs_bundle ( } if $step >= 3 { + + # Allow non local bind, because all the ovsdb-server's running in the + # cluster try to open a TCP socket on the VIP. + ensure_resource('sysctl::value', 'net.ipv4.ip_nonlocal_bind', { + 'value'=> 1, + }) + if $pacemaker_master { $ovndb_servers_resource_name = 'ovndb_servers' $ovndb_servers_ocf_name = 'ovn:ovndb-servers' diff --git a/manifests/profile/pacemaker/ovn_northd.pp b/manifests/profile/pacemaker/ovn_northd.pp index 4f39a7b..7b081b7 100644 --- a/manifests/profile/pacemaker/ovn_northd.pp +++ b/manifests/profile/pacemaker/ovn_northd.pp @@ -61,6 +61,12 @@ class tripleo::profile::pacemaker::ovn_northd ( tries => $pcs_tries, node => $::hostname, } + + # Allow non local bind, because all the ovsdb-server's running in the + # cluster try to open a TCP socket on the VIP. + ensure_resource('sysctl::value', 'net.ipv4.ip_nonlocal_bind', { + 'value'=> 1, + }) } if $step >= 3 and downcase($::hostname) == $pacemaker_master { |