control-repo/site-modules/role/manifests/loadbalancer.pp
2019-08-29 10:05:46 +08:00

35 lines
1.0 KiB
Puppet

class role::loadbalancer (
String $ports1 = '80',
Optional[String] $ports2 = undef,
String $rule1 = 'http',
Optional[String] $rule2 = undef,
String $backendserver_name1 = '',
String $backendserver_name2 = '',
Optional[String] $backendserver_ipaddress1 = undef,
Optional[String] $backendserver_ipaddress2 = undef,
) {
include ::haproxy
haproxy::listen { $rule1 :
collect_exported => false,
ipaddress => $::ipaddress,
ports => $ports1,
}
haproxy::balancermember { $backendserver_name1 :
listening_service => 'puppetserver',
server_names => $backendserver_name1,
ipaddresses => $backendserver_ipaddress1,
ports => $ports1,
options => 'check',
}
haproxy::balancermember { $backendserver_name2 :
listening_service => 'puppetserver',
server_names => $backendserver_name2,
ipaddresses => $backendserver_ipaddress2,
ports => $ports1,
options => 'check',
}
}