apex-tripleo-heat-templates.git
9 years agoMerge "Fixup network configuration for ext-net"
Jenkins [Mon, 25 Aug 2014 20:18:57 +0000 (20:18 +0000)]
Merge "Fixup network configuration for ext-net"

9 years agoMySQL connections via HAProxy should not timeout
Kiall Mac Innes [Thu, 21 Aug 2014 18:36:22 +0000 (19:36 +0100)]
MySQL connections via HAProxy should not timeout

With the default 60 second timeout, many services will periodically
log "MySQL has gone away" as HAProxy has closed the connection.

Change-Id: Ied67344fbabcd77def4483be37a4706190ab28a0

9 years agoMerge "Set vnc to use controller virtual_ip"
Jenkins [Mon, 25 Aug 2014 04:23:32 +0000 (04:23 +0000)]
Merge "Set vnc to use controller virtual_ip"

9 years agoMerge "Make signal_transport a parameter"
Jenkins [Mon, 25 Aug 2014 04:18:47 +0000 (04:18 +0000)]
Merge "Make signal_transport a parameter"

9 years agoSet vnc to use controller virtual_ip
Ryan Moore [Fri, 20 Jun 2014 14:23:27 +0000 (15:23 +0100)]
Set vnc to use controller virtual_ip

The address for the vnc proxy is incorrectly configured in the nova
configuration file.
The correct IP address is the Public Virtual IP address of the
controller node as created by:
    I9649ee74ebaf62b6b929b28243a07c789a08867c

The nova image_element nova.conf already has:
  novncproxy_base_url=http://{{nova.public_ip}}:6080/vnc_auto.html
but nothing was setting nova.public_ip - until now

Closes-Bug: #1332554
Change-Id: I41214834511680170393dd4325b510f549373141

9 years agoMerge "Remove hardcoded version."
Jenkins [Wed, 20 Aug 2014 21:35:48 +0000 (21:35 +0000)]
Merge "Remove hardcoded version."

9 years agoRemove hardcoded version.
Robert Collins [Wed, 20 Aug 2014 01:04:17 +0000 (13:04 +1200)]
Remove hardcoded version.

We use semantic versioning, not pbr's pre-version facility. This
line causes local package builds to have the wrong version, and
pbr will in future detect this and error.

Change-Id: Ia625d31e87d137e867badcdeac1f33630257bb8c

9 years agoMerge "Set the MySQL root password"
Jenkins [Tue, 19 Aug 2014 13:17:50 +0000 (13:17 +0000)]
Merge "Set the MySQL root password"

9 years agoMake signal_transport a parameter
Clint Byrum [Tue, 12 Aug 2014 00:13:22 +0000 (17:13 -0700)]
Make signal_transport a parameter

There may be times where an update needs to change this without changing
the template, such as when updates will be done by something other than
Heat (i.e. Ansible).

Change-Id: I89d1153acab697b64468f841b3f2d17c169da649

9 years agoMerge "Fix bash env var conditionals in merge.py call to be consistent"
Jenkins [Mon, 18 Aug 2014 22:15:14 +0000 (22:15 +0000)]
Merge "Fix bash env var conditionals in merge.py call to be consistent"

9 years agoMerge "Make BlockStorage deployment dependent on controller0AllNodes"
Jenkins [Mon, 18 Aug 2014 19:10:17 +0000 (19:10 +0000)]
Merge "Make BlockStorage deployment dependent on controller0AllNodes"

9 years agoMerge "Ensure glance.host and glance.cinder are set for BlockStorage nodes"
Jenkins [Mon, 18 Aug 2014 14:54:26 +0000 (14:54 +0000)]
Merge "Ensure glance.host and glance.cinder are set for BlockStorage nodes"

9 years agoMerge "Rename NovaCompute resources suffix to be consistent with controller"
Jenkins [Mon, 18 Aug 2014 13:09:34 +0000 (13:09 +0000)]
Merge "Rename NovaCompute resources suffix to be consistent with controller"

9 years agoEnsure glance.host and glance.cinder are set for BlockStorage nodes
Giulio Fidente [Tue, 5 Aug 2014 16:39:49 +0000 (18:39 +0200)]
Ensure glance.host and glance.cinder are set for BlockStorage nodes

Change-Id: I03056681b795a2078a678dcb0cd29002310e5843
Related-bug: 1351110

9 years agoMake BlockStorage deployment dependent on controller0AllNodes
Giulio Fidente [Thu, 14 Aug 2014 16:38:42 +0000 (18:38 +0200)]
Make BlockStorage deployment dependent on controller0AllNodes

As per the NovaCompute nodes, this change makes deployment of
BlockStorage nodes dependent on controller0AllNodes.

Change-Id: I4bc4d33d42463a0abadc2bfd4e48b1a4e554d396

9 years agoMerge "Use VIP for rabbit/keystone and mysql in block-storage.yaml"
Jenkins [Fri, 15 Aug 2014 20:02:03 +0000 (20:02 +0000)]
Merge "Use VIP for rabbit/keystone and mysql in block-storage.yaml"

9 years agoMerge "Remove unneeded neutron config parts from block-storage.yaml"
Jenkins [Fri, 15 Aug 2014 19:58:35 +0000 (19:58 +0000)]
Merge "Remove unneeded neutron config parts from block-storage.yaml"

9 years agoMerge "Add strict dependencies to the undercloud template"
Jenkins [Fri, 15 Aug 2014 12:44:50 +0000 (12:44 +0000)]
Merge "Add strict dependencies to the undercloud template"

9 years agoReplace occurrences of list_join with Fn::Join
Giulio Fidente [Thu, 14 Aug 2014 17:04:58 +0000 (19:04 +0200)]
Replace occurrences of list_join with Fn::Join

When change I6730ffe1e27d952d563c16a9480298fbef9f61fe got merged we
introduced some occurrences of list_join which should have been
migrated to Fn::Join (change I039f57ab39c1fcfc319a7a34265ba4fabf4ccd08)

This caused overcloud CI jobs to fail with:
Property error : allNodesConfig: config Items to join must be strings

This change fixes this by replacing newly introduced occurrences
of list_join with Fn::Join

Change-Id: Ibac193781d31d6f81e955e7b9381e13cfdd0ab1d

9 years agoUse VIP for rabbit/keystone and mysql in block-storage.yaml
Giulio Fidente [Thu, 14 Aug 2014 16:18:20 +0000 (18:18 +0200)]
Use VIP for rabbit/keystone and mysql in block-storage.yaml

Previously BlockStorage nodes were using the controller ip instead of the virtual ip to reach rabbit, keystone and mysql.

Change-Id: I23f87511e59d4d3527403b1a81c1b3df65c6a904

9 years agoRemove unneeded neutron config parts from block-storage.yaml
Giulio Fidente [Tue, 5 Aug 2014 16:28:45 +0000 (18:28 +0200)]
Remove unneeded neutron config parts from block-storage.yaml

Some of the keys defined in block-storage.yaml for neutron and
passed to the BlockStorage nodes were related to neutron, but
BlockStorage nodes do not route instances traffic so do not need
to be deployed with the OVS agent.

Change-Id: Icc7d5ea0d91370ccdf7cb4742d052fea004bae44

9 years agoMerge "Add BlockStorage and SwiftStorage nodes into hosts"
Jenkins [Thu, 14 Aug 2014 15:50:22 +0000 (15:50 +0000)]
Merge "Add BlockStorage and SwiftStorage nodes into hosts"

9 years agoMerge "Fix BLOCKSTORAGESCALE and SWIFTSTORAGESCALE in Makefile"
Jenkins [Thu, 14 Aug 2014 15:47:29 +0000 (15:47 +0000)]
Merge "Fix BLOCKSTORAGESCALE and SWIFTSTORAGESCALE in Makefile"

9 years agoAdd strict dependencies to the undercloud template
Nicholas Randon [Thu, 14 Aug 2014 10:40:29 +0000 (11:40 +0100)]
Add strict dependencies to the undercloud template

Currently there is very weak ordering of StructuredDeployments during
heat stack creation on the undercloud. This can cause the deployment which
sends the completion signal back to Heat to happen before all others have
completed, which in turn leads Heat to state the stack is ready while ORC
is still configuring services

The only workaround to this is to wait an unknown amount of time after the
heat stack completes before the system is usable.

This patch prevents the completion signal from being returned early, by
ensuring these are strictly ordered:
   undercloudIronicDeployment (if used)
   undercloudNovaDeployment
   undercloudPassthroughDeployment
   undercloudDeployment

Note: The reference numbering for the undercloud has been removed.
Change-Id: I98499dd54bb907d29cf355fe83b5c285a7375e97

9 years agoSet the MySQL root password
Therese McHale [Wed, 25 Jun 2014 15:32:08 +0000 (16:32 +0100)]
Set the MySQL root password

Set the MySQL root password to a random string
for the undercloud and overcloud

Change-Id: I6d38ca82c77a4aa8f58089c50aa5bf320ec0ecc6

9 years agoFixup network configuration for ext-net
Robert Collins [Sat, 19 Jul 2014 22:05:24 +0000 (10:05 +1200)]
Fixup network configuration for ext-net

We currently make the external network a single-node gre network but
this is not at all correct for HA environments - we need a provider
network, which means having a bridge mapping, a flat network
specified, and then because we run the same ovs config everywhere we
need br-ex on the hypervisors too. This is entirely reasonable since
DVR will require this as well (and solve lots of scaling issues...).

Change-Id: I8b63ab51e7e20b235430fad8d786d8da005d84a1

9 years agoMerge "Make removing nodes from scaled items possible."
Jenkins [Wed, 13 Aug 2014 20:05:17 +0000 (20:05 +0000)]
Merge "Make removing nodes from scaled items possible."

9 years agoSwitch to heat_template_version: 2013-05-23
Steve Baker [Sun, 10 Aug 2014 21:18:01 +0000 (09:18 +1200)]
Switch to heat_template_version: 2013-05-23

To support underclouds and seeds running older than the very
latest heat.

2013-05-23 lacks function list_join, so this change reverts to
using the equivalent function Fn::Join.

Change-Id: I039f57ab39c1fcfc319a7a34265ba4fabf4ccd08
Closes-Bug: #1354305

9 years agoChange overcloud to use VIP for MySQL
Julia Kreger [Wed, 9 Jul 2014 20:43:35 +0000 (16:43 -0400)]
Change overcloud to use VIP for MySQL

This change sets applications to utilize the VIP address for database
connectivity and sets HAProxy in between the applications and MySQL.

Depends upon tripleo-image-elements changes:
    Ia6f26305f8e744e4ff938dff85de1193183ecd8f
    Iac1274cc52014f25887d696261b32146afc926dd
    I5af70abb96021146c098f788db349808d806a348

Related to blueprint tripleo-icehouse-ha-production-configuration

Change-Id: Ia9d6ed2771f756d2a97ae5df7ed737a062a59cf2

9 years agoMove cacert property out of "stunnel" and into a new "ssl" group
Jonathan Brownell [Mon, 28 Jul 2014 19:46:02 +0000 (12:46 -0700)]
Move cacert property out of "stunnel" and into a new "ssl" group

The CA certificate is currently passed via ssl-source.yaml as
"stunnel.cacert", but this value is not currently used by stunnel
since we have no use case for client cert authentication.

This change proposes that it also be exposed as
"ssl.ca_certificate", which is consistent with the overall SSL
direction being driven by the PKI spec:
  I32473fe797a4c1e28d14c3b82c8892c7c59a4e55

This new CA certificate value will be installed as a trusted CA
on all cloud nodes that issue SSL-secured connection requests to
OpenStack or other infrastructure (MySQL, RabbitMQ) services.

Change-Id: Ibacd7c98980520e11c0df89632013f2ba2dbe370

9 years agoMerge "Restore rabbit.host and add an haproxy rabbit listener"
Jenkins [Tue, 12 Aug 2014 12:12:43 +0000 (12:12 +0000)]
Merge "Restore rabbit.host and add an haproxy rabbit listener"

9 years agoMake removing nodes from scaled items possible.
Robert Collins [Tue, 12 Aug 2014 03:29:19 +0000 (15:29 +1200)]
Make removing nodes from scaled items possible.

This makes it possible to remove a dead node (e.g. if NovaCompute2 has
failed, regenerate the template with ,2 in the scale parameter, and
NovaCompute2 will not be enumerated.

Change-Id: I65d85a88152ed4adee60895173f8a05611a6440b

9 years agoMerge "Fix overcloud controller scaling"
Jenkins [Sun, 10 Aug 2014 05:45:33 +0000 (05:45 +0000)]
Merge "Fix overcloud controller scaling"

9 years agoRestore rabbit.host and add an haproxy rabbit listener
Giulio Fidente [Mon, 4 Aug 2014 19:02:18 +0000 (21:02 +0200)]
Restore rabbit.host and add an haproxy rabbit listener

To balance load over the rabbit cluster we want to route access
to it via haproxy.

This also helps workaround bug #856764 as an additional benefit.

This change sets rabbit.host to the ControlVirtualIP (to be used by
the elements) and adds an haproxy listener for the rabbit nodes.

Related to blueprint tripleo-icehouse-ha-production-configuration
Depends on I3ff37ec18b9191ca8e861519bed142cbdbd5faa2

Change-Id: I49b622a604542f456bd9a37da8dae3353218e640
Related-Bug: 856764

9 years agoMerge "Use VIP for keystone host in swift template"
Jenkins [Fri, 8 Aug 2014 10:34:12 +0000 (10:34 +0000)]
Merge "Use VIP for keystone host in swift template"

9 years agoMerge "fix incorrect reference to rabbit_username"
Jenkins [Fri, 8 Aug 2014 10:33:28 +0000 (10:33 +0000)]
Merge "fix incorrect reference to rabbit_username"

9 years agoMerge "Move config options under neutron.ovs"
Jenkins [Fri, 8 Aug 2014 08:12:49 +0000 (08:12 +0000)]
Merge "Move config options under neutron.ovs"

9 years agoMerge "Set basic pacemaker and corosync properties in undercloud"
Jenkins [Thu, 7 Aug 2014 22:26:55 +0000 (22:26 +0000)]
Merge "Set basic pacemaker and corosync properties in undercloud"

9 years agoFix overcloud controller scaling
Tomas Sedovic [Thu, 7 Aug 2014 09:39:16 +0000 (11:39 +0200)]
Fix overcloud controller scaling

Controller scaling was broken by the commit
02772ba2877b9f6d427c6fd760bf19d6334c68a8. Merge.py raises an exception
when it tries to scale the default value "controller0" of the
`BootstrapNodeResource` parameter.

This reverts back to using Fn::Select for specifying the bootstrap host,
the rest of the Fn::Select -> get_attr changes are kept.

Change-Id: I0cdebf75d4752a35f547d4fbb81545ece3172405

9 years agoUse VIP for keystone host in swift template
Jan Provaznik [Thu, 31 Jul 2014 12:40:38 +0000 (08:40 -0400)]
Use VIP for keystone host in swift template

As a side effect this fixes invalid keystone host generation
when multiple controller nodes are used.

Change-Id: I081976f0da94fc0232dfa2c34de03bbb4abf1a85

9 years agoSet basic pacemaker and corosync properties in undercloud
Jan Provaznik [Thu, 31 Jul 2014 19:30:07 +0000 (15:30 -0400)]
Set basic pacemaker and corosync properties in undercloud

Because services which depend on pacemaker (ceilometer central
agent and neutron services) are used in undercloud too, we need to
set basic pacemaker and corosync metadata for undercloud.

Related to: Ifa83d62c2132bcdcb40d0b7c80ce3adadc0b5587
Related to: I63f054a8c80f9f676a77341c89e605b5b472d078
Change-Id: Icc97e36a1db198b973041346cf2056f68de661a2

9 years agoRename NovaCompute resources suffix to be consistent with controller
Giulio Fidente [Mon, 4 Aug 2014 19:30:06 +0000 (21:30 +0200)]
Rename NovaCompute resources suffix to be consistent with controller

This change renames a few NovaCompute resources so that the naming
is consistent with the controller resources naming choice.

Change-Id: I8c22867b208c5e16fd52bb3157f838f762b71470

9 years agoMove config options under neutron.ovs
James Slagle [Wed, 23 Jul 2014 19:30:26 +0000 (15:30 -0400)]
Move config options under neutron.ovs

These config options are supposed to be under neutron.ovs (see template
for neutron openvswitch agent). They were mistakenly moved to be just
under neutron when the migration to SoftwareConfig was done.

Change-Id: I5769dc1dc501d48c965f8e4e36238cfcaac64a17

9 years agoAdd BlockStorage and SwiftStorage nodes into hosts
Giulio Fidente [Tue, 5 Aug 2014 16:23:43 +0000 (18:23 +0200)]
Add BlockStorage and SwiftStorage nodes into hosts

With this we populate the hosts key (needed for /etc/hosts editing)
with the BlockStorage and SwiftStorage nodes too.

Change-Id: I6730ffe1e27d952d563c16a9480298fbef9f61fe

9 years agoFix BLOCKSTORAGESCALE and SWIFTSTORAGESCALE in Makefile
Giulio Fidente [Tue, 5 Aug 2014 16:14:16 +0000 (18:14 +0200)]
Fix BLOCKSTORAGESCALE and SWIFTSTORAGESCALE in Makefile

The BLOCKSTORAGESCALE and SWIFTSTORAGESCALE vars were incorrectly
ignored in the Makefile (and forcibly set to 0)

Change-Id: I37614153d8c87d25aa17e759fcd228a8a1fda4a4

9 years agoRemove duplicate config section from block-storage.yaml
Giulio Fidente [Tue, 5 Aug 2014 16:11:26 +0000 (18:11 +0200)]
Remove duplicate config section from block-storage.yaml

Deletes a duplicate config section from file block-storage.yaml
(and a duplicate admin-password key too).

Change-Id: I226517ea467751d00dbf217a6b6e4e0839538225

9 years agoFix bash env var conditionals in merge.py call to be consistent
Jonathan Brownell [Fri, 25 Jul 2014 21:07:52 +0000 (14:07 -0700)]
Fix bash env var conditionals in merge.py call to be consistent

Bash syntax ${ENV:-'0'} and ${ENV='0'} vary only in their behavior
when $ENV is set to an empty string (in which case the former
expression results in '0' while the latter results in ''.)

There is no reason the Makefile should be using the latter
expression, and rather confusing when the two different forms
are used side-by-side on the same line.

Change-Id: I66bb5ea7437c3f2aa9bc4e1afc9b522c450ff976

9 years agofix incorrect reference to rabbit_username
Giulio Fidente [Mon, 4 Aug 2014 19:14:26 +0000 (21:14 +0200)]
fix incorrect reference to rabbit_username

Fixes a typo in nova-compute-config.yaml file where rabbit_username
was mistakenly written as rabbit_user_name; compute nodes received
null as rabbit username as consequence.

Change-Id: I796b9bdccd1863647a667edbbc96731fc924c55d

9 years agoConvert Fn::Select to extended get_attr
Steve Baker [Fri, 18 Jul 2014 00:55:31 +0000 (12:55 +1200)]
Convert Fn::Select to extended get_attr

Overcloud bootstrap_nodeid is now specified by parameter
BootStrapNodeResource with default value controller0.
This avoids the need to use Fn::Select on the mergy.py
built list of controllers to specify the first controller.

Change-Id: Id9cfeab50b90ceeeae51ea0e35997b7495b28cc4
Partial-Blueprint: tripleo-juno-remove-mergepy

9 years agoPort all templates to HOT
Steve Baker [Sun, 3 Aug 2014 20:43:34 +0000 (08:43 +1200)]
Port all templates to HOT

This change was generated and validated by running the following:

    make hot clean all validate-all

This converts all templates to be valid HOT.

Fn::Select is not converted in this change but this will actually
work with heat_template_version 2013-05-23. Fn::Select is converted
manually in the next change in this series.

This change also sets the heat_template_version to 2014-10-16 which
includes the list_join intrinsic functions used throughout these
templates.

Partial-Blueprint: tripleo-juno-remove-mergepy
Change-Id: Ib3cbb83f6ae94adb7b793ab1b662bd5c55cbb5b3

9 years agoMerge "Remove ImageBuilder::Elements from templates"
Jenkins [Fri, 1 Aug 2014 11:13:34 +0000 (11:13 +0000)]
Merge "Remove ImageBuilder::Elements from templates"

9 years agoMerge "Fix swift memcache and device properties"
Jenkins [Fri, 1 Aug 2014 05:04:04 +0000 (05:04 +0000)]
Merge "Fix swift memcache and device properties"

9 years agomerge.py --hot to process and generate HOT
Steve Baker [Tue, 8 Jul 2014 00:14:28 +0000 (12:14 +1200)]
merge.py --hot to process and generate HOT

This adds a --hot flag to merge.py which will assume source templates
are in the HOT format, and generate a HOT template artifact.

Tests have also been ported to HOT, along with some minor corrections
to the existing tests to make the source and result templates valid
heat templates.

Partial-Blueprint: tripleo-juno-remove-mergepy

Change-Id: If18ff79f89456123c884a1ab2f910ce4cc9a6e0b

9 years agoAdd strict dependencies to the overcloud template
Nicholas Randon [Thu, 31 Jul 2014 11:46:20 +0000 (12:46 +0100)]
Add strict dependencies to the overcloud template

Currently there is very weak (no) ordering of StructuredDeployments during
heat stack creation (and, importantly, update) on the overcloud. This can
cause the deployment which sends the completion signal back to Heat to
happen before all others have completed, which in turn leads Heat to state
the stack is ready while ORC is still configuring services

The only workaround to this is to wait an unknown amount of time after the
heat stack completes before the system is usable.

This patch prevents the completion signal from being returned early, by
ensuring these are strictly ordered:
    controller0Deploy
    controller0Passthrough
    controller0AllNodesDeploy
    NovaCompute0Deploy
    NovaCompute0Passthrough
    NovaCompute0AllNodesDeploy

Change-Id: I0a549370b7aca55b1145de521ad51218428deaf5

9 years agoCorrect overcloud template to inherit passthrough
Nicholas Randon [Wed, 30 Jul 2014 09:17:56 +0000 (10:17 +0100)]
Correct overcloud template to inherit passthrough

Inherit passthrough from nova-compute-instance.yaml, rather than
having an exact copy in overcloud-source.yaml.

Change-Id: I4f5a4a7be5835cb68755734aa72f8d9670cba0d4

9 years agoRename NovaCompute0Config to NovaCompute0Deploy
Nicholas Randon [Wed, 30 Jul 2014 09:11:12 +0000 (10:11 +0100)]
Rename NovaCompute0Config to NovaCompute0Deploy

Rename NovaCompute0Config to NovaCompute0Deploy as this makes
the structured deployment name match the one in
nova-compute-instance.yaml.

Change-Id: I79f66c09006aa7f7118af1f48e1f6f10b87daec6

9 years agocontroller0AllNodesConfig to controller0AllNodes.
Nicholas Randon [Tue, 29 Jul 2014 13:02:42 +0000 (14:02 +0100)]
controller0AllNodesConfig to controller0AllNodes.

Rename all occurrences of controller0AllNodesConfig to
controller0AllNodes as this is in line with compute node
deployments. Also the current naming is confusing as this is a
deployment step not a configuration step.

Change-Id: I8efa3b6a64a099e1e8ee43009472152aed5f8ad8

9 years agoMerge "Remove nova-compute-group.yaml"
Jenkins [Thu, 31 Jul 2014 05:43:13 +0000 (05:43 +0000)]
Merge "Remove nova-compute-group.yaml"

9 years agoFix swift memcache and device properties
Jan Provaznik [Wed, 30 Jul 2014 11:40:01 +0000 (07:40 -0400)]
Fix swift memcache and device properties

All controller nodes are added into the list of swift devices and into
the list of memcache servers. This patch also removes swift storage nodes
from the list of memcache servers - I don't think that each storage node
should run proxy server (also swift-storage element doesn't depend on
swift-proxy).

Change-Id: Idb2ce2e2050fb84d8f8b564626b20e7b059fd685

9 years agoMerge "Add signal_transport property"
Jenkins [Mon, 28 Jul 2014 08:42:55 +0000 (08:42 +0000)]
Merge "Add signal_transport property"

9 years agoMerge "Add user_data_format"
Jenkins [Mon, 28 Jul 2014 08:42:19 +0000 (08:42 +0000)]
Merge "Add user_data_format"

9 years agoRemove nova-compute-group.yaml
Alexis Lee [Thu, 24 Jul 2014 16:51:55 +0000 (17:51 +0100)]
Remove nova-compute-group.yaml

This file is not used.

Change-Id: Ic03fb3402b3164c7c99cf02040f3a5e5abf6a9e9

9 years agoMerge "Fix SSL with HAProxy."
Jenkins [Fri, 25 Jul 2014 18:24:06 +0000 (18:24 +0000)]
Merge "Fix SSL with HAProxy."

9 years agoAdd signal_transport property
James Slagle [Thu, 17 Jul 2014 15:53:25 +0000 (11:53 -0400)]
Add signal_transport property

Specify NO_SIGNAL for signal_transport on the BlockStorage0Deployment
resource.  Otherwise, this resource remains CREATE_IN_PROGRESS forever.

Change-Id: I973d197245ed32612bde9209479e6ae3a443fc69

9 years agoAdd user_data_format
James Slagle [Thu, 17 Jul 2014 15:15:09 +0000 (11:15 -0400)]
Add user_data_format

user_data_format must be set to SOFTWARE_CONFIG on instances of
OS::Nova::Server where there are deployments. Corrects the following
error:

ERROR: Resource BlockStorage0's property user_data_format should be set
to SOFTWARE_CONFIG since there are software deployments on it.

Change-Id: Iba29588374980098d71585ff1bf26ad914a6711c

9 years agoMerge "Remove extra list"
Jenkins [Tue, 22 Jul 2014 19:20:35 +0000 (19:20 +0000)]
Merge "Remove extra list"

9 years agoMerge "Define and bind a public virtual IP"
Jenkins [Tue, 22 Jul 2014 16:28:34 +0000 (16:28 +0000)]
Merge "Define and bind a public virtual IP"

9 years agoDefine and bind a public virtual IP
James Polley [Fri, 20 Jun 2014 07:28:57 +0000 (17:28 +1000)]
Define and bind a public virtual IP

Prior to this change our heat templates define one virtual IP, which all
the services are bound to.

We wish to be able to segregate these endpoints: some need to be
accessible to "the public"; some are only intended to be accessed within
the cloud; some are only for admin use.

This change adds a second VIP which we can use for binding only the
endpoints that are intended to be publicly accessible, leaving the older
VIP to be used for internal end points.

Haproxy is told to also listen on that new VIP so that we can expose selected
services via the new VIP, and keepalived is in charge of assigning the VIP to
control plane nodes.

This change has a proposed split of services between control-only and
control+public interfaces. Assuming our yaml parsers (in merge.py and
Heat) understand YAML anchors/aliases, and assuming I've got the syntax
right, this should get expanded so that all the control+public services
get their config defined from the same block without needing to repeat
it for each service. (AFAICT both merge.py and heat use pyyaml, which
does support aliases/anchors)

The default is left at binding to only the controlplane interface, so
that new services added to this map will default to being internal-only

This patchset partially completes a spec which will one day live at
https://blueprints.launchpad.net/tripleo/+specs/tripleo-juno-virtual-public-ips
but for now can bee seen in  Id9addc65f0d2ed519ce4b3edbd561ed660a2786e

Implements: blueprint tripleo-juno-virtual-public-ips
Change-Id: I9649ee74ebaf62b6b929b28243a07c789a08867c
Co-Authored-By: Robert Collins <rbtcollins@hp.com>
Partial-Bug #1325114

9 years agoMerge "expose glance_port,protocol as glance.port,protocol"
Jenkins [Tue, 22 Jul 2014 06:55:32 +0000 (06:55 +0000)]
Merge "expose glance_port,protocol as glance.port,protocol"

9 years agoMerge "merge.py use a class to represent template syntax"
Jenkins [Tue, 22 Jul 2014 03:46:25 +0000 (03:46 +0000)]
Merge "merge.py use a class to represent template syntax"

9 years agoFix SSL with HAProxy.
Robert Collins [Fri, 18 Jul 2014 08:56:23 +0000 (20:56 +1200)]
Fix SSL with HAProxy.

The current configuration of services is that if SSL is in use (signaled by
stunnel.connect_ip) we bind to 127.0.0.1 - which is great, but it breaks
simultaneous non-SSL due to there being no pass-through stunnel equivalent on
all the nodes. As an interim measure, teach stunnel to connect to the ctlplane
address instead. We will need this flexability in future anyway to deal with
mixed-mode configurations, but we don't yet have an SSL only configuration.

The change will permit SSL only by altering the Deployment object only - the
SSL config object should now be flexible enough to run in either mode (but as
yet on an all-one-way-or-the-other basis).

Change-Id: Ibac3dec1fe7b573029482fdd9ad2d2f6223fbce0

9 years agoMerge "make keystone.host point to controller_virtual_ip"
Jenkins [Fri, 18 Jul 2014 09:21:24 +0000 (09:21 +0000)]
Merge "make keystone.host point to controller_virtual_ip"

9 years agoMerge "Add corosync and pacemaker properties into overcloud template"
Jenkins [Fri, 18 Jul 2014 07:56:39 +0000 (07:56 +0000)]
Merge "Add corosync and pacemaker properties into overcloud template"

9 years agomerge.py use a class to represent template syntax
Steve Baker [Mon, 7 Jul 2014 23:41:31 +0000 (11:41 +1200)]
merge.py use a class to represent template syntax

Defining cfn template syntax as class attributes will make it easier
to port merge.py to HOT just by setting lang to a different class.

Change-Id: I2547333d727bf91cd3159790f0f20f4d10195a9c
Partial-Blueprint: tripleo-juno-remove-mergepy

9 years agoMerge "make glance.host point to controller_virtual_ip"
Jenkins [Thu, 17 Jul 2014 18:19:57 +0000 (18:19 +0000)]
Merge "make glance.host point to controller_virtual_ip"

9 years agoMerge "use ControlVirtualInterface for keepalived VRRP"
Jenkins [Thu, 17 Jul 2014 18:19:05 +0000 (18:19 +0000)]
Merge "use ControlVirtualInterface for keepalived VRRP"

9 years agoMerge "add Horizon caches backend definition (memcached)"
Jenkins [Thu, 17 Jul 2014 18:15:15 +0000 (18:15 +0000)]
Merge "add Horizon caches backend definition (memcached)"

9 years agoRemove extra list
James Slagle [Thu, 17 Jul 2014 15:13:34 +0000 (11:13 -0400)]
Remove extra list

We are using "ctlplane" as the first parameter to Fn::Select here, so
the second parameter must be a map, not a list. Fixes the following
error:

ERROR: Property error : BlockStorage0Deployment: input_values Index to
"Fn::Select" must be an integer

Change-Id: I34153543f8c3152df449e1b42e1f76a78a7d6ba3

9 years agoRemove ImageBuilder::Elements from templates
Tomas Sedovic [Wed, 25 Jun 2014 11:19:38 +0000 (13:19 +0200)]
Remove ImageBuilder::Elements from templates

We're not using this metadata for anything.

Change-Id: I9d27c76dfa7223cbd16b9afe967696644137b8d6

9 years agoexpose glance_port,protocol as glance.port,protocol
Ryan Moore [Fri, 11 Jul 2014 13:51:39 +0000 (14:51 +0100)]
expose glance_port,protocol as glance.port,protocol

These values are available in metadata with underscores but
they are accessed by nova with dots.
Make them available with dots.

Required by: Idccc0d60c9f6b17a853c6de1bbea64bfc7e028b2
Change-Id: I5fe952f850339465de128e56e45c9bbda011ce7f

9 years agoMerge "Use the right DSN for neutron agents."
Jenkins [Fri, 11 Jul 2014 03:46:45 +0000 (03:46 +0000)]
Merge "Use the right DSN for neutron agents."

9 years agoadd Horizon caches backend definition (memcached)
Giulio Fidente [Mon, 7 Jul 2014 20:57:11 +0000 (22:57 +0200)]
add Horizon caches backend definition (memcached)

This change adds into the overcloud-source template a structure
name horizon.caches meant to define the Horizon caches backend.
It defaults to using memcached and provides a list of the
memcached nodes in horizon.caches.memcached.nodes

Related to blueprint tripleo-icehouse-ha-production-configuration

Change-Id: I728e05926f2de0e867fb8e8c74c63947da7d987a

9 years agomake glance.host point to controller_virtual_ip
Giulio Fidente [Thu, 10 Jul 2014 04:44:57 +0000 (06:44 +0200)]
make glance.host point to controller_virtual_ip

Previously glance.host was pointing to the local controller_host
which would have requests to glance from other services to fail
if the local glance daemon was unavailable.

Change-Id: Ifd4f4b12cd51e23313826288797cc00ba3cd1754

9 years agomake keystone.host point to controller_virtual_ip
Giulio Fidente [Thu, 10 Jul 2014 04:10:41 +0000 (06:10 +0200)]
make keystone.host point to controller_virtual_ip

Previously keystone.host was pointing to the local controller_host
which would have caused all local services to become unavailable
if keystone was to go down.

Closes-Bug: #1339986
Change-Id: I9b73595d3e0ae6e872aa6b7e0f93354ff04f2956

9 years agouse ControlVirtualInterface for keepalived VRRP
Giulio Fidente [Thu, 10 Jul 2014 03:48:05 +0000 (05:48 +0200)]
use ControlVirtualInterface for keepalived VRRP

Change keepalived.keepalive_interface so that it uses the actual
ControlVirtualInterface (bridge) for VRRP rather than the bridged
interface (NeutronPublicInterface).

Fixes the issue which caused keepalived to bring up the VIP on
all control nodes.

Change-Id: Ifc484d6a6086d9872210aa576f21d326f60b7d35

9 years agoMerge "Make target to validate a template"
Jenkins [Wed, 9 Jul 2014 01:03:18 +0000 (01:03 +0000)]
Merge "Make target to validate a template"

9 years agoAdd corosync and pacemaker properties into overcloud template
Jan Provaznik [Tue, 8 Jul 2014 08:41:18 +0000 (04:41 -0400)]
Add corosync and pacemaker properties into overcloud template

Pacemaker will be used for managing ceilometer central agent,
we need basic metadata to setup corosync and pacemaker.

Related to: Ifa83d62c2132bcdcb40d0b7c80ce3adadc0b5587

Change-Id: I44909005d9bc653c3e7c2de1c12fe4ffecf6bede

9 years agoMake target to validate a template
Steve Baker [Tue, 8 Jul 2014 01:27:07 +0000 (13:27 +1200)]
Make target to validate a template

This adds make targets to run heat template-validate against the
generated templates.

These targets assume that credentials to a valid heat endpoint
have been sourced.

The target validate-all will validate every template in
generated_templates, but there is also a target created for each
template, for example:

  make validate-overcloud.yaml

This is a useful aid for
Partial-Blueprint: tripleo-juno-remove-mergepy

Change-Id: Id101402b8b2fa0bc6058c5bc4b7474f0f6a158ad

9 years agoSpecify the network for nodes
Robert Collins [Wed, 2 Jul 2014 03:14:19 +0000 (15:14 +1200)]
Specify the network for nodes

Without this, when there are multiple admin networks (e.g. a VLAN)
Nova will refuse to guess and we'll fail to deploy.

Change-Id: Id1dca43ef287fda2adcfdf5b5d30145b055dbe76

9 years agoMake stack complete depend on all nodes
Clint Byrum [Thu, 3 Jul 2014 16:08:47 +0000 (09:08 -0700)]
Make stack complete depend on all nodes

Previously the completion signal was just based on the first run of
os-refresh-config. But in this case, we actually need to wait until it
runs successfully with all hosts computed. That way we can know that
services aren't in an unstable state while that configuration rolls out.

Change-Id: I3b965c19c92b366df3069cb8e1daffa18252c884
Closes-Bug: #1337230

9 years agoMerge "Enable multi-node rabbitmq cluster"
Jenkins [Wed, 2 Jul 2014 18:16:24 +0000 (18:16 +0000)]
Merge "Enable multi-node rabbitmq cluster"

9 years agoMerge "Compute all hosts matrix once"
Jenkins [Wed, 2 Jul 2014 03:30:52 +0000 (03:30 +0000)]
Merge "Compute all hosts matrix once"

9 years agoEnable multi-node rabbitmq cluster
Jan Provaznik [Mon, 9 Jun 2014 07:36:24 +0000 (03:36 -0400)]
Enable multi-node rabbitmq cluster

This causes that:
* rabbit.nodes is list of all control nodes
* rabbit_hosts in OS config files points to all nodes in
  rabbitmq cluster
* overcloud control nodes are joined into cluster

This works both for single or multiple control nodes and it's needed
for scaling out control nodes.

rabbit.nodes property is very similar to generating list of all hosts,
so it uses same StructuredConfig block. This block (and couple of references)
is renamed to allNodesConfig to make it more general.

Related to blueprint tripleo-icehouse-ha-production-configuration

Change-Id: Ice1a34ba7a52c41c1bb0c63350438971c651e7b6

10 years agoMerge "Add galera clustering properties"
Jenkins [Mon, 30 Jun 2014 18:14:04 +0000 (18:14 +0000)]
Merge "Add galera clustering properties"

10 years agoCompute all hosts matrix once
Clint Byrum [Wed, 4 Jun 2014 07:42:29 +0000 (00:42 -0700)]
Compute all hosts matrix once

Then feed in through separate deployments. This reduces the exponential
growth of calculating the entire list for every server.

Change-Id: Ib1187eabeb91b46e29ddcf5065056e43a69bb2a0

10 years agoMerge "Haproxy configuration"
Jenkins [Mon, 30 Jun 2014 08:22:25 +0000 (08:22 +0000)]
Merge "Haproxy configuration"

10 years agoAdd galera clustering properties
Gregory Haynes [Fri, 28 Mar 2014 20:00:08 +0000 (13:00 -0700)]
Add galera clustering properties

Adding nodes and cluster_name properties for mysql in order to enable
galera clustering.

Change-Id: I522b7324460469c59f49983ca3becd9ea914cdc0

10 years agoHaproxy configuration
Dima Shulyak [Wed, 14 May 2014 12:20:12 +0000 (15:20 +0300)]
Haproxy configuration

Added several sections that are required for HAproxy configuration

1. haproxy.services - standard openstack services ports
2. haproxy.nodes - openstack controllers
3. haproxy.net_binds - virtual ips, that will also act as public endpoint

input controller_nodes scales with OVERCLOUD_CONTROLSCALE > 1

Related change t-i-e I641fa90c4a34c26e5699cf7f5a6f9643792c7b16

Implements blueprint tripleo-haproxy-configuration
Related to blueprint tripleo-icehouse-ha-production-configuration

Change-Id: I9c70812ee1b3e8c8c072705fc5123da88ecc8f9f

10 years agoUse the right DSN for neutron agents.
Robert Collins [Thu, 19 Jun 2014 02:36:07 +0000 (14:36 +1200)]
Use the right DSN for neutron agents.

Since the wrong one is a bad idea :)

Change-Id: I7ed40078f487459dee9055ef41f10a9b60a0e674

10 years agoMerge "Set glance protocol and port as Heat configurable"
Jenkins [Fri, 27 Jun 2014 07:53:53 +0000 (07:53 +0000)]
Merge "Set glance protocol and port as Heat configurable"