Create 'neutron-router' image element

To enable Neutron DVR support, this change introduces the 'neutron-router'
image element, which mirrors the current 'neutron-network-node' element
except it does not have a dependency on the neutron-dhcp-agent element
as that element should not be included on the compute nodes in the
Neutron Distributed Virtual Routing model.

Change-Id: I487ece637b75f8ef3ce0390f2da093b9f123a8d9
blueprint: support-neutron-dvr
Remove redundancies between neutron-router and neutron-network-node

This change removes the redundancies created by the introduction of the
neutron-router as part of enabling Neutron DVR support in tripleo. Now
rather than installing the l3-agent and metadata-agent as part of the
neutron-network-node element, the element instead has a dependency on
the neutron-router element which does the desired agent installations.

Change-Id: Ief61d028fa3b0674b44d8fb94f585209fd7dc635
blueprint: support-neutron-dvr
Parametrize Swift mount_check setting

Currently mount_check is set to false in Swift's account, container
and object -server.conf files.  This is because by default TripleO
Swift does not use mounted devices for data storage.  However
we (HP) and likely others are in the process of deploying TripleO
on servers which use mounted devices for data storage.  To
accommodate this, we propose to set mount_check to the Heat
metadata swift.mount-check if it exists, otherwise mount_check is
set to false.  We will submit corresponding Heat template changes
to set swift.mount-check, with a default value of false.

Change-Id: I6a67c49120b5dfa95d28d71eb7f9049946e9c5aa
Implement persistence of iptables on reboot

Use the iptables-persistent package
to implement persistence of iptables during a reboot
for Ubuntu and Debian.
Entries are saved to /etc/iptables/rules* on add-rule.
These entries are restored on reboot.
( Note in later versions iptables-persistent is replaced
by netfilter-persistent with plugins in iptables-persistent)

Change-Id: I44b625111d5db34a444c5aa4f6e31c6009c8a6f5
Simplify keepalived custom policy

Instead of allowing access to individual types to keepalived, we
now grant keepalived access to read the processes for all types.

This change was suggested in
https://bugzilla.redhat.com/show_bug.cgi?id=1151647

This also makes the custom policy work on both Fedora and RHEL.
The previous custom policy would not install on RHEL 7.0 because
some types were not defined in 7.0.

Change-Id: Ic7adbd14ef27959f0a991127b5213384c9e46be3
Nova consoleauth service fails in HA configuration

Nova consoleauth is a singleton service. In an HA configuration currently
it runs on all the controllers and causes NoVNC to fail intermittently
when it tries to connect to the URL that the API returned to it.

This fix makes consoleauth only run on the bootstrap node.

Change-Id: Ic1803e0b997271b3512e6c62fd75feccb4d9be0a
Merge "Simplify keepalived custom policy"
Merge "Implement persistence of iptables on reboot"
Merge "Create 'neutron-router' image element"
Merge "Remove redundancies between neutron-router and neutron-network-node"
Merge "Parametrize Swift mount_check setting"
Merge "Nova consoleauth service fails in HA configuration"