q-agent-cleanup escape character handling

/root/openrc should contain escaped characters for
certain symbols, but are stripped when sourcing
this file in shell scripts. p-agent-cleanup.py
should treat user credentials as escaped strings
and not literal escape characters.

Closes-Bug: #1275655

Change-Id: Ia9534ef93508813b2a8cdc7368cf6f121ea40fe7
Set rabbit_hosts to a list of controllers

Connecting to RabbitMQ via HAProxy results in hung AMQP sessions after
controller failover or VIP move. To work around this problem, OpenStack
services have to be configured to connect directly to RabbitMQ services
on controllers nodes via rabbit_hosts variable, which makes impl_kombu
cycle through the listed hosts when attempting to reconnect. On
controller nodes, preference is given to the local RabbitMQ service on
the same controller node.

AMQP client configuration for all OpenStack components is centralized in
osnailyfacter and propagated through Puppet classes in a consistent
manner. The exception is Neutron that uses its own
sanitize_neutron_config() function to parse configuration from
osnailyfacter. That function was extended to generate AMQP hosts list
consistently with the above, and fixed to correctly sanitize instances
of Array subclasses.

No changes were made to Murano manifests since it has its own RPC
implementation that is inconsistent with the rest of the OpenStack.

In addition to AMQP client configuration, crm configuration is modified
to set flush_routes flag and resource stickiness for all virtual IP
addresses. The flush_routes flag reduces the probability of connections
becoming hung on nodes that a VIP moves away from, and resource
stickiness prevent unnecessary movement of VIP resources between
controllers.

Change-Id: Ib839032b2f1aa820b4afc64b0a9badf13414d488
Partial-bug: #1285449
Add read_timeout and infinite retries to MySQL conns

read_timeout=60 is an explicit parameter added
for mysqldb to bail connections if no data is
received for 60s. Depends on MySQLdb 1.2.5
max_retries=-1 for all connections so that
APIs don't give up and die

Change-Id: Ib4a2cdcc287cbc53c18f7500d96f82d8099e0f35
Partial-Bug: #1285449
Enable Overlapping-IP in neutron by default.

Change-Id: Id4d26e5fa36e1e2f975381b5b42b95d711fd67c0
Partial-bug: #1287126
Send mcollective logs to syslog as well

- Use rsyslog::imfile to track mco logs as syslog daemon/debug ones
- Drop duplicating mco/nailgun-agent messages targeted to syslog files
- Add nailgun-agent.log to log rotation plans as well.

Partial blueprint: collect-mco-and-agent-logs-with-shotgun

Change-Id: I95c6e04bd1f647ea655647223bffffe9b4e7a8a8
Signed-off-by: Bogdan Dobrelya <bdobrelia@mirantis.com>
Make Neutron L3/DHCP agents OCF script more tolerant

to mysql and keystone temporary fails.

Change-Id: Iaf5d5b49932c1dc4db6bca0563607972150f4cf4
Closes-bug: #1287716
remove dhcp_checker from kickstart and preseed

dhcp_checker and net_probe will be maintained
as single package

Related to blueprint combined-network-checker-and-dhcpchecker

Change-Id: I5607c5889bf812a17993ee330f2db8bca03c76e5
Make Neutron L3/DHCP agents OCF script more tolerant to mysql and keystone temporary fails.

In this implementation cleanup-script does not get information from Neutron API.
Script inspects network namespaces on this node for given agent type and removes
found ports from integration bridge.

Closes-bug: #1287716
Partial-bug: #1285929
Change-Id: I2dfb31f240dca652341c4623f237f6a143414448
Add puppet-3.4 support

Adding puppet-3.4 support. It also should work under puppet-2.7.
In order to work properly with puppet-3.4 also requires some updates
in packages:
- ruby-rgen >= 0.6.5
- hiera >= 1.3.1

Change-Id: I40ffb6961e2b6de8090040f545648143e926872d
Fix Savanna manifests to configure logging

Change-Id: Iffae82d347a4bd6bb0170bfae6b3d1501bc5f344
Closes-bug: #1285766
Fix searching for cciss substring error

find() may return 0 if the string starts with "cciss"

Related-bug: #1291692
Change-Id: Iab25baa22e33274513f68ada64ba24eeca9c576e
Fix local logs for puppet 3.4

This is just a simmetric change to the
https://review.openstack.org/#/c/72390/9/deployment/puppet/rsyslog/templates/30-server-remote-log.conf.erb
but for the local logs as well.

Change-Id: Iba66115fa7971f2a62b0626b95e392be0a9c4619
Signed-off-by: Bogdan Dobrelya <bdobrelia@mirantis.com>
Merge "Enable Overlapping-IP in neutron by default."
Fix ensure log_config is absent regression

This fixes a regression what was introduced
with the minor refactoring patch
(79c5bbba98458d2e7db80d0797b6b7991703cb7a).

W/o this patch nova, cinder and ceilometer would not be
re-configured, if debug=true was re-set in astute.yaml
CI retest

Change-Id: I6b00646893eee27d35e5d1c67c0082d6f8dc0029
Signed-off-by: Bogdan Dobrelya <bdobrelia@mirantis.com>
Merge "Send mcollective logs to syslog as well"
Merge "Make Neutron L3/DHCP agents OCF script more tolerant to mysql and keystone temporary fails."
Merge "Fix local logs for puppet 3.4"
Add search domain to resolv.conf

Change-Id: Ibca44534c6a99557d0e0bc46e801bda2122d4a03
Closes-Bug: #1286028
Fix heat, murano logging

CI retest

Closes-bug: #1285639

Change-Id: I40f879a8ad1c4f87d7232f3bbc0439afb3fcab8f
Signed-off-by: Bogdan Dobrelya <bdobrelia@mirantis.com>
Merge "Fix searching for cciss substring error"