feat: add puppetboard backend
- add balancemember to puppetboard nodes - add be_puppetboard to haproxxy - add puppetboard.main.unkin.net to haproxy altnames - add puppetboard to backend mapping - change way backends are registered in haproxy
This commit is contained in:
@@ -51,10 +51,18 @@ class profiles::haproxy::server (
|
||||
include profiles::haproxy::fe_http # default http frontend
|
||||
include profiles::haproxy::fe_https # default https frontend
|
||||
|
||||
$backends = lookup('haproxy::backend').keys
|
||||
$backends.each |$backend| {
|
||||
# for each backend:
|
||||
$backends = lookup('profiles::haproxy::backends')
|
||||
$backends.each |$backend, $data| {
|
||||
|
||||
# create backend
|
||||
haproxy::backend { $backend:
|
||||
* => $data,
|
||||
}
|
||||
|
||||
# collect exported resources
|
||||
$location_environment = "${facts['country']}-${facts['region']}-${facts['environment']}"
|
||||
$tag = "${location_environment}_${backend}"
|
||||
$tag = "${backend}_${location_environment}"
|
||||
Haproxy::Balancermember <<| tag == $tag |>>
|
||||
}
|
||||
}
|
||||
|
||||
@@ -121,13 +121,38 @@ class profiles::puppet::puppetboard (
|
||||
location_alias => "${virtualenv_dir}/lib/python${python_version}/site-packages/puppetboard/static",
|
||||
}
|
||||
|
||||
# export haproxy balancemember
|
||||
profiles::haproxy::balancemember { "${facts['networking']['fqdn']}_${nginx_port}}":
|
||||
service => 'be_puppetboard',
|
||||
ports => [$nginx_port],
|
||||
options => [
|
||||
"cookie ${facts['networking']['hostname']}",
|
||||
'check',
|
||||
'inter 2s',
|
||||
'rise 3',
|
||||
'fall 2',
|
||||
]
|
||||
}
|
||||
#@@haproxy::balancermember { "${facts['networking']['fqdn']}_${nginx_port}}":
|
||||
# listening_service => 'be_puppetboard',
|
||||
# ports => [$nginx_port],
|
||||
# server_names => $facts['networking']['hostname'],
|
||||
# ipaddresses => $facts['networking']['ip'],
|
||||
# options => [
|
||||
# "cookie ${facts['networking']['hostname']}",
|
||||
# 'check',
|
||||
# 'inter 2s',
|
||||
# 'rise 3',
|
||||
# 'fall 2',
|
||||
# ]
|
||||
#}
|
||||
|
||||
# if selinux is defined, manage it
|
||||
if $::facts['os']['selinux']['config_mode'] == 'enforcing' {
|
||||
# if selinux is defined, manage it
|
||||
if $::facts['os']['selinux']['config_mode'] == 'enforcing' {
|
||||
|
||||
# call the nginx selinux class
|
||||
class { 'profiles::selinux::nginx':
|
||||
require => Class['Nginx'],
|
||||
}
|
||||
# call the nginx selinux class
|
||||
class { 'profiles::selinux::nginx':
|
||||
require => Class['Nginx'],
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user