Use root pass for galera init script

The galera init script uses the debian-sys-maint account to shutdown
mysql. However this password cannot be preseeded, and is randomly
generated on install. Also it is set in the database so must be updated
when replication has been achieved.

This patch implements an alternative: Use the mysql root password for
init script operations (shutdown). This password is preseedable and will
work at any state of replication.

This is no less secure than previous state as we already write root galera
credentials to /root/.my.cnf (0600) and /etc/mysql/debian.cnf is also 0600.

Related: #411

Conflicts:
	rpc_deployment/inventory/group_vars/galera.yml
Use local socket for mysql client connection

This affects mysql client as well as mysqladmin, which is used in status
checks in the init script. It is important that the init script can
succeed regardless of LB state. (Prior to this commit, LB IP was used as
the host to connect to).

Related: #413
Specialize galera client config

For reliable operation, the mysql client configuration must point to the
local instance, within galera containers. However this prevents the
mysql client from working on other constainers (eg utility).

This patch defaults the mysql connection to the VIP, then overrides that
to 127.0.0.1 for galera containers.

Related: #413
Increase galera startup timeout

The mysql init script pings mysql once per second for thirty seconds,
then reports failure, even though mysql may eventually start
succesfully. We run into this problem sometimes as galera startup can
take longer than standard mysql startup, especially when init or state
transfer is required.

The complication is that the init script does not source a defaults
file, so it is difficult to override the timeout.

In this commit, I have brought the init script into the role, and added
a single line to it, which sources /etc/mysql/default. I have also added
/etc/mysql/default and set a long timeout for MYSQL_DEFAULT_TIMEOUT
(1800 seconds).

Related: #413
Merge pull request #491 from hughsaunders/galera_backports

Galera backports
Use the 9.0.0 branch by default
This commit adds a check to the dynamic inventory script when parsing extra values

(cherry picked from commit 767aa6229dfb6e907bd2473e1f8efe235ebed44a)
Create alarms for discovered devices

Currently, we create checks for {sda,sdb,sdc}, but not every server will
have these devices.  This commit loops over {{ ansible_devices }}
instead so we create an alarm for any discovered device.

Additionally, if a user variable called maas_excluded_devices exists,
we'll skip over those devices when creating alarms.

(cherry picked from commit 787599a1d05a2d421a5aa93e285988e88b59919f)
Merge pull request #535 from mattt416/icehouse_430

Create alarms for discovered devices
Do now recursively chown {{ install_lib_dir }}

Currently, we recursively chown /usr/local/lib/python2.7/dist-packages
to www-data:www-data.  This should be unnecessary as we can (and do)
chown individual directories in the horizon specific roles.

(cherry picked from commit a63180ae1ffa4e19a854e2aced53567e76e58cb9)
Merge pull request #536 from mattt416/icehouse_367

Do now recursively chown {{ install_lib_dir }}
#487 Allow NFS mounts within the cinder-volumes container
Merge pull request #521 from mancdaz/icehouse-458

This commit adds a check to the dynamic inventory script when parsing extra values
Merge pull request #494 from nrb/icehouse-aio

Make cloudserver-aio.sh pull stable/icehouse in the stable/icehouse version
9.0.3 release
Merge pull request #565 from mancdaz/stable/icehouse

9.0.3 release
Merge pull request #556 from cloudnull/backport-stable/icehouse-Issue487

BACKPORT - #487 Allow NFS mounts within the cinder-volumes container