Merge pull request #18 from hunner/new_readme
Update readme for release
This commit is contained in:
commit
3785b590a1
@ -1,25 +1,83 @@
|
||||
# haproxy
|
||||
PuppetLabs Module for haproxy
|
||||
=============================
|
||||
|
||||
HAProxy is an HA proxying daemon for load-balancing to clustered services. It
|
||||
can proxy TCP directly, or other kinds of traffic such as HTTP.
|
||||
|
||||
Basic Usage
|
||||
-----------
|
||||
|
||||
This haproxy uses storeconfigs to collect and realize balancer member servers
|
||||
on a load balancer server. Currently Redhat family OSes are supported, but
|
||||
support for other OS Families shouldn't be too difficult to merge in. Pull
|
||||
requests accepted!
|
||||
on a load balancer server. Currently Redhat family OSes are supported.
|
||||
|
||||
Read the documentation in the manifest headers for usage information.
|
||||
*To install and configure HAProxy server listening on port 80*
|
||||
|
||||
## Hacking
|
||||
```puppet
|
||||
node 'haproxy-server' {
|
||||
class { 'haproxy': }
|
||||
haproxy::listen { 'puppet00':
|
||||
ipaddress => $::ipaddress,
|
||||
ports => '8140',
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
After cloning the repository:
|
||||
*To add backend loadbalance members*
|
||||
|
||||
1. `gem install puppetlabs_spec_helper`
|
||||
1. `rake spec` # To run the tests
|
||||
1. Hack Hack Hack # Adding tests hopefully!
|
||||
1. Commit and send a pull request!
|
||||
```puppet
|
||||
node 'webserver01' {
|
||||
@@haproxy::balancermember { $fqdn:
|
||||
listening_service => 'puppet00',
|
||||
server_names => $::hostname,
|
||||
ipaddresses => $::ipaddress,
|
||||
ports => '8140',
|
||||
options => 'check'
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## License
|
||||
Configuring haproxy options
|
||||
---------------------------
|
||||
|
||||
Apache 2.0
|
||||
The base `haproxy` class can accept two parameters which will configure basic
|
||||
behaviour of the haproxy server daemon:
|
||||
|
||||
## Contact
|
||||
- `global_options` to configure the `global` section in `haproxy.cfg`
|
||||
- `defaults_options` to configure the `defaults` section in `haproxy.cfg`
|
||||
|
||||
Puppet Labs Modules Team <modules@puppetlabs.com>
|
||||
Configuring haproxy daemon listener
|
||||
-----------------------------------
|
||||
|
||||
One `haproxy::listen` defined resource should be defined for each HAProxy loadbalanced set of backend servers. The title of the `haproxy::listen` resource is the key to which balancer members will be proxied to. The `ipaddress` field should be the public ip address which the loadbalancer will be contacted on. The `ports` attribute can accept an array or comma-separated list of ports which should be proxied to the `haproxy::balancermemeber` nodes.
|
||||
|
||||
Configuring haproxy loadbalanced member nodes
|
||||
---------------------------------------------
|
||||
|
||||
The `haproxy::balacemember` defined resource should be exported from each node
|
||||
which is serving loadbalanced traffic. the `listening_service` attribute will
|
||||
associate it with `haproxy::listen` directives on the haproxy node.
|
||||
`ipaddresses` and `ports` will be assigned to the member to be contacted on. If an array of `ipaddresses` and `server_names` are provided then they will be added to the config in lock-step.
|
||||
|
||||
Dependencies
|
||||
------------
|
||||
|
||||
Tested and built on Ubuntu and CentOS
|
||||
|
||||
Copyright and License
|
||||
---------------------
|
||||
|
||||
Copyright (C) 2012 [Puppet Labs](https://www.puppetlabs.com/) Inc
|
||||
|
||||
Puppet Labs can be contacted at: info@puppetlabs.com
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
Loading…
Reference in New Issue
Block a user