apex-tripleo-heat-templates.git
9 years agoMerge "Map Neutron services to isolated networks"
Jenkins [Wed, 27 May 2015 20:01:33 +0000 (20:01 +0000)]
Merge "Map Neutron services to isolated networks"

9 years agoMerge "Map Keystone services to isolated networks"
Jenkins [Wed, 27 May 2015 20:01:27 +0000 (20:01 +0000)]
Merge "Map Keystone services to isolated networks"

9 years agoMerge "Map Glance services to isolated networks"
Jenkins [Wed, 27 May 2015 20:01:19 +0000 (20:01 +0000)]
Merge "Map Glance services to isolated networks"

9 years agoMerge "Reuse the various service passwords as db passwords."
Jenkins [Wed, 27 May 2015 09:38:45 +0000 (09:38 +0000)]
Merge "Reuse the various service passwords as db passwords."

9 years agoMerge "Map Cinder services to isolated networks"
Jenkins [Wed, 27 May 2015 08:43:15 +0000 (08:43 +0000)]
Merge "Map Cinder services to isolated networks"

9 years agoMerge "Map Ceilometer services to isolated networks"
Jenkins [Wed, 27 May 2015 08:42:36 +0000 (08:42 +0000)]
Merge "Map Ceilometer services to isolated networks"

9 years agoMerge "Add Keystone as Pacemaker resource"
Jenkins [Wed, 27 May 2015 06:53:33 +0000 (06:53 +0000)]
Merge "Add Keystone as Pacemaker resource"

9 years agoMap Neutron services to isolated networks
Dan Sneddon [Wed, 27 May 2015 01:46:13 +0000 (18:46 -0700)]
Map Neutron services to isolated networks

This change adds parameters to specify which network the Neutron API should
use. If the internal_api network exists, Neutron will bind to the IP on that
network, otherwise the Undercloud 'ctlplane' network will be used. The
network that the Neutron API is bound to can be overridden in an environment
file.

Change-Id: I11bcebba3a22e8850095250a2ddfaf972339476b

9 years agoMap Keystone services to isolated networks
Dan Sneddon [Wed, 27 May 2015 00:54:01 +0000 (17:54 -0700)]
Map Keystone services to isolated networks

This change adds parameters to specify which networks the Keystone API
services will use. If the external network exists, Keystone will bind to
the IP on that network for the public API, otherwise it will default to
the IP on the Undercloud 'ctlplane' network. If the internal_api network
exists it will be used for the Keystone Admin API, otherwise it will
default to the 'ctlplane' IP. The networks these APIs are bound to can
be overridden in an environment file.

Change-Id: I6694ef6ca3b9b7afbde5d4f9d173723b9ce71b20

9 years agoMap Glance services to isolated networks
Dan Sneddon [Tue, 26 May 2015 22:52:34 +0000 (15:52 -0700)]
Map Glance services to isolated networks

This change adds parameters to specify which networks the Glance services
will use. If the internal_api network exists, Glance Registry will bind
to the IP on that network, otherwise it will default to the Undercloud
'ctlplane' network. If the storage network exists, Glance API will bind
to the IP on that network, otherwise it will default to 'ctlplane'. The
networks that these services use can be overridden with an environment
file.

Change-Id: I6114b2d898c5a0ba4cdb26a3da2dbf669666ba99

9 years agoMerge "Define Glance Pacemaker resources on $pacemaker_master node only"
Jenkins [Tue, 26 May 2015 22:13:33 +0000 (22:13 +0000)]
Merge "Define Glance Pacemaker resources on $pacemaker_master node only"

9 years agoMerge "os-net-config templates to configure vlans on bond"
Jenkins [Tue, 26 May 2015 22:04:48 +0000 (22:04 +0000)]
Merge "os-net-config templates to configure vlans on bond"

9 years agoMap Cinder services to isolated networks
Dan Sneddon [Tue, 26 May 2015 22:03:34 +0000 (15:03 -0700)]
Map Cinder services to isolated networks

This change adds parameters to specify which networks the Cinder API and
Cinder iSCSI services will listen on. If the internal_api network exists,
Cinder API will be bound to the IP on that network, otherwise it will
default to the Undercloud 'ctlplane' network. The Cinder iSCSI service will
bind to the storage network if it exists, otherwise will also default to
using the Undercloud 'ctlplane' network.

Change-Id: I98149f108baf28d46eb199b69a72d0f6914486fd

9 years agoMerge "Ensures mongodb configuration only happens if mongodb is needed"
Jenkins [Tue, 26 May 2015 20:38:48 +0000 (20:38 +0000)]
Merge "Ensures mongodb configuration only happens if mongodb is needed"

9 years agoMerge "We don't need to create the clustercheck user anymore"
Jenkins [Tue, 26 May 2015 20:30:58 +0000 (20:30 +0000)]
Merge "We don't need to create the clustercheck user anymore"

9 years agoMerge "overcloud stepped deployment environment"
Jenkins [Tue, 26 May 2015 20:21:30 +0000 (20:21 +0000)]
Merge "overcloud stepped deployment environment"

9 years agoMap Ceilometer services to isolated networks
Dan Sneddon [Tue, 26 May 2015 19:17:52 +0000 (12:17 -0700)]
Map Ceilometer services to isolated networks

This change adds the parameters to specify which networks the Ceilometer
and MongoDB servers listen on. It is set to the internal_api network if
present, and reverts to the default Undercloud 'ctlplane' network if not.

Change-Id: Ib646e4a34496966f9b1d454f04d07bf95543517f

9 years agoos-net-config templates to configure vlans on bond
Dan Prince [Wed, 20 May 2015 18:27:28 +0000 (11:27 -0700)]
os-net-config templates to configure vlans on bond

This patch adds 5 new role templates to help configure
an OVS bond with vlans on top for each of the overcloud
roles.

These are meant to represent a more production network
which might use isolated nets, and should help facilitate
create a CI job which configures a bond w/ vlans on it.

The patch also includes an environment file to
enable configuration of bonded vlans by simply
sourcing this file.

Change-Id: Ibe4c9d933445014ce3bec5fb3d7e3139fc40cb32

9 years agoAn environment file to enable network isolation
Dan Prince [Fri, 22 May 2015 16:07:05 +0000 (09:07 -0700)]
An environment file to enable network isolation

This commit adds an environment file which adds all
the relevant resource registry entries to enable isolated
overcloud networks.

Change-Id: I8c5e0ca300b86a38925f59c9df7831d69da9f787

9 years agoSwitch net-config templates to use OS::stack_id
Dan Prince [Tue, 19 May 2015 19:19:52 +0000 (12:19 -0700)]
Switch net-config templates to use OS::stack_id

This patch removes the custom config_id outputs and replaces
it with OS::stack_id which allows us to just call get_resource
in the parent stack.

The motivation for this change is we'll be adding more os-net-config
templates and it would be nice to take advantage of this newer
template feature.

Change-Id: I6fcb26024b94420779b86766e16d8a24210c4f8e

9 years agoUpdate neutron local_ip to use the tenant network
Dan Prince [Wed, 29 Apr 2015 14:58:00 +0000 (10:58 -0400)]
Update neutron local_ip to use the tenant network

This patch uses the new NetIpMap and ServiceMap abstractions
to assign the Neutron tenant tunneling network addresses.
By default this is associated with the tenant network. If no
tenant network is activated this will still default to
the control plane IP address.

Change-Id: I9db7dd0c282af4e5f24947f31da2b89f231e6ae4

9 years agoAdd a network ports IP mapping resource
Dan Prince [Wed, 29 Apr 2015 14:53:07 +0000 (10:53 -0400)]
Add a network ports IP mapping resource

This patch adds a resource which constructs a Json output
parameter called net_ip_map which will allow us to easily
extract arbitrary IP addresses for each network using the
get_attr function in heat.

The goal is to use this data construct in each role
template to obtain the correct IP address on each
network.

Change-Id: I1a8c382651f8096f606ad38f78bbd76314fbae5f

9 years agoAdd isolated network ports to block storage roles
Dan Prince [Thu, 7 May 2015 01:14:01 +0000 (21:14 -0400)]
Add isolated network ports to block storage roles

This patch updates the cinder block storage roles so that
they can optionally make use of isolated network
ports on the storage, storage management, and internal_api
networks.

 -Multiple networks are created based upon settings in the heat
  resource registry. These nets will either use the noop network (the
  control plane pass-thru default) or create a custom Neutron port on
  each of the configured networks.

 -The ipaddress/subnet of each network is passed passed into the
  NetworkConfig resource which drives os-net-config. This allows the
  deployer to define a custom network template for static IPs, etc
  on each of the networks.

 -The ipaddress is exposed as an output parameter. By exposing
  the individual addresses as outputs we allow Heat to construct
  collections of ports for various services.

Change-Id: I4e18cd4763455f815a8f8b82c93a598c99cc3842

9 years agoAdd isolated network ports to swift roles
Dan Prince [Thu, 7 May 2015 01:04:22 +0000 (21:04 -0400)]
Add isolated network ports to swift roles

This patch updates the swift roles so that
they can optionally make use of isolated network
ports on the storage, storage management, and internal API
networks.

 -Multiple networks are created based upon settings in the heat
  resource registry. These nets will either use the noop network (the
  control plane pass-thru default) or create a custom Neutron port on
  each of the configured networks.

 -The ipaddress/subnet of each network is passed passed into the
  NetworkConfig resource which drives os-net-config. This allows the
  deployer to define a custom network template for static IPs, etc
  on each of the networks.

 -The ipaddress is exposed as an output parameter. By exposing
  the individual addresses as outputs we allow Heat to construct
  collections of ports for various services.

Change-Id: I9984404331705f6ce569fb54a38b2838a8142faa

9 years agoAdd isolated network ports to ceph roles
Dan Prince [Wed, 6 May 2015 20:16:17 +0000 (16:16 -0400)]
Add isolated network ports to ceph roles

This patch updates the ceph roles so that
they can optionally make use of isolated network
ports on the storage and storage management networks.

 -Multiple networks are created based upon settings in the heat
  resource registry. These nets will either use the noop network (the
  control plane pass-thru default) or create a custom Neutron port on
  each of the configured networks.

 -The ipaddress/subnet of each network is passed passed into the
  NetworkConfig resource which drives os-net-config. This allows the
  deployer to define a custom network template for static IPs, etc
  on each of the networks.

 -The ipaddress is exposed as an output parameter. By exposing
  the individual addresses as outputs we allow Heat to construct
  collections of ports for various services.

Change-Id: I35cb8e7812202f8a7bc0379067bf33d483cd2aec

9 years agoAdd isolated network ports to compute roles
Dan Prince [Wed, 6 May 2015 19:57:12 +0000 (15:57 -0400)]
Add isolated network ports to compute roles

This patch updates the compute roles so that
they can optionally make use of isolated network
ports on the tenant, storage, and internal_api networks.

 -Multiple networks are created based upon settings in the heat
  resource registry. These nets will either use the noop network (the
  control plane pass-thru default) or create a custom Neutron port on
  each of the configured networks.

 -The ipaddress/subnet of each network is passed passed into the
  NetworkConfig resource which drives os-net-config. This allows the
  deployer to define a custom network template for static IPs, etc
  on each of the networks.

 -The ipaddress is exposed as an output parameter. By exposing
  the individual addresses as outputs we allow Heat to construct
  collections of ports for various services.

Change-Id: Ib07b4b7256ede7fb47ecc4eb5abe64b9144b9aa1

9 years agoAdd isolated network ports to controller roles
Dan Prince [Mon, 27 Apr 2015 15:55:10 +0000 (11:55 -0400)]
Add isolated network ports to controller roles

This patch updates the controller roles so that
they can optionally make use of isolated network
ports on each of 5 available overcloud networks.

 -Multiple networks are created based upon settings in the heat
  resource registry. These nets will either use the noop network (the
  control plane pass-thru default) or create a custom Neutron port on
  each of the configured networks.

 -The ipaddress/subnet of each network is passed passed into the
  NetworkConfig resource which drives os-net-config. This allows the
  deployer to define a custom network template for static IPs, etc
  on each of the networks.

 -The ipaddress is exposed as an output parameter. By exposing
  the individual addresses as outputs we allow Heat to construct
  collections of ports for various services.

Change-Id: I9bbd6c8f5b9697ab605bcdb5f84280bed74a8d66

9 years agoAdd isolated net parameters to net-config stacks
Dan Prince [Wed, 6 May 2015 19:12:34 +0000 (15:12 -0400)]
Add isolated net parameters to net-config stacks

This patch adds parameters so that we can pass in the
ipaddress/subnet for each of the isolated overcloud
traffic nets to os-net-config templates. This
interface change will allow deployers to plug
in a custom version of an os-net-config template
that drives isolated network configuration.

Change-Id: I35bbe9a0bd81e79f9bfd531fe89c700af8b354c4

9 years agoAdd a ports (ip address) abstraction layer
Dan Prince [Mon, 27 Apr 2015 15:00:52 +0000 (11:00 -0400)]
Add a ports (ip address) abstraction layer

This patch adds a set of templates to create ports on isolated
networks via Heat. There are 5 port templates in total
which are split out according to the available overcloud
networks.

Change-Id: I5175ef48c1960ea0d13fc8518328db53921c70cd

9 years agoMerge "Wire in optional network creation for overcloud"
Jenkins [Tue, 26 May 2015 12:39:33 +0000 (12:39 +0000)]
Merge "Wire in optional network creation for overcloud"

9 years agoovercloud stepped deployment environment
Steven Hardy [Thu, 5 Mar 2015 22:27:46 +0000 (17:27 -0500)]
overcloud stepped deployment environment

When combined with --with-steps added to devtest_overcloud:
https://review.openstack.org/#/c/162109/ this enables stepped
deployments using heat hooks.

This environment file will break on all *StepN resources in every
*NodesPostDeployment resource, on both create and update.

Change-Id: Ibab567f0a37b832ea2b5966288ad55b5682c31ab

9 years agoWire in optional network creation for overcloud
Dan Prince [Mon, 27 Apr 2015 14:53:30 +0000 (10:53 -0400)]
Wire in optional network creation for overcloud

This patch enables uses to selectively enable the creation
of split out networks for the overcloud traffic. These
networks will be created on the undercloud's neutron
instance.

By default a noop network is used so that no extra networks
are created. This allows our default to continue being
all traffic on the control plane.

Change-Id: Ied49d9458c2d94e9d8e7d760d5b2d971c7c7ed2d

9 years agoMerge "Firstboot rsync for development purposes"
Jenkins [Fri, 22 May 2015 12:22:02 +0000 (12:22 +0000)]
Merge "Firstboot rsync for development purposes"

9 years agoDefine Glance Pacemaker resources on $pacemaker_master node only
Giulio Fidente [Fri, 22 May 2015 11:51:51 +0000 (13:51 +0200)]
Define Glance Pacemaker resources on $pacemaker_master node only

Previously the Glance Pacemaker resources were mistakenly defined
on all nodes causing intermittent duplication errors.

Change-Id: I839ee49b153aa96ec08ebdb7e44aaeac28785963

9 years agoAdd Keystone as Pacemaker resource
Jay Dobies [Wed, 29 Apr 2015 14:15:26 +0000 (10:15 -0400)]
Add Keystone as Pacemaker resource

Change-Id: I4631f962415164975143e94ec0b251ee5972c552

9 years agoMerge "Add Glance as Pacemaker resource"
Jenkins [Fri, 22 May 2015 08:18:48 +0000 (08:18 +0000)]
Merge "Add Glance as Pacemaker resource"

9 years agoMerge "Add Cinder services as Pacemaker resources"
Jenkins [Fri, 22 May 2015 08:16:24 +0000 (08:16 +0000)]
Merge "Add Cinder services as Pacemaker resources"

9 years agoAlign puppet Controller post-deploy Deployment names
Steven Hardy [Tue, 12 May 2015 13:18:07 +0000 (09:18 -0400)]
Align puppet Controller post-deploy Deployment names

Align all Deployment resource so we can use a glob convention for
stepped deployments via heat hooks/breakpoints.

Since most resources already use a FooDeployment_StepN convention,
align those which deviate from this as a precursor to supporting
stepped deployment, e.g stepping through "*Deployment_Step*".

Change-Id: I6bfee04649aa36116d1141ebe06d08b310ec8939

9 years agoMerge "Overcloud: bump HOT version to 2015-04-30"
Jenkins [Thu, 21 May 2015 16:03:12 +0000 (16:03 +0000)]
Merge "Overcloud: bump HOT version to 2015-04-30"

9 years agoAdd Glance as Pacemaker resource
Giulio Fidente [Thu, 21 May 2015 15:11:19 +0000 (17:11 +0200)]
Add Glance as Pacemaker resource

Change-Id: If87cc4d55e8524246d2cd41a62805f84780006b2

9 years agoAdd Cinder services as Pacemaker resources
Jiri Stransky [Thu, 21 May 2015 09:28:25 +0000 (11:28 +0200)]
Add Cinder services as Pacemaker resources

Add Pacemaker resources for Cinder services, also add relevant ordering
and colocation constraints.

Change-Id: Idc2e1b5ec96d882543f7a1a4ec723a010020ab02

9 years agoMerge "Start non-pacemakerized services in step 4"
Jenkins [Thu, 21 May 2015 10:11:12 +0000 (10:11 +0000)]
Merge "Start non-pacemakerized services in step 4"

9 years agoWe don't need to create the clustercheck user anymore
Giulio Fidente [Thu, 21 May 2015 09:38:33 +0000 (11:38 +0200)]
We don't need to create the clustercheck user anymore

With change I4b6b77e878017bf92d7c59c868d393e74405a355 we started
using the root user for clustercheck script so we don't need to
create the clustercheck user anymore.

Change-Id: Ic92bd12baeeeaf3f674e766fbc0a8badfb44822f

9 years agoMerge "Use clustercheck script to control galera-ready"
Jenkins [Thu, 21 May 2015 08:20:48 +0000 (08:20 +0000)]
Merge "Use clustercheck script to control galera-ready"

9 years agoStart non-pacemakerized services in step 4
Jiri Stransky [Thu, 21 May 2015 08:16:46 +0000 (10:16 +0200)]
Start non-pacemakerized services in step 4

Previously we've been starting non-pacemakerized services in step 3 on
bootstrap node and in step 4 on others. Now that $sync_db in OpenStack
Puppet modules is decoupled from $enabled and $manage_service [1] we can
start the services in step 4 on all nodes.

[1] https://bugs.launchpad.net/puppet-glance/+bug/1452278

Change-Id: I6351d972ab00f4661d98338d95310d33f271de2f

9 years agoMerge "Prepare for adding OpenStack services to Pacemaker"
Jenkins [Thu, 21 May 2015 08:13:40 +0000 (08:13 +0000)]
Merge "Prepare for adding OpenStack services to Pacemaker"

9 years agoOvercloud: bump HOT version to 2015-04-30
Dan Prince [Wed, 20 May 2015 17:08:18 +0000 (10:08 -0700)]
Overcloud: bump HOT version to 2015-04-30

This patch bumps the HOT version for the overcloud
to Kilo 2015-04-30. We should have already done this
since we are making use of OS::stack_id (a kilo feature)
in some of the nested stacks. Also, this will give us access to
the new repeat function as well.

Change-Id: Ic534e5aeb03bd53296dc4d98c2ac5971464d7fe4

9 years agoMerge "Move sysctl settings into hieradata"
Jenkins [Wed, 20 May 2015 17:23:55 +0000 (17:23 +0000)]
Merge "Move sysctl settings into hieradata"

9 years agoMerge "Set up corosync using hostnames rather than IPs"
Jenkins [Wed, 20 May 2015 15:40:43 +0000 (15:40 +0000)]
Merge "Set up corosync using hostnames rather than IPs"

9 years agoMove sysctl settings into hieradata
Giulio Fidente [Tue, 19 May 2015 09:23:09 +0000 (11:23 +0200)]
Move sysctl settings into hieradata

This will configure the sysctl settings via puppet instead of
sysctl image element.

Change-Id: Ieb129d4cbe4b6d4184172631499ecd638073564f

9 years agoMerge "Clone params for pacemaker rabbitmq resource"
Jenkins [Wed, 20 May 2015 14:51:26 +0000 (14:51 +0000)]
Merge "Clone params for pacemaker rabbitmq resource"

9 years agoMerge "Provide RabbitMQ clients with a list of servers instead of VIP"
Jenkins [Wed, 20 May 2015 14:51:19 +0000 (14:51 +0000)]
Merge "Provide RabbitMQ clients with a list of servers instead of VIP"

9 years agoUse clustercheck script to control galera-ready
Giulio Fidente [Wed, 20 May 2015 14:19:28 +0000 (10:19 -0400)]
Use clustercheck script to control galera-ready

The exec timeout/attempts is configured so that it is
left running for up to 30mins if the command runs but is
unsuccessfull and up to 2h if the command times out.

Change-Id: I4b6b77e878017bf92d7c59c868d393e74405a355

9 years agoEnsures mongodb configuration only happens if mongodb is needed
Giulio Fidente [Wed, 20 May 2015 13:48:49 +0000 (15:48 +0200)]
Ensures mongodb configuration only happens if mongodb is needed

Change-Id: I7e9eb665275bd48d9c079934cc01ba62b5f59e16

9 years agoPrepare for adding OpenStack services to Pacemaker
Jiri Stransky [Wed, 20 May 2015 08:26:08 +0000 (10:26 +0200)]
Prepare for adding OpenStack services to Pacemaker

We need to write config for OpenStack services on all nodes in step 3 so
that we can then create pacemaker resources in step 4. (If we wrote
config on non-bootstrap nodes in step 4 as it is currently, services on
those nodes might be started unconfigured. This is an inter-node
ordering issue that cannot be easily solved from within Puppet
manifests, hence the use of steps to enforce this ordering.)

Change-Id: Ia78ec38520bd1295872ea2690e8d3f8d6b01c46c

9 years agoMerge "Consolidate use of $pacemaker_master in step 2"
Jenkins [Wed, 20 May 2015 08:55:19 +0000 (08:55 +0000)]
Merge "Consolidate use of $pacemaker_master in step 2"

9 years agoMerge "Enable VIPs via Pacemaker from step 2 instead of step 1"
Jenkins [Wed, 20 May 2015 08:51:26 +0000 (08:51 +0000)]
Merge "Enable VIPs via Pacemaker from step 2 instead of step 1"

9 years agoMerge "Move NTP and Memacache respectively into step 1 and step 2"
Jenkins [Wed, 20 May 2015 08:48:15 +0000 (08:48 +0000)]
Merge "Move NTP and Memacache respectively into step 1 and step 2"

9 years agoMerge "Ensure sync_db is consumed by Keystone and Cinder classes"
Jenkins [Wed, 20 May 2015 08:45:16 +0000 (08:45 +0000)]
Merge "Ensure sync_db is consumed by Keystone and Cinder classes"

9 years agoMerge "Remove unused enable_pacemaker setting from templates"
Jenkins [Tue, 19 May 2015 15:55:08 +0000 (15:55 +0000)]
Merge "Remove unused enable_pacemaker setting from templates"

9 years agoMerge "Configure HAProxy, Galera and MongoDB before start"
Jenkins [Tue, 19 May 2015 15:54:41 +0000 (15:54 +0000)]
Merge "Configure HAProxy, Galera and MongoDB before start"

9 years agoMerge "Update to reflect puppet-pacemaker changes"
Jenkins [Tue, 19 May 2015 15:54:29 +0000 (15:54 +0000)]
Merge "Update to reflect puppet-pacemaker changes"

9 years agoMerge "Fix RabbitMQ startup race"
Jenkins [Tue, 19 May 2015 15:53:33 +0000 (15:53 +0000)]
Merge "Fix RabbitMQ startup race"

9 years agoClone params for pacemaker rabbitmq resource
Jiri Stransky [Tue, 19 May 2015 15:02:05 +0000 (17:02 +0200)]
Clone params for pacemaker rabbitmq resource

Set clone params according to [1].

[1] https://github.com/beekhof/osp-ha-deploy/blob/f8a65ab4c34f94737edde7db60337b830bfe6311/pcmk/rabbitmq.scenario

Change-Id: I5644de2d6253ab762a1420560ecb5bee2fd83092
Co-Authored-By: Giulio Fidente <gfidente@redhat.com>
9 years agoProvide RabbitMQ clients with a list of servers instead of VIP
Giulio Fidente [Thu, 7 May 2015 17:05:13 +0000 (13:05 -0400)]
Provide RabbitMQ clients with a list of servers instead of VIP

This will change the way how RabbitMQ clients get to the servers,
they will not go through HAProxy anymore.

Change-Id: I522d7520b383a280505e0e7c8fecba9ac02d2c9b

9 years agoConsolidate use of $pacemaker_master in step 2
Giulio Fidente [Mon, 18 May 2015 14:57:55 +0000 (10:57 -0400)]
Consolidate use of $pacemaker_master in step 2

Aims at having the Pacemaker resources configuration happening
in a single if condition.

Change-Id: I497538510f80a356e876d476024671b787b77fc9

9 years agoEnable VIPs via Pacemaker from step 2 instead of step 1
Giulio Fidente [Mon, 18 May 2015 14:28:26 +0000 (10:28 -0400)]
Enable VIPs via Pacemaker from step 2 instead of step 1

Change-Id: I724c341f148fedf725f3b3da778e491741b754ae

9 years agoMerge "Environment which configures puppet pacemaker."
Jenkins [Tue, 19 May 2015 09:11:24 +0000 (09:11 +0000)]
Merge "Environment which configures puppet pacemaker."

9 years agoMerge "Add a directory for overcloud heat environments"
Jenkins [Tue, 19 May 2015 09:10:24 +0000 (09:10 +0000)]
Merge "Add a directory for overcloud heat environments"

9 years agoMove NTP and Memacache respectively into step 1 and step 2
Giulio Fidente [Mon, 18 May 2015 15:44:57 +0000 (11:44 -0400)]
Move NTP and Memacache respectively into step 1 and step 2

NTP synchronization is moved to to step 1 where initial Pacemaker
configuration is performed.

Memacached is moved to step 2 to make sure it is up before the
OpenStack services are started.

Change-Id: I84121a687ee5ddb522239ecefd4d1d76c2f910b5

9 years agoEnsure sync_db is consumed by Keystone and Cinder classes
Giulio Fidente [Mon, 18 May 2015 13:29:09 +0000 (09:29 -0400)]
Ensure sync_db is consumed by Keystone and Cinder classes

Change-Id: Ia8cb04b214c71afc884647fb20be3cc1a309c194

9 years agoRemove unused enable_pacemaker setting from templates
Giulio Fidente [Mon, 18 May 2015 13:17:31 +0000 (09:17 -0400)]
Remove unused enable_pacemaker setting from templates

Use of Pacemaker is governed by the resource registry since
change Ibefb80d0d8f98404133e4c31cf078d729b64dac3

Change-Id: I2f1fa8d6d28ae009940be2c2c530066197aa543b

9 years agoConfigure HAProxy, Galera and MongoDB before start
Jiri Stransky [Mon, 18 May 2015 12:32:49 +0000 (14:32 +0200)]
Configure HAProxy, Galera and MongoDB before start

As with RabbitMQ previously, we can hit the same race conditions between
config being written on all nodes vs. pacemaker starting the
services. Configuring the services at least one step earlier than
starting them will allow us to get rid of this race condition.

Change-Id: I78f47dfb82ca8609ed40f784d65ba92db3d411f3

9 years agoUpdate to reflect puppet-pacemaker changes
Jiri Stransky [Thu, 14 May 2015 16:08:58 +0000 (18:08 +0200)]
Update to reflect puppet-pacemaker changes

Recently puppet-pacemaker has changed in a backward incompatible way, we
need to reflect the changes in TripleO.

This patch also addresses non-deterministic order between corosync
service and VIP creation.

Depends-On: Ia68fee38f99dba18badc07eb0adbc473cfcffdf3
Change-Id: Ia7fe14cfb1401be98b62afeed589bb9f1b8af761
Co-Authored-By: Yanis Guenane <yanis.guenane@enovance.com>
9 years agoSet up corosync using hostnames rather than IPs
Jiri Stransky [Mon, 27 Apr 2015 12:02:19 +0000 (14:02 +0200)]
Set up corosync using hostnames rather than IPs

This ensures that the hosts in Corosync and in Pacemaker are the same,
to make our cluster setup compatible with the recommended architecture.

Change-Id: Id81f315768edd24b8978b8de7093e04904591ce2
Closes-Bug: #1447497
Depends-On: Idb9ad017ffb1048f38fedbd55cc974785f6b1c38

9 years agoFix RabbitMQ startup race
Giulio Fidente [Fri, 15 May 2015 09:49:16 +0000 (11:49 +0200)]
Fix RabbitMQ startup race

The Pacemaker resource agent might have attempted to start the
service when the rabbitmq-env.conf file wasn't written yet, making
it attempt to bind on 0.0.0.0

Co-Authored-By: Jason Guiditta <jguiditt@redhat.com>
Co-Authored-By: Jiri Stransky <jistr@redhat.com>
Change-Id: I081a0bfc6fc3943b8ade71799357022d29317d79

9 years agoEnvironment which configures puppet pacemaker.
Dan Prince [Thu, 14 May 2015 15:53:28 +0000 (11:53 -0400)]
Environment which configures puppet pacemaker.

Change-Id: I314955708ff99a557da5a6d223b1f56bd51855d9

9 years agoAdd a directory for overcloud heat environments
Dan Prince [Thu, 14 May 2015 15:49:34 +0000 (11:49 -0400)]
Add a directory for overcloud heat environments

This patch adds a new directory called environments which contains
custom Heat environment files that can be used to enable custom
overcloud features. As an initial example a puppet-ceph-devel.yaml
environment has been added which can be used to spin up a small Ceph
cluster for dev/testing.

This directory may be useful for collecting other
feature related Heat environment settings in the future as well.
Things like isolated network settings, etc.

Change-Id: Ia6998ae05d2363384d2a616a31d5795c8b2d85d5

9 years agoMerge "Ensure haproxy is not enabled by puppet-tripleo when EnablePacemaker"
Jenkins [Fri, 15 May 2015 09:07:21 +0000 (09:07 +0000)]
Merge "Ensure haproxy is not enabled by puppet-tripleo when EnablePacemaker"

9 years agoMerge "Makes sure galera can handle the connections"
Jenkins [Fri, 15 May 2015 08:59:35 +0000 (08:59 +0000)]
Merge "Makes sure galera can handle the connections"

9 years agoMakes sure galera can handle the connections
marios [Thu, 14 May 2015 13:38:06 +0000 (16:38 +0300)]
Makes sure galera can handle the connections

Increases the max_connections since this is currently set to 151.
This causes problems in a baremetal environment with multiple CPUs.
A related change is @ https://review.openstack.org/#/c/183046/2
for haproxy. There is also a bug report at

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

Change-Id: I9b4690191616cc04c4edc7b2402bd9ec54a7d17d

9 years agoMerge "Use pacemaker::resource::service instead of ::systemd"
Jenkins [Thu, 14 May 2015 16:35:13 +0000 (16:35 +0000)]
Merge "Use pacemaker::resource::service instead of ::systemd"

9 years agoEnsure haproxy is not enabled by puppet-tripleo when EnablePacemaker
Giulio Fidente [Mon, 11 May 2015 13:22:29 +0000 (15:22 +0200)]
Ensure haproxy is not enabled by puppet-tripleo when EnablePacemaker

Change-Id: Icfe70de72eb2cf09fe2d00d9ae49baebc79e1886

9 years agoMerge "Create split out neutron networks via Heat."
Jenkins [Wed, 13 May 2015 20:43:28 +0000 (20:43 +0000)]
Merge "Create split out neutron networks via Heat."

9 years agoMerge "Add Galera as a Pacemaker resource when EnablePacemaker"
Jenkins [Wed, 13 May 2015 16:50:37 +0000 (16:50 +0000)]
Merge "Add Galera as a Pacemaker resource when EnablePacemaker"

9 years agoAdd Galera as a Pacemaker resource when EnablePacemaker
Yanis Guenane [Mon, 27 Apr 2015 13:25:43 +0000 (15:25 +0200)]
Add Galera as a Pacemaker resource when EnablePacemaker

This commit aims to support the creation of the galera cluster via
Pacemaker. With this commit in, three use-cases will be supported.

 * Non HA setup / Non Pacemaker setup : The deployment will take place
as it is currently the case in f20puppet-nonha. Nothing changes.

 * Non HA setup / Pacemaker setup : Even though it is a non ha setup,
galera cluster via pacemaker  will be deployed with a cluster nbr of 1.

 * HA setup / Non Pacemaker setup : N/A

 * HA setup / Pacemaker setup : It is assumed that HA setup will
always be with pacemaker.  So in this situation pacemaker will deploy a
cluster of 3 galera master nodes.

Depends-On: I7aed9acec11486e0f4f67e4d522727476c767d83
Change-Id: If0c37a86fa8b5aa6d452129bccf7341a3a3ba667

9 years agoUse optimized config for RabbitMQ cluster
Giulio Fidente [Mon, 11 May 2015 13:37:07 +0000 (15:37 +0200)]
Use optimized config for RabbitMQ cluster

Use some optimized configuration settings for RabbitMQ when
clustered. Data is ported from Astapor.

Change-Id: If54aff5654dbe75e68197588be12cb3995c77ec7

9 years agoUse pacemaker::resource::service instead of ::systemd
Giulio Fidente [Mon, 11 May 2015 13:26:27 +0000 (15:26 +0200)]
Use pacemaker::resource::service instead of ::systemd

The puppet-pacemaker module realizes some abstraction for the
different service types in ::service already.

Change-Id: Icd897e18fda01b1bf4722a975c991e26341ac129
Closes-Bug: 1449988

9 years agoPuppet: Split out controller pacemaker manifest
Dan Prince [Thu, 7 May 2015 02:22:39 +0000 (22:22 -0400)]
Puppet: Split out controller pacemaker manifest

This patch adds support for using the Heat resource registry
so that end users can enable pacemaker. Using this approach
allows us to isolate all of the pacemaker logic for the
controller in a single template rather than use conditionals
for every service that must support it.

Change-Id: Ibefb80d0d8f98404133e4c31cf078d729b64dac3

9 years agoCreate split out neutron networks via Heat.
Dan Prince [Mon, 27 Apr 2015 14:46:28 +0000 (10:46 -0400)]
Create split out neutron networks via Heat.

This patch adds a new abstraction for network creation
within Heat. This (optional) set of templates may be disabled
if you wish to create Neutron networks for the undercloud
via Heat templates... instead of using os-cloud-config
JSON to do so. Creating networks with Heat has the benefit
of being parameter driven so that users can quickly
enable networks using the resource registry and parameters.

There are 5 networks to start with which are roughly modeled
around networks an Overcloud user might want to use to isolate
their traffic. The intent is to make these opt-in and
configurable for end users.

The networks.yaml template can be used to create all of the
networks using parameters in the resource registry.

Change-Id: I5f2b3356378eb263d90d428cc83c7f5b141957e1

9 years agoMerge "Add MongoDB as a Pacemaker resource when EnablePacemaker"
Jenkins [Tue, 5 May 2015 20:55:17 +0000 (20:55 +0000)]
Merge "Add MongoDB as a Pacemaker resource when EnablePacemaker"

9 years agoMerge "puppet: install Horizon on overcloud-controller"
Jenkins [Tue, 5 May 2015 13:11:43 +0000 (13:11 +0000)]
Merge "puppet: install Horizon on overcloud-controller"

9 years agoMerge "Move Ceph OSD data path configuration into static ceph.yaml file"
Jenkins [Tue, 5 May 2015 08:58:36 +0000 (08:58 +0000)]
Merge "Move Ceph OSD data path configuration into static ceph.yaml file"

9 years agoAdd MongoDB as a Pacemaker resource when EnablePacemaker
Yanis Guenane [Tue, 28 Apr 2015 12:52:49 +0000 (14:52 +0200)]
Add MongoDB as a Pacemaker resource when EnablePacemaker

This commit allows one to configure MongoDB as a pacemaker resource when
EnablePacemaker is set to true

Change-Id: Iedfba3eb851442d0ca3b8c0a7163a63285ab6071

9 years agoMerge "Add support for Glance RBD backend"
Jenkins [Mon, 4 May 2015 16:49:08 +0000 (16:49 +0000)]
Merge "Add support for Glance RBD backend"

9 years agoAdd support for Glance RBD backend
Dan Prince [Thu, 9 Apr 2015 12:41:24 +0000 (08:41 -0400)]
Add support for Glance RBD backend

This patch adds support for a new GlanceBackend setting
which can be set to one of swift, rbd, or file to control
which Glance backend is configured for use by default.

Change-Id: Id6a3fbc3477e85e8e2446e3dc13d424f9535d0ff

9 years agoFirstboot rsync for development purposes
Jiri Stransky [Thu, 30 Apr 2015 17:37:32 +0000 (19:37 +0200)]
Firstboot rsync for development purposes

Could be used to e.g. make changes to the puppet modules on the fly
without the need to rebuild images. Documented in the template
description.

Change-Id: I6a1fef20d4f4afa4bedac5ea520949697793f0ed

9 years agoRevert "Keystone domain for Heat"
Dan Prince [Fri, 1 May 2015 16:22:31 +0000 (12:22 -0400)]
Revert "Keystone domain for Heat"

This reverts commit 7313930c22b9f18d67e630de084ffcc6fad5ebe7.

Seeing errors when trying to create the keystone admin
role with packages. (ImportError: No module named os_client_config)

Change-Id: I78796598ccb8d2ffd6bfca85dce7d18dc0fd768e
Related-bug: #1450786

9 years agoReuse the various service passwords as db passwords.
Derek Higgins [Thu, 30 Apr 2015 13:50:15 +0000 (14:50 +0100)]
Reuse the various service passwords as db passwords.

We need to stop using "unset" as the password for all databases. Ideally we
would add a "XxxxDSN" parameter (e.g. KeystoneDSN) but this wont work because
we don't know the VirtualIP to pass in.

Until we can come up with a better solution we should at least get rid of
the "unset" passwords.

Change-Id: I31f45912fa9c116ccdee010a2c5d91ea43a25671
Depends-On: I8ffe1eb481f615b0fbe127cd8107f1e70794c839

9 years agoMerge "Keystone domain for Heat"
Jenkins [Thu, 30 Apr 2015 14:09:58 +0000 (14:09 +0000)]
Merge "Keystone domain for Heat"