Merge pull request #691 from enovance/keepalived-auth

keepalived: avoid empty auth config when disabled
This commit is contained in:
Yanis Guenane
2014-10-16 14:25:45 -04:00

View File

@@ -212,8 +212,8 @@ class cloud::loadbalancer(
$keepalived_public_ipvs = ['127.0.0.1'], $keepalived_public_ipvs = ['127.0.0.1'],
$keepalived_internal_interface = 'eth1', $keepalived_internal_interface = 'eth1',
$keepalived_internal_ipvs = false, $keepalived_internal_ipvs = false,
$keepalived_auth_type = undef, $keepalived_auth_type = false,
$keepalived_auth_pass = undef, $keepalived_auth_pass = false,
$ceilometer_bind_options = [], $ceilometer_bind_options = [],
$cinder_bind_options = [], $cinder_bind_options = [],
$ec2_bind_options = [], $ec2_bind_options = [],
@@ -318,22 +318,27 @@ class cloud::loadbalancer(
} }
if $keepalived_internal_ipvs and !empty(difference($keepalived_internal_ipvs, $keepalived_public_ipvs)) { # First we check if internal binding is enabled
if ! $keepalived_vrrp_interface { if $keepalived_internal_ipvs {
$keepalived_vrrp_interface_internal = $keepalived_internal_interface # Then we validate this is not the same as public binding
} else { if !empty(difference(any2array($keepalived_internal_ipvs), any2array($keepalived_public_ipvs))) {
$keepalived_vrrp_interface_internal = $keepalived_vrrp_interface if ! $keepalived_vrrp_interface {
} $keepalived_vrrp_interface_internal = $keepalived_internal_interface
keepalived::instance { '2': } else {
interface => $keepalived_vrrp_interface_internal, # Backward compatibility
virtual_ips => unique(split(join(flatten([$keepalived_internal_ipvs, ['']]), " dev ${keepalived_internal_interface},"), ',')), $keepalived_vrrp_interface_internal = $keepalived_vrrp_interface
state => $keepalived_state, }
track_script => ['haproxy'], keepalived::instance { '2':
priority => $keepalived_priority, interface => $keepalived_vrrp_interface_internal,
auth_type => $keepalived_auth_type, virtual_ips => unique(split(join(flatten([$keepalived_internal_ipvs, ['']]), " dev ${keepalived_internal_interface},"), ',')),
auth_pass => $keepalived_auth_pass, state => $keepalived_state,
notify_master => $::cloud::params::start_haproxy_service, track_script => ['haproxy'],
notify_backup => $::cloud::params::stop_haproxy_service, priority => $keepalived_priority,
auth_type => $keepalived_auth_type,
auth_pass => $keepalived_auth_pass,
notify_master => $::cloud::params::start_haproxy_service,
notify_backup => $::cloud::params::stop_haproxy_service,
}
} }
} }