multi daemon config config templates

To support dedicated replication networks, a different style of
configuration is used in /etc/swift allowing multiple daemons
to run on the same node.

i.e. instead of

/etc/swift/account-server.conf

there is

/etc/swift/account-server/1.conf
/etc/swift/account-server/2.conf

with different configurations in 1.conf for regular and 2.conf
for replication networks. The [*-replicator] section is removed
from *-server.conf to make *-reg.conf.erb (1.conf) and
replication_server=True is set in the [app:*-server] section of
*-rep.conf.erb (2.conf).

New variables are introduced in *-rep.conf.erb:

@ipaddress_repnet
@*_rep_port (e.g. @account_rep_port)

which control the dedicated replication network specific settings
in *-rep.conf.erb.

Change-Id: I0f8d407ff5790512aca199342e307f6c63cd35f0
multi daemon config upstart support

The default configuration of ubuntu packages does not support
the configuration style required to use a multi daemon config.

The init scripts for the swift services are changed such that:

They check for /etc/swift/*-server/1.conf instead of
/etc/swift/*-server.conf.

Also, the call to swift-init *-server start has been changed
to swift-init *-server start no-wait, as the change in
configuration styles causes swift-init to exit with spurious
errors.

Change-Id: I9542d7fa1ef8c0cb13f6983aa82b51648a4d50f2
multi daemon config support for account.pp

This patch allows the behaviour of the module to be controlled
by a variable swift::multi_daemon_config. If false, the module
behaves exactly as the previous version.

If true, the module makes significant changes in
/etc/swift/account* and /etc/init/swift-account*.conf, with a
new configuration style and init scripts.

If true, the user must also set the swift::ipaddress_regnet
and swift::ipaddress_repnet and swift::account::account_rep_port
variables in hiera.

Change-Id: I2bfdb00a63625631ae6541811464a2fe2ba10eaf
multi daemon config support for container.pp

This patch allows the behaviour of the module to be controlled
by a variable swift::multi_daemon_config. If false, the module
behaves exactly as the previous version.

If true, the module makes significant changes in
/etc/swift/container* and /etc/init/swift-container*.conf, with a
new configuration style and init scripts.

If true, the user must also set the swift::ipaddress_regnet
and swift::ipaddress_repnet and
swift::container::container_rep_port variables in hiera.

Change-Id: Id22035a839ea403897c97498459db289b676bf8b