Version information
released Dec 29th 2016
This version is compatible with:
Start using this module
Add this module to your Puppetfile:
mod 'prozeta-portauthority', '0.5.34'
Learn more about managing modules with a PuppetfileDocumentation
prozeta/portauthority — version 0.5.34 Dec 29th 2016
PortAuthority
Table of Contents
- Description
- Setup - The basics of getting started with portauthority
- Usage - Configuration options and additional functionality
- Reference - An under-the-hood peek at what the module is doing and how
- Limitations - OS compatibility, etc.
Description
A module to provision the following:
- Highly-Available ETCD cluster
- Docker Engine
- Docker Swarm with ETCD as k/v store and HA Swarm Managers
Additional stuff can be done:
- create overlay networks
- run Docker containers
Setup
What portauthority affects
Setup Requirements
Beginning with portauthority
Usage
Reference
Class definition
class{ 'portauthority':
floating_ip => '192.168.0.1',
floating_ip_mask => '255.255.255.0',
floating_ip_iface => 'eth0',
cluster_members => ['192.168.0.11','192.168.0.12','192.168.0.13'],
private_registry => 'my.private.registry',
log_destination => '192.168.0.100:5515',
host_ip => $::ipaddress_eth0,
lb_image => 'prozeta/pa-haproxy:latest',
lb_name => 'pa-loadbalancer',
lb_log_destination => '192.168.0.100:5515',
default_bridge_ip => '192.168.255.1/24',
gwbridge_network => '192.168.254.0/24',
gwbridge_address => '192.168.254.1',
dns => ['8.8.8.8', '4.4.4.4'],
swarm_tag => 'latest',
}
Of course, you can use Hiera ;)
Types
pa_network
pa_service
Parser functions
etcd_get
Returns a value of an ETCD key.
The function takes 3 arguments:
- absolute key path (required)
- array of hashes with keys
host
andport
to define the cluster to connect to. Defaults to[ { host: lookupvar('fqdn'), port 2379 } ]
- timeout for ETCD requests in seconds. Defaults to
3
.
$variable = etcd_get('/some/key')
etcd_get_keys
Returns an Array of ETCD key names from a path.
The function takes 3 arguments:
- absolute key path (required)
- array of hashes with keys
host
andport
to define the cluster to connect to. Defaults to[ { host: lookupvar('fqdn'), port 2379 } ]
- timeout for ETCD requests in seconds. Defaults to
3
.
$variable = etcd_get_keys('/some')
etcd_get_hash
Returns a Hash from ETCD path.
The function takes 3 arguments:
- absolute key path (required)
- array of hashes with keys
host
andport
to define the cluster to connect to. Defaults to[ { host: lookupvar('fqdn'), port 2379 } ]
- timeout for ETCD requests in seconds. Defaults to
3
.
$variable = etcd_get_hash('/')
Limitations
Types in this module release
Dependencies
- garethr/docker (>=5.0.0)