Add initial base class for configuring pacemaker.

All other classes we add to use pacemaker to manage various services will go in
this module as well.

(cherry picked from commit 2fb9c6027c2d6880f07c9cc7954fe295774bfb3b)
Add in the option to create a keystonerc_admin file in root's home directory.

(cherry picked from commit 07b0e793403a65a3e0e6b0ca56dd7e874b4ccbc9)
Host Groups may now be associated with a list of puppet classes

or just a singleton puppet class as before.  E.g., this is
now a valid definition in seeds.rb:

hostgroups = [
    {:name=>"Swift Storage Node",
     :class=>"quickstack::swift::storage"},
    {:name=>"Test Pacemaker Qpid",
     :class=>["quickstack::pacemaker::common",
              "quickstack::pacemaker::qpid"]},
]

(cherry picked from commit d07ec1ed046f8391ef899ad4977704cc12fd8dbf)
Make the provisioning setup easier to configure, by
allowing the user to specify PROVISIONING_INTERFACE
variable at runtime. Also handle interface names
like br-ex or eth0.1234 that facter mangles.

In lieu of changing foreman-installer code, provide facterized if name to installer.pp

(cherry picked from commit bd76f97b23ce2d74fbac49fad3be1ffd12775913)
Add Qpid HA Module.

(cherry picked from commit 7a23cc1c31b640df9bf2ba2f55281b8d9a670903)
Refactor Load Balancer.

* Move the define into it's own class
* Clean up other puppet lint warnings.

(cherry picked from commit 104044327c0d147270e625b30ab49483019791d0)

Conflicts:
	puppet/modules/quickstack/manifests/load_balancer.pp
Add Module to install the Load Balancer with HA setup.

(cherry picked from commit 7af5852ef0685d6da49e449a624fbb8d5f91fe86)
Set default of all puppet class params to allow override.

(cherry picked from commit acca4e7bd3f61bfd784d99d3d765345d9e0383c0)
BZ #1049079 - Use openstack-puppet-modules package.

https://bugzilla.redhat.com/show_bug.cgi?id=1049079
(cherry picked from commit 391ff769e57cb2a4257407dbcdc7aa234602355e)
Fencing options added to quickstack::pacemaker::common

Set fencing_type to 'disabled' to set the stonith-enabled pacemaker
propety to false.

Set fencing_type to 'fence_xvm' to add fence_xvm resources.  If
fence_xvm is true, also set:

  fence_xvm_clu_iface -- the interface the cluster IP resides on
                         (as known by "pcs status")
  fence_xvm_manage_key_file -- true or false, whether or not to
                               write /etc/cluster/fence_xvm.key
  fence_xvm_key_file_password -- if the above is true, the contents
                                 of /etc/cluster/fence_xvm.key

  Note that `hostname -s` must match the name the name of of the guest
  in virsh for fence_xvm to work here.

Set fencing_type to 'ipmilan' to add a fence_ipmilan stonith resource.
In this case, the other relevant parameters are:

fence_ipmilan_address -- the IP of the ipmilan fence device
fence_ipmilan_username -- the username for the fence device, if needed
fence_ipmilan_password -- the password for the fence device, if needed
fence_ipmilan_interval -- interval passed to the pcs stonith create
                          command, e.g. '30s'

(cherry picked from commit 7363ebecbc3b0dfb044f8a962d2fd0c22c63cb5f)
BZ #1075818 - Create New Hostgroup to enable HA deployments.

https://bugzilla.redhat.com/show_bug.cgi?id=1075818

Adding memcached.

(cherry picked from commit e56554d65c6c510c3db8fd2af15cf388b776a0f8)
BZ #1049121 -  Install a Highly Available ... Foreman (HA/mysql)

https://bugzilla.redhat.com/show_bug.cgi?id=1049121

The custom fact, $hamysql_active_node, did not behave as expected
during an initial puppet run if pcs was not yet installed: it would
return true rather than the expected false.  Also, if there were
"Failed actions" in the output of "pcs status", the fact would always
incorrectly return false.  Both of these issues are fixed.

Additionally, the primary HA/mysql puppet manifest, node.pp, as been
updated to work with the lastest puppet-pacemaker module.

(cherry picked from commit 3e6460f953ba088734cefbd47d2430fcf26af3bc)
Update obsolete cisco plugin template to match upstream havana

(cherry picked from commit 1b47bce8afe9c1855aacd1e9ba2ae124f27a6e69)
Set the firewall driver appropriately when vswitch plugin is OVS
and cisco plugin is the core plugin.

(cherry picked from commit 62fe4f6b76dd5bfaff4ee1143bb88136a81ffefa)
BZ #1064056 - Foreman Heat ports not opened

https://bugzilla.redhat.com/show_bug.cgi?id=1064056

Open ports on the controller node for Heat:

* 8000 for opehstack-heat-api-cfn
* 8003 for opehstack-heat-api-cloudwatch
* 8004 for openstack-heat-api

A new firewall rule has to be added, because if the ports would be
added to the existing one, the port count would be greater than the
maximum for iptables multiport extension (maximum is 15), and creating
the rule would fail with a message "iptables v1.4.7: too many ports
specified".

(cherry picked from commit 3287448e5ae361d6feda2c3f1b37e3a9ab8bb89e)
BZ #1053623 - openstack-selinux package not installed

https://bugzilla.redhat.com/show_bug.cgi?id=1053623

Package openstack-selinux is now installed on RHEL/CentOS nodes
running OpenStack services. It is not installed if the node runs
Fedora, because selinux-policy package on Fedora is being updated
more frequently and should not need additional rules.

(cherry picked from commit b92fe35adc3b57770c52b17f217a6b211a0d11c9)
BZ #1082811 - Add Keystone Service to HA hostgroup .

https://bugzilla.redhat.com/show_bug.cgi?id=1082811

Add HA keystone support.

(cherry picked from commit 9d90ddccfe7de7e632636f2a221607a4f025b08a)

Conflicts:
	bin/seeds.rb
BZ #1083781 - Add Glance Service to HA hostgroup

https://bugzilla.redhat.com/show_bug.cgi?id=1083781

Add component to install and configure glance on the HA All in One
controller, including the flag $include_glance
(defined in quickstack::pacemaker::params) to toggle it on and off.

(cherry picked from commit ab14c27c5dc92a76f7e385d9f41b40d4bef950b9)
BZ #1082811 - HA Keystone improvements.

https://bugzilla.redhat.com/show_bug.cgi?id=1082811

Tweaks and fixes, had to override rsync::get options to overwrite certain cert
files.

(cherry picked from commit 7f9f394bc6cd30fbdf136d3f0db35d855750d49a)
BZ #1082811 - HA Keystone improvements, cont'd.

https://bugzilla.redhat.com/show_bug.cgi?id=1082811

Tweaks.  Add and use the template for the bash script
/tmp/ha-all-in-one-util.bash that contains logic to assist with puppet
flow.  Simplify quickstack::pacemaker::rsync -- end result of waiting
for the non-vip servers to sync up is the same.

(cherry picked from commit 4fd277227646ed851a7faa255b59340f09293cf7)