Implement logging support

* Add 3 new puppet modules in dependencies
* Configure Logging server:
  * Configure elasticsearch
  * Configure Kibana3
* Configure Logging agent:
  * Configure fluentd
* Unit tests

Signed-off-by: Emilien Macchi <emilien.macchi@enovance.com>
restart glance services after ceph keyring config

When configuring ceph keyring in /etc/ceph, we need to restart the
services to have Glance correctly working.
Neutron / Metadata: improve agent scalability

we need by default to set the metadata backlog value and the workers
value. Inspired from
19:34: https://www.youtube.com/watch?v=AF9r_VQrcJ0 and
https://review.openstack.org/#/c/95372

Signed-off-by: Emilien Macchi <emilien.macchi@enovance.com>
Merge pull request #502 from enovance/metadata_backlog

Neutron / Metadata: Set default metadata backlog to 4096
Merge pull request #501 from enovance/restart-glance

restart glance services after ceph keyring config
Change HAproxy for Glance API service

When uploading a big image (usually a RAW), the upload fails to happen
because of HAproxy timeout.
We need to change the HAproxy configuration to use another mode and also
increase the timeout to 2 hours (should be enough for regular images).

Closes-bug #503
Merge pull request #504 from enovance/glance-api-timeout

Change HAproxy for Glance API service
Increase glance_num_retries for Glance and Cinder

Sometimes but very often, nova-compute fails to start a VM when using a
large RAW image from Glance (RBD driver).

After looking in the code, it looks like we could increase the number of
retries when downloading an image from Glance.

Closes-bug #505
Merge pull request #506 from enovance/glance-timeout

Increase glance_num_retries for Glance and Cinder
Neutron L3: enable external provider network capability

- as an option, disable br-ex in Neutron L3 agent configuration
- as an option, manage the provider network using a puppet provider
- manage br-pub bridge and public interface for public bridge
- backward compatibility since we keep br-ex as an option

Signed-off-by: Emilien Macchi <emilien.macchi@enovance.com>
swift/ringbuilder: allow to disable the ring building

When using Hiera, it's usefull to have the "enabled" parameter to either
enable or disable the ring building, since it should be run on one
single node.

Signed-off-by: Emilien Macchi <emilien.macchi@enovance.com>
Merge pull request #508 from enovance/ringbuilder-enable

swift/ringbuilder: allow to disable the ring building
Merge pull request #507 from enovance/public-provider-net

Neutron L3: enable external provider network capability
Merge pull request #495 from enovance/logging-support

Implement logging support
allow HAProxy to bind to a non-local IP address

This is needed since HAProxy will be running on each of our
load-balancer nodes, yet keepalived will ensure that our virtual IP
address exists on only one of our load-balancer nodes at any given time.

Signed-off-by: Emilien Macchi <emilien.macchi@enovance.com>
Merge pull request #509 from enovance/haproxy-binding

allow HAProxy to bind to a non-local IP address
loadbalancer: Terminate SSL in the HAProxy loadbalancer.

This commit allows deployer to define if they want (per API) the SSL
to be terminated in the HAProxy or not.
Pin last commit for puppetlabs-haproxy

Tests are broken since we need the last commit to support "bind_options"
parameter support in our manifests.

Also delete the useless bind_options for MySQL Galera.

Signed-off-by: Emilien Macchi <emilien.macchi@enovance.com>
RBD: add first unit tests

- add tests for Ceph monitor nodes
- add tests for Ceph OSD nodes
- delete empty files

Signed-off-by: Emilien Macchi <emilien.macchi@enovance.com>
swift/sysctl: do not disable net.ipv4.tcp_timestamps

Turn timestamps off to reduce performance spikes related to timestamp
generation. The sysctl command controls the values of TCP related
entries, setting the timestamps kernel parameter found at
/proc/sys/net/ipv4/tcp_timestamps.

It should be enabled in order to make Swift & Ceph working correctly.

Signed-off-by: Emilien Macchi <emilien.macchi@enovance.com>