OP#669 initial commit with new autolayout

This commit is contained in:
2026-09-05 11:38:16 +02:00
parent 257ab516f3
commit 44660e2b9e
38 changed files with 146 additions and 5560 deletions

View File

@@ -1,14 +1,27 @@
# Readme
[![Build Status](https://jenkins.confdroid.com/buildStatus/icon?job=haproxy_cd)](https://jenkins.confdroid.com/job/haproxy_cd/)|
[![Build Status](https://jenkins.confdroid.com/buildStatus/icon?job=confdroid_haproxy&style=plastic)](https://jenkins.confdroid.com/job/confdroid_haproxy/)
[[_TOC_]]
- [Readme](#readme)
- [Synopsis](#synopsis)
- [WARNING](#warning)
- [Features](#features)
- [Dependencies](#dependencies)
- [Deployment](#deployment)
- [Parameters](#parameters)
- [Proxy Configuration](#proxy-configuration)
- [SELINUX](#selinux)
- [Known Problems](#known-problems)
- [Support](#support)
- [Tests](#tests)
- [Contact Us](#contact-us)
- [Disclaimer](#disclaimer)
## Synopsis
`HA Proxy` is a very powerful and popular open source load balancer to balance incoming requests between multiple instances of web-, application- or database servers etc.
`haproxy_cd` automates installation and configuration of `HA proxy` including self-healing, monitoring and firewall etc.
`confdroid_haproxy` automates installation and configuration of `HA proxy` including self-healing, monitoring and firewall etc.
## WARNING
@@ -18,46 +31,46 @@
INSTALLATION
* install rpm binaries
- install rpm binaries
CONFIGURATION
* manage haproxy user
* manage directories (file system permissions, selinux context)
* manage files (file system permissions, content, selinux context)
* manage proxy instances through a define
* front-end options
* back-end options
* ACL options
* manage fail2ban integration (optional, requires fail2ban_cd module)
- manage haproxy user
- manage directories (file system permissions, selinux context)
- manage files (file system permissions, content, selinux context)
- manage proxy instances through a define
- front-end options
- back-end options
- ACL options
- manage fail2ban integration (optional, requires fail2ban_cd module)
SERVICE
* manage haproxy service
* restart service after changes in the configuration
- manage haproxy service
- restart service after changes in the configuration
## Dependencies
All dependencies must be included in the catalogue.
* [cd_resources](https://gitlab.confdroid.com/puppet/cd_resources) for managing yum base repos
* [concat](https://github.com/puppetlabs/puppetlabs-concat) for managing file fragments
- [cd_resources](https://gitlab.confdroid.com/puppet/cd_resources) for managing yum base repos
- [concat](https://github.com/puppetlabs/puppetlabs-concat) for managing file fragments
## Deployment
* native Puppet deployment
- native Puppet deployment
via site.pp or nodes.pp
```bash
node 'example.example.net' {
include haproxy_cd
include confdroid_haproxy
}
```
* through Foreman:
- through Foreman:
In order to apply parameters through Foreman, **__haproxy_cd::params__** must be added to the host or host group in question.
In order to apply parameters through Foreman, **confdroid_haproxy::params**- must be added to the host or host group in question.
See [more details about class deployment on Confdroid.com](https://confdroid.com/2017/05/deploying-our-puppet-modules/).
@@ -71,7 +84,7 @@ The proxy instances are configured in /etc/haproxy/haproxy.cfg, which is concate
In order to create proxy instances, you will need an external class, which addresses the define, like so:
```bash
haproxy_cd::server::proxy { 'testing':
confdroid_haproxy::server::proxy { 'testing':
haproxy_fqdn => 'node.example.net',
frontend_name => 'test01-frontend',
frontend_mode => 'http',
@@ -82,7 +95,7 @@ In order to create proxy instances, you will need an external class, which addre
```
This allows the puppet module to create the sections in the configuration file as required. The haproxy service will be restarted after the changes in the configuration file are made.
`haproxy_fqdn` **__must__** contain the fqdn of the haproxy **__server__** where this should be configured, otherwise the templates are not being populated.
`haproxy_fqdn` **must**- contain the fqdn of the haproxy **server**- where this should be configured, otherwise the templates are not being populated.
Multiple ACLs need to be added as array, and will create one line each.
## SELINUX
@@ -93,22 +106,22 @@ All files and directories are configured with correct selinux context. If selinu
## Support
* OS: Rocky 9
* Puppet 8
- OS: Rocky 9
- Puppet 8
## Tests
* Puppet Lint
* excluded tests:
* `--no-variable_scope-check`: not applicable as we are inheriting parameters from params class. the lint check does not distinguish between facts and inherited parameters.
* Puppet Parser
* ERB Template Parser
* Sonar Quality Gate
- Puppet Lint
- excluded tests:
- `--no-variable_scope-check`: not applicable as we are inheriting parameters from params class. the lint check does not distinguish between facts and inherited parameters.
- Puppet Parser
- ERB Template Parser
- Sonar Quality Gate
## Contact Us
[contact Us](https://confdroid.com/contact/)
[Feedback Portal](https://feedback.confdroid.com/)
- [contact Us](https://confdroid.com/contact/)
- [Feedback Portal](https://feedback.confdroid.com/)
## Disclaimer