apex-tripleo-heat-templates.git
7 years agoContainerize RabbitMQ for HA
Dan Prince [Mon, 3 Apr 2017 18:12:36 +0000 (14:12 -0400)]
Containerize RabbitMQ for HA

This service allows configuring and deploying RabbitMQ containers
in a HA overcloud managed by pacemaker.

The containers are managed and run by pacemaker. Inside there is
pacemaker_remote which will invoke the resource agent managing galera.
The resources themselves are created via puppet-pacemaker inside a
short-lived container used for this purpose (mysql_init_bundle).
This container needs to use the 'docker_config' section to invoke
puppet (as opposed to 'docker_puppet_tasks'), because due to the HA
composability each resource creation needs to happen on the bootstrap
node of that service and 'docker_puppet_tasks' will only run on the
controller/primary role.

Co-Authored-By: Michele Baldessari <michele@acksyn.org>
Co-Authored-By: John Eckersberg <jeckersb@redhat.com>
Closes-Bug: #1692909

Depends-On: I0722e4a4d4716f477e8304cfa1aadd3eef7c2f31

Change-Id: I942737134385af775cade40c2d69516d4fe31a99

7 years agoMerge "TLS-everywhere: Configure CA for apache"
Jenkins [Thu, 18 May 2017 13:19:27 +0000 (13:19 +0000)]
Merge "TLS-everywhere: Configure CA for apache"

7 years agoMerge "Default snmp to less verbose logging"
Jenkins [Thu, 18 May 2017 11:15:32 +0000 (11:15 +0000)]
Merge "Default snmp to less verbose logging"

7 years agoMerge "Use upper-constraints for tox"
Jenkins [Thu, 18 May 2017 00:05:13 +0000 (00:05 +0000)]
Merge "Use upper-constraints for tox"

7 years agoMerge "docker/internal TLS: spawn extra container for neutron server's TLS proxy"
Jenkins [Wed, 17 May 2017 17:39:30 +0000 (17:39 +0000)]
Merge "docker/internal TLS: spawn extra container for neutron server's TLS proxy"

7 years agoMerge "Don't delete failed docker-puppet containers"
Jenkins [Wed, 17 May 2017 17:13:22 +0000 (17:13 +0000)]
Merge "Don't delete failed docker-puppet containers"

7 years agoUse upper-constraints for tox
Alex Schultz [Wed, 17 May 2017 17:01:07 +0000 (11:01 -0600)]
Use upper-constraints for tox

Use the openstack upper-constraints when running tox.

Change-Id: I9eef36eec749beec0effdb2309fe2ceb9bc557f8
Related-Bug: #1691511

7 years agoMerge "Only set apache certificates if TLS everywhere is enabled"
Jenkins [Wed, 17 May 2017 15:37:49 +0000 (15:37 +0000)]
Merge "Only set apache certificates if TLS everywhere is enabled"

7 years agoMerge "Containerize Ceilometer Agents"
Jenkins [Wed, 17 May 2017 13:32:55 +0000 (13:32 +0000)]
Merge "Containerize Ceilometer Agents"

7 years agoMerge "Use neutron-server image for neutron services"
Jenkins [Wed, 17 May 2017 11:09:25 +0000 (11:09 +0000)]
Merge "Use neutron-server image for neutron services"

7 years agoTLS-everywhere: Configure CA for apache
Juan Antonio Osorio Robles [Tue, 16 May 2017 13:38:35 +0000 (16:38 +0300)]
TLS-everywhere: Configure CA for apache

This tells apache which CA certificate was used to sign the certs it's
using. this setting is useful in case we want to enable OCSP stapling or
client authentication via TLS.

Change-Id: I97a7e5332aea8377c7662ca98beb71ed5e236640

7 years agoOnly set apache certificates if TLS everywhere is enabled
Juan Antonio Osorio Robles [Wed, 17 May 2017 09:24:22 +0000 (12:24 +0300)]
Only set apache certificates if TLS everywhere is enabled

The Apache certs were were being set even if TLS everywhere isn't
enabled. This fixes that.

Change-Id: If143d1fdeb0102a1c13441f89acaa73af24bf48f

7 years agoDon't delete failed docker-puppet containers
Steve Baker [Tue, 16 May 2017 04:39:05 +0000 (04:39 +0000)]
Don't delete failed docker-puppet containers

This helps a bit with debugging issues, and the container will be
deleted on the next run when the same volume is configured.

Change-Id: I4f2f219bd7e40abafd0eb31c1275fdd8ed4db4da

7 years agoMerge "Add params to manage and configure pipeline publisher"
Jenkins [Wed, 17 May 2017 01:34:55 +0000 (01:34 +0000)]
Merge "Add params to manage and configure pipeline publisher"

7 years agoMerge "Fix absolute paths in scenario001-multinode.yaml"
Jenkins [Tue, 16 May 2017 22:07:59 +0000 (22:07 +0000)]
Merge "Fix absolute paths in scenario001-multinode.yaml"

7 years agoMerge "Optimize kernel neighbour table for large scale environments"
Jenkins [Tue, 16 May 2017 19:23:02 +0000 (19:23 +0000)]
Merge "Optimize kernel neighbour table for large scale environments"

7 years agoContainerize Ceilometer Agents
Pradeep Kilambi [Thu, 6 Apr 2017 18:05:41 +0000 (14:05 -0400)]
Containerize Ceilometer Agents

Depends-on: I30ba93f76171e5993b5f0e1d7f1f5533acb25740

Closes-bug: #1668925

Change-Id: I3cb61d2d8765f9c2601bb00c4bfa24162883b96a

7 years agodocker/internal TLS: spawn extra container for neutron server's TLS proxy
Juan Antonio Osorio Robles [Fri, 12 May 2017 08:44:47 +0000 (08:44 +0000)]
docker/internal TLS: spawn extra container for neutron server's TLS proxy

This spawns an extra container that runs httpd to run the TLS proxy that
will go in front of neutron server.

bp tls-via-certmonger-containers

Change-Id: I2529d78e889835f48c51e12d28ecd7c48739b02b

7 years agoUse neutron-server image for neutron services
Juan Antonio Osorio Robles [Fri, 12 May 2017 12:56:13 +0000 (12:56 +0000)]
Use neutron-server image for neutron services

For TLS everywhere, neutron-server needs httpd in the image, since
it'll use a separate container that runs a TLS proxy to terminate
the connection. This requires the image where the configuration is
ran to have httpd installed, since there are several directories
and the user/group that's needed.

So, we then switch the image to be used to be neutron-server instead
of the openvswitch-agent image.

Change-Id: Ie16de3004925b7624f106d6c015ec04ef6031a06
Depends-On: I82f10ac0e7e692e6ba4a06dc10da9eaf79c60e7e

7 years agoOptimize kernel neighbour table for large scale environments
Or Idgar [Thu, 11 May 2017 08:32:17 +0000 (08:32 +0000)]
Optimize kernel neighbour table for large scale environments

Changing the default values of neighbor table (also known as ARP table)
in the kernel to avoid neighbour table overflow and thus fix
communication errors between overcloud nodes.
default kernel values support L2 network up to 1024 hosts (/22).
The patch will allow up to 4096 hosts (/20).

Change-Id: I5fabc766dd75a38cd3d835deee7e168f04dd30ce
Closes-Bug: #1690087

7 years agoFix resource type in ObjectStorage role
Christian Schwede [Tue, 16 May 2017 06:54:55 +0000 (08:54 +0200)]
Fix resource type in ObjectStorage role

The currently used resource type does not exist, therefore changing it.

Closes-Bug: 1691021
Change-Id: Iaf18af546817e0cf6cdfafcc5c54ab4d1a0f819d

7 years agoAdd missing type for RoleParameters parameter
Martin André [Mon, 15 May 2017 17:06:09 +0000 (19:06 +0200)]
Add missing type for RoleParameters parameter

This was forgotten in I72376a803ec6b2ed93903cc0c95a6ffce718b6dc and
broke containerized deployment.

Change-Id: I599a87bf06efbfefd3067c77ed6ca866505900f9
Closes-Bug: #1690870

7 years agoMerge "Disable ComputeNeutron* for cisco-nexus-ucsm"
Jenkins [Mon, 15 May 2017 14:51:41 +0000 (14:51 +0000)]
Merge "Disable ComputeNeutron* for cisco-nexus-ucsm"

7 years agoFix absolute paths in scenario001-multinode.yaml
Steven Hardy [Mon, 15 May 2017 14:29:39 +0000 (10:29 -0400)]
Fix absolute paths in scenario001-multinode.yaml

All paths should be relative as we should not rely on the package
location - this can easily be overridden via --templates, and this
is exactly what we do for the upgrades job, where this will break
because we'll include the wrong (newer) version of these services
when deploying the older pre-upgrade overcloud.

Change-Id: Id8aea09305c0857253c44477945e34377cca64ca

7 years agoMerge "Update the services README documentation"
Jenkins [Mon, 15 May 2017 13:44:39 +0000 (13:44 +0000)]
Merge "Update the services README documentation"

7 years agoDefault snmp to less verbose logging
Michele Baldessari [Mon, 15 May 2017 09:03:53 +0000 (11:03 +0200)]
Default snmp to less verbose logging

Currently we just use what puppet-snmp provides in terms of defaults.
This means that currently every single snmp query gets logged with
the following:
May 15 10:51:30 centos.localdomain snmpd[5159]: Connection from UDP: [127.0.0.1]:57799->[127.0.0.1]:161
May 15 10:51:30 centos.localdomain snmpd[5159]: Connection from UDP: [127.0.0.1]:57799->[127.0.0.1]:161
May 15 10:51:32 centos.localdomain snmpd[5159]: Connection from UDP: [127.0.0.1]:50566->[127.0.0.1]:161

The reason is that we use '-LS0-6d' as the default content for
/etc/sysconfig/snmpd:
https://github.com/razorsedge/puppet-snmp/blob/master/manifests/params.pp#L322

This default means that we are logging from 0 (LOG_EMERG) to 6
(LOG_INFO). The above messages bring nothing in a default installation
and only spam the log files, so let's lower the upper log level to 5
(LOG_NOTICE) by default, so we properly do not see every single query in
the logs. We add an option so the operator can still configure the
desired log level via a Heat parameter.

Change-Id: I8d3dfdb4d549cd27131346fc477755ad72313449

7 years agoMerge "Change neutron-metadata number of workers determination method"
Jenkins [Mon, 15 May 2017 12:59:05 +0000 (12:59 +0000)]
Merge "Change neutron-metadata number of workers determination method"

7 years agoUpdate the services README documentation
Saravanan KR [Mon, 15 May 2017 12:22:18 +0000 (17:52 +0530)]
Update the services README documentation

Service template's parameter documentation has been update by
correcting few of the wrong informations and added more
information with examples.

Change-Id: I2d92fd01cbeb6fdc6f030255dc4b71166509b4f6

7 years agoMerge "Add role specific information to the service template"
Jenkins [Mon, 15 May 2017 11:28:51 +0000 (11:28 +0000)]
Merge "Add role specific information to the service template"

7 years agoMerge "multinode-container-upgrade.yaml usable for mixed upgrade"
Jenkins [Mon, 15 May 2017 10:28:52 +0000 (10:28 +0000)]
Merge "multinode-container-upgrade.yaml usable for mixed upgrade"

7 years agoAdd role specific information to the service template
Saravanan KR [Fri, 24 Feb 2017 11:27:58 +0000 (06:27 -0500)]
Add role specific information to the service template

When a service is enabled on multiple roles, the parameters for the
service will be global. This change enables an option to provide
role specific parameter to services and other templates.

Two new parameters - RoleName and RoleParameters, are added to the
service template. RoleName provides the role name of on which the
current instance of the service is being applied on. RoleParameters
provides the list of parameters which are configured specific to the
role in the environment file, like below:

  parameters_default:
      # Default value for applied to all roles
      NovaReservedHostMemory: 2048
      ComputeDpdkParameters:
          # Applied only to ComputeDpdk role
          NovaReservedHostMemory: 4096

In above sample, the cluster contains 2 roles - Compute, ComputeDpdk.
The values of ComputeDpdkParameters will be passed on to the templates
as RoleParameters while creating the stack for ComputeDpdk role. The
parameter which supports role specific configuration, should find the
parameter first in in the RoleParameters list, if not found, then the
default (for all roles) should be used.
Implements: blueprint tripleo-derive-parameters

Change-Id: I72376a803ec6b2ed93903cc0c95a6ffce718b6dc

7 years agoMerge "docker/internal TLS: spawn extra container for glance API's TLS proxy"
Jenkins [Fri, 12 May 2017 18:55:34 +0000 (18:55 +0000)]
Merge "docker/internal TLS: spawn extra container for glance API's TLS proxy"

7 years agoMerge "Deprecate Ceilometer Expirer"
Jenkins [Fri, 12 May 2017 18:53:31 +0000 (18:53 +0000)]
Merge "Deprecate Ceilometer Expirer"

7 years agoMerge "docker/internal TLS: spawn extra container for swift's TLS proxy"
Jenkins [Fri, 12 May 2017 14:07:35 +0000 (14:07 +0000)]
Merge "docker/internal TLS: spawn extra container for swift's TLS proxy"

7 years agodocker/internal TLS: spawn extra container for glance API's TLS proxy
Juan Antonio Osorio Robles [Fri, 12 May 2017 06:17:04 +0000 (09:17 +0300)]
docker/internal TLS: spawn extra container for glance API's TLS proxy

This spawns an extra container that runs httpd to run the TLS proxy that
will go in front of glance-api.

bp tls-via-certmonger-containers

Change-Id: If902ac732479832b9aa3e4a8d063b5be68a42a9b

7 years agodocker/internal TLS: spawn extra container for swift's TLS proxy
Juan Antonio Osorio Robles [Wed, 26 Apr 2017 13:23:25 +0000 (16:23 +0300)]
docker/internal TLS: spawn extra container for swift's TLS proxy

This spawns an extra container that runs httpd to run the TLS proxy that
will go in front of swift.

bp tls-via-certmonger-containers

Depends-On: Ib01137cd0d98e6f5a3e49579c080ab18d8905b0d
Change-Id: I9639af8b46b8e865cc1fa7249bf1d8b1b978adfe

7 years agoMerge "Disabling replacing fernet keys from puppet"
Jenkins [Thu, 11 May 2017 18:41:08 +0000 (18:41 +0000)]
Merge "Disabling replacing fernet keys from puppet"

7 years agoMerge "Make docker-puppet.sh a static file."
Jenkins [Thu, 11 May 2017 18:41:01 +0000 (18:41 +0000)]
Merge "Make docker-puppet.sh a static file."

7 years agoAdd params to manage and configure pipeline publisher
Pradeep Kilambi [Wed, 10 May 2017 15:42:24 +0000 (11:42 -0400)]
Add params to manage and configure pipeline publisher

Change-Id: Ifaa3bb0400ee22601fd8f3e1f2f16192b5f8766b

7 years agoDeprecate Ceilometer Expirer
Pradeep Kilambi [Wed, 10 May 2017 17:09:12 +0000 (13:09 -0400)]
Deprecate Ceilometer Expirer

We dont need expirer unless we have collector and standard
storage enabled. Lets turn it off by default and make it
an optional service. In upgrade scenario, we will kill the
process and stop the expirer, unless explicitly enabled.

Change-Id: Icffb7d1bb2cf7bd61026be7d2dcfbd70cd3bcbda

7 years agoMerge "Fix paths for optional docker services"
Jenkins [Thu, 11 May 2017 15:39:42 +0000 (15:39 +0000)]
Merge "Fix paths for optional docker services"

7 years agoMerge "Make upgrade steps unconditional to fix broken dependencies"
Jenkins [Thu, 11 May 2017 10:50:02 +0000 (10:50 +0000)]
Merge "Make upgrade steps unconditional to fix broken dependencies"

7 years agoDisabling replacing fernet keys from puppet
Juan Antonio Osorio Robles [Thu, 11 May 2017 07:45:45 +0000 (10:45 +0300)]
Disabling replacing fernet keys from puppet

Once puppet has written the initial fernet keys, if a deployer wants to
rotate them, the keys will be overwritten when another overcloud deploy
is executed (for instance, for updates or upgrades). This disables
replacing this keys via puppet, so now the operator can rotate the keys
out of band.

Change-Id: I01fd46ba7c5e0db12524095dc9fe29e90cb0de57

7 years agoMerge "Add networking-vpp ML2 mechanism driver support"
Jenkins [Wed, 10 May 2017 23:46:09 +0000 (23:46 +0000)]
Merge "Add networking-vpp ML2 mechanism driver support"

7 years agoFix paths for optional docker services
Pradeep Kilambi [Wed, 10 May 2017 21:25:49 +0000 (17:25 -0400)]
Fix paths for optional docker services

Change-Id: I3583a9a3bb04df2aebf06a566a2bdc4afdbfc9f3

7 years agoMerge "Use httpd in Zaqar docker service"
Jenkins [Wed, 10 May 2017 17:32:22 +0000 (17:32 +0000)]
Merge "Use httpd in Zaqar docker service"

7 years agoChange neutron-metadata number of workers determination method
Or Idgar [Wed, 10 May 2017 09:50:51 +0000 (09:50 +0000)]
Change neutron-metadata number of workers determination method

neutron-metadata number of workers will be taken from NeutronWorkers parameter
if not empty. when empty, all keys related to NeutronWorkers value will be
set with empty dictionary instead empty string ({}).

Change-Id: I18347639c188bbf085e2f3c739465e52c94b9d77
Closes-bug: #1689571

7 years agomultinode-container-upgrade.yaml usable for mixed upgrade
Jiri Stransky [Thu, 4 May 2017 16:26:18 +0000 (18:26 +0200)]
multinode-container-upgrade.yaml usable for mixed upgrade

We need Docker service mapping defined and set to OS::Heat::None so that
we can reuse multinode-container-upgrade.yaml service list both for
initial deployment and for the upgrade. The upgrade will not be broken
by this as its env files are being passed later on the command line, and
they'll take priority and effectively enable the Docker service on
upgrade.

Another change we need for mixed upgrade is to add the TripleoPackages
service, which will take care of updating RPMs on the bare metal and
prevent docker installation from failing with outdated
puppet-tripleo ("Could not find class ::tripleo::profile::base::docker").

Related-Bug: #1685795
Closes-Bug: #1689772
Change-Id: Idb6917f22d0e9f74f8853972c6a08bffb01be410

7 years agoMerge "Containers: Bind mount directories with the key/certs for heat"
Jenkins [Wed, 10 May 2017 08:19:23 +0000 (08:19 +0000)]
Merge "Containers: Bind mount directories with the key/certs for heat"

7 years agoMake docker-puppet.sh a static file.
Steve Baker [Fri, 5 May 2017 00:25:32 +0000 (12:25 +1200)]
Make docker-puppet.sh a static file.

Variables are now passed in with --env in the docker run call.

This will allow docker-puppet.sh to be baked into the image instead of
having it as a custom entrypoint.

Change-Id: Icbaefe033becc6b2226535f28ee202917bdc1074

7 years agoUse httpd in Zaqar docker service
Dan Prince [Wed, 3 May 2017 12:29:49 +0000 (08:29 -0400)]
Use httpd in Zaqar docker service

Move the Zaqar WSGI service to use httpd in docker deployment.

Depends-On: I35cfd1c2320eb972890b44668c8f9f0a047a65dc

Change-Id: I56a6469a9179b5c023738f447e7665d0d3c73d0b
Co-Authored-By: Martin André <m.andre@redhat.com>
Co-Authored-By: Thomas Herve <therve@redhat.com>
7 years agoMake upgrade steps unconditional to fix broken dependencies
Jiri Stransky [Tue, 9 May 2017 13:48:54 +0000 (15:48 +0200)]
Make upgrade steps unconditional to fix broken dependencies

Change I5c8b0c4abfc0607f42fd3f2da9f5ef2702b1bbe1 introduced conditions
to optimize upgrade times and fix related bugs. Unfortunately the
conditional inclusion would have to be paired with support in depends_on
to work as we need. Currently we can hit this bug if the batch upgrade
steps are undefined for some role, but upgrade steps are definied:

The specified reference "ControllerUpgradeBatch_Step2" (in
ControllerUpgradeConfig_Step0) is incorrect.

To fix this we have to make the steps unconditional. This isn't fully
reverting the original change because that change also addressed
ordering issues.

Change-Id: I369591f4757c10142f5b455e64aa778e1a9a5611
Closes-Bug: #1689553

7 years agoContainers: Bind mount directories with the key/certs for heat
Juan Antonio Osorio Robles [Mon, 8 May 2017 09:38:16 +0000 (09:38 +0000)]
Containers: Bind mount directories with the key/certs for heat

This is only done when TLS-everywhere is enabled, and depends on those
directories being exclusive for services that run over httpd.

bp tls-via-certmonger-containers

Change-Id: I194c33992c7f3628f7858ecf5e472ecfdee969ed

7 years agoAdd syslog socket to common containers volumes
Bogdan Dobrelya [Mon, 8 May 2017 08:27:50 +0000 (10:27 +0200)]
Add syslog socket to common containers volumes

Partial blueprint containerized-services-logs

Change-Id: Idbf1884226503aca9072b12d050500af407973cf
Signed-off-by: Bogdan Dobrelya <bdobreli@redhat.com>
7 years agoMerge "Set puppet-redis managed_by_cluster_manager to true"
Jenkins [Sun, 7 May 2017 21:04:14 +0000 (21:04 +0000)]
Merge "Set puppet-redis managed_by_cluster_manager to true"

7 years agoMerge "Use the make_url function to build URLs"
Jenkins [Sat, 6 May 2017 19:51:02 +0000 (19:51 +0000)]
Merge "Use the make_url function to build URLs"

7 years agoSet puppet-redis managed_by_cluster_manager to true
Michele Baldessari [Fri, 5 May 2017 10:37:01 +0000 (12:37 +0200)]
Set puppet-redis managed_by_cluster_manager to true

Via https://github.com/arioch/puppet-redis/pull/192 puppet-redis grew
ulimit support also for pacemaker managed redis instances. To be able to
use that we need to set redis::managed_by_cluster_manager to true.

We also allow redis::ulimit to be configurable and we set a default of
10420 which was the default value before the above change.

Change-Id: I06129870665d7d3bfa09057fd9f0a33a99f98397
Depends-On: I4ffccfe3e3ba862d445476c14c8f2cb267fa108d
Closes-Bug: #1688464

7 years agoMerge "Fix up pacemaker_status test in yum_update.sh"
Jenkins [Fri, 5 May 2017 20:16:19 +0000 (20:16 +0000)]
Merge "Fix up pacemaker_status test in yum_update.sh"

7 years agoUse the make_url function to build URLs
Zane Bitter [Fri, 5 May 2017 18:43:11 +0000 (14:43 -0400)]
Use the make_url function to build URLs

Change-Id: I2b23d92c85d5ecc889a7ee597b90e930bde9028e
Depends-On: I72f84e737b042ecfaabf5639c6164d46a072b423

7 years agoMerge "Mount hostpath logs on /var/log"
Jenkins [Fri, 5 May 2017 15:17:55 +0000 (15:17 +0000)]
Merge "Mount hostpath logs on /var/log"

7 years agoMount hostpath logs on /var/log
Flavio Percoco [Tue, 7 Mar 2017 16:12:36 +0000 (17:12 +0100)]
Mount hostpath logs on /var/log

Some containers are using the logs named volume for collecting logs
written to `/var/log`. We should make this consistent for all the
containers.

This patch also cleans up some mounts that weren't needed for some
services. For example, glance-api doesn't need `/run` to be mounted.

Other changes:
* Rework log volumes to hostpath mounts to omit slow COW writes.
* Add kolla_config's permission and host_prep_tasks create and
  manage hostpath mounted log dirs permissions.
* Rework data owning init containers to kolla_config permissions
* When a step wants KOLLA_BOOTSTRAP or DB sync, use logs data owning
  init containers to set permissions for logs. This is required
  because kolla bootsrap and DB sync runs before the kolla config
  stage and there is yet permissions set for logs.
* In order to address hybrid cases for host services vs containerized
  ones to access logs having different UIDs, persist containerized
  services' logs into separate directories (an upgrade impact)
* Ensure host prep tasks to create /var/log/containers/ and /var/lib/
  sub-directories for services
* Fix missing /etc/httpd, /var/www config-data mounts for zaqar/ironic
* Fix YAML indentation and drop strings quotation.

Co-authored-by: Bogdan Dobrelya <bdobreli@redhat.com>
Partial blueprint containerized-services-logs

Change-Id: I53e737120bf0121bd28667f355b6f29f1b2a6b82

7 years agoMerge "Add StackUpdateType to set hiera on upgrade"
Jenkins [Fri, 5 May 2017 05:06:04 +0000 (05:06 +0000)]
Merge "Add StackUpdateType to set hiera on upgrade"

7 years agoMerge "[N->O] Add openstack-nova-migration to compute nodes."
Jenkins [Thu, 4 May 2017 23:05:16 +0000 (23:05 +0000)]
Merge "[N->O] Add openstack-nova-migration to compute nodes."

7 years agoMerge "Restrict nova migration ssh tunnel"
Jenkins [Thu, 4 May 2017 23:05:09 +0000 (23:05 +0000)]
Merge "Restrict nova migration ssh tunnel"

7 years agoMerge "Disable Telemetry services on undercloud containers"
Jenkins [Thu, 4 May 2017 19:07:14 +0000 (19:07 +0000)]
Merge "Disable Telemetry services on undercloud containers"

7 years agoMerge "Configure snmpd auth params in ceilometer profile"
Jenkins [Thu, 4 May 2017 19:06:25 +0000 (19:06 +0000)]
Merge "Configure snmpd auth params in ceilometer profile"

7 years agoMerge "Use httpd in Heat docker services"
Jenkins [Thu, 4 May 2017 13:44:35 +0000 (13:44 +0000)]
Merge "Use httpd in Heat docker services"

7 years agoAdd StackUpdateType to set hiera on upgrade
Steven Hardy [Fri, 24 Feb 2017 18:41:40 +0000 (13:41 -0500)]
Add StackUpdateType to set hiera on upgrade

This will enable those consuming the stack_update_type hieradata
set by this parameter to differentiate an update from a major upgrade

Change-Id: I38469f4b7d04165ea5371aeb0cbd2e9349d70c79

7 years agoMerge "Internal TLS: Use specific CA file for mysql-client"
Jenkins [Thu, 4 May 2017 12:28:48 +0000 (12:28 +0000)]
Merge "Internal TLS: Use specific CA file for mysql-client"

7 years agoFix up pacemaker_status test in yum_update.sh
Michele Baldessari [Thu, 4 May 2017 09:46:45 +0000 (11:46 +0200)]
Fix up pacemaker_status test in yum_update.sh

In change I2aae4e2fdfec526c835f8967b54e1db3757bca17 we did the
following:
-pacemaker_status=$(systemctl is-active pacemaker || :)
+pacemaker_status=""
+if hiera -c /etc/puppet/hiera.yaml service_names | grep -q pacemaker;
then
+ pacemaker_status=$(systemctl is-active pacemaker)
+fi

we did that so due to LP#1668266: we did not want systemctl is-active to
fail on non pacemaker nodes. The problem with the above hiera check is
that it will match on pacemaker_remote nodes as well.

We cannot piggyback the pacemaker_enabled hiera key because that is true
on all nodes. So let's make the test check only for pacemaker service
without matching pacemaker remote. Tested with:
1) Test on a controller node with pacemaker service enabled
[root@overcloud-controller-0 ~]# hiera -c /etc/puppet/hiera.yaml -a service_names |grep '\bpacemaker\b'
"pacemaker",
[root@overcloud-controller-0 ~]# echo $?
0

2) Test on a compute node without pacemaker:
[root@overcloud-novacompute-0 puppet]# hiera -c /etc/puppet/hiera.yaml service_names |grep '\bpacemaker\b'
[root@overcloud-novacompute-0 puppet]# echo $?
1

3) Test on a node with pacemaker_remote in the service_names key:
[root@overcloud-novacompute-0 puppet]# hiera -c /etc/puppet/hiera.yaml service_names |grep '\bpacemaker\b'
[root@overcloud-novacompute-0 puppet]# echo $?
1

[root@overcloud-novacompute-0 puppet]# hiera -c /etc/puppet/hiera.yaml service_names |grep '\bpacemaker_remote\b'
 "pacemaker_remote"]
[root@overcloud-novacompute-0 puppet]# echo $?
0

Change-Id: I54c5756ba6dea791aef89a79bc0b538ba02ae48a
Closes-Bug: #1688214

7 years agoMerge "Initial VIP ipv6 minor update code"
Jenkins [Thu, 4 May 2017 10:04:06 +0000 (10:04 +0000)]
Merge "Initial VIP ipv6 minor update code"

7 years agoMerge "Internal TLS: use common CA file parameter for libvirt CA cert"
Jenkins [Thu, 4 May 2017 09:58:01 +0000 (09:58 +0000)]
Merge "Internal TLS: use common CA file parameter for libvirt CA cert"

7 years agoMerge "Add back Heat conditions in upgrade workflow"
Jenkins [Wed, 3 May 2017 21:23:21 +0000 (21:23 +0000)]
Merge "Add back Heat conditions in upgrade workflow"

7 years agoMerge "snmp: add SnmpdBindHost parameter"
Jenkins [Wed, 3 May 2017 21:14:45 +0000 (21:14 +0000)]
Merge "snmp: add SnmpdBindHost parameter"

7 years agoMerge "Set reasonable TTL defaults for Ceilometer DB"
Jenkins [Wed, 3 May 2017 21:14:38 +0000 (21:14 +0000)]
Merge "Set reasonable TTL defaults for Ceilometer DB"

7 years agoMerge "Expose metric delay processing metric"
Jenkins [Wed, 3 May 2017 21:14:31 +0000 (21:14 +0000)]
Merge "Expose metric delay processing metric"

7 years ago[N->O] Add openstack-nova-migration to compute nodes.
Sofer Athlan-Guyot [Fri, 28 Apr 2017 17:48:44 +0000 (19:48 +0200)]
[N->O] Add openstack-nova-migration to compute nodes.

This add openstack-nova-migration on the compute during the upgrade.

Closes-Bug: #1687081

Depends-on: Iab022bdfb655e3c52fecebf416e75c9e981072ab
Depends-on: I02dc8934521340f42ac44a7d16889f6d79620c33

Change-Id: I3db2a3188e538eeaef61769d38f0166545444cfe

7 years agoRestrict nova migration ssh tunnel
Oliver Walsh [Wed, 19 Apr 2017 13:51:02 +0000 (14:51 +0100)]
Restrict nova migration ssh tunnel

Specify the allowed networks for migration ssh tunneling.

bp tripleo-cold-migration

Change-Id: Iab022bdfb655e3c52fecebf416e75c9e981072ab
Depends-on: Idb56acd1e1ecb5a5fd4d942969be428cc9cbe293

7 years agoMerge "Add parameter Ec2ApiExternalNetwork for VPCs"
Jenkins [Wed, 3 May 2017 20:08:46 +0000 (20:08 +0000)]
Merge "Add parameter Ec2ApiExternalNetwork for VPCs"

7 years agoAdd back Heat conditions in upgrade workflow
Giulio Fidente [Tue, 4 Apr 2017 15:49:46 +0000 (17:49 +0200)]
Add back Heat conditions in upgrade workflow

By adding back the conditions we avoid the deployment of unneded
software configs on nodes where we don't have any upgrade task to
run, speeding up the upgrade process.

Related-Bug: #1679486
Related-Bug: #1678101
Change-Id: I5c8b0c4abfc0607f42fd3f2da9f5ef2702b1bbe1

7 years agoConfigure snmpd auth params in ceilometer profile
Pradeep Kilambi [Wed, 3 May 2017 17:16:56 +0000 (13:16 -0400)]
Configure snmpd auth params in ceilometer profile

Depends-On: I55ac06e1a561d29d7e1c928a1684989c9654b95d

Change-Id: Id29e96979b937593efe244f46ce2dd74df3aaa7f

7 years agoSet reasonable TTL defaults for Ceilometer DB
Pradeep Kilambi [Wed, 3 May 2017 16:07:09 +0000 (12:07 -0400)]
Set reasonable TTL defaults for Ceilometer DB

By deafult, we let the data live for ever. Which isnt very efficient.
Lets expose params to tweak this and use a reasonable default.

Change-Id: I145fa73a7af9cb4135ba910d3659853b3baa893d

7 years agoExpose metric delay processing metric
Pradeep Kilambi [Fri, 21 Apr 2017 20:16:38 +0000 (16:16 -0400)]
Expose metric delay processing metric

For performance reasons we might want to tweak this param
lets expose this via tripleo. The puppet changes were
added in this patch I5de5283d1b14e0bba63d6d9a440611914ba86ca4

Change-Id: I72f1fe3a47060fe37602a70b8a74fba72209127c

7 years agoMerge "Internal TLS: Use specific CA file for haproxy"
Jenkins [Wed, 3 May 2017 15:28:03 +0000 (15:28 +0000)]
Merge "Internal TLS: Use specific CA file for haproxy"

7 years agoInternal TLS: Use specific CA file for mysql-client
Juan Antonio Osorio Robles [Wed, 3 May 2017 09:56:17 +0000 (12:56 +0300)]
Internal TLS: Use specific CA file for mysql-client

Instead of using the CA bundle, this sets the mysql client configuration
file to use a specific file for validating the certificate of the
database server. This helps in two ways:

* Improves performance since validation will check only one certificate.
* Improves security since we're only the certificates signed by one CA
  are valid, instead of any certificate that the system trusts (which
  could include potentially compromised public certs).

Change-Id: I46f7cb6da73715f8f331337e0161418450d5afd7
Depends-On: I75bdaf71d88d169e64687a180cb13c1f63418a0f

7 years agoUse httpd in Heat docker services
Thomas Herve [Mon, 20 Mar 2017 13:41:56 +0000 (14:41 +0100)]
Use httpd in Heat docker services

This switches heat-api and heat-api-cfn to use httpd in containerized
overcloud.

Co-Authored-By: Martin André <m.andre@redhat.com>
Change-Id: I2fe6e25474279c7c91a69d9df7b28e12b1d8ac00

7 years agoMerge "Move containers common volumes from yaql to list_concat"
Jenkins [Wed, 3 May 2017 10:43:45 +0000 (10:43 +0000)]
Merge "Move containers common volumes from yaql to list_concat"

7 years agoInternal TLS: use common CA file parameter for libvirt CA cert
Juan Antonio Osorio Robles [Wed, 26 Apr 2017 09:38:22 +0000 (12:38 +0300)]
Internal TLS: use common CA file parameter for libvirt CA cert

libvirt has its own parameter for setting the CA, however, if we have a
common CA for all services in the internal network (which we do), it's
more consistent to use the common parameter for configuring that CA
file.

The previous parameter was left in case the deployer wants to use a
specific CA file for the compute nodes.

Change-Id: I3d132d3d257d7ea9f43e49593f8509c3cd205ca5

7 years agoInternal TLS: Use specific CA file for haproxy
Juan Antonio Osorio Robles [Wed, 26 Apr 2017 09:36:10 +0000 (12:36 +0300)]
Internal TLS: Use specific CA file for haproxy

Instead of using the CA bundle, this sets HAProxy to use a specific file
for validating the certificates of the services it's proxying. This
helps in two ways:

* Improves performance since validation will check only one certificate.
* Improves security since we're only the certificates signed by one CA
  are valid, instead of any certificate that the system trusts (which
  could include potentially compromised public certs).

Change-Id: Id6de045b3c93c82d37e0b0657c17a3108516016a

7 years agoDisable ComputeNeutron* for cisco-nexus-ucsm
Steven Hardy [Wed, 3 May 2017 08:44:21 +0000 (09:44 +0100)]
Disable ComputeNeutron* for cisco-nexus-ucsm

It seems this wasn't adjusted when https://review.openstack.org/#/c/338315/
landed, which added interfaces for compute specific neutron configuration,
which is disabled for most vendor backends.

Change-Id: I4c98008107568b3b65decd7640e25c7d2b1ea9ff
Related-Bug: #1687597

7 years agoAdd deprecation notes for panko service
Pradeep Kilambi [Wed, 26 Apr 2017 17:27:52 +0000 (13:27 -0400)]
Add deprecation notes for panko service

Change-Id: Ic218a753e0cede2ba3951bcaec843f487dce0c71

7 years agoMerge "Ensure AllNodesExtraConfig runs before AllNodesDeploySteps"
Jenkins [Tue, 2 May 2017 19:02:33 +0000 (19:02 +0000)]
Merge "Ensure AllNodesExtraConfig runs before AllNodesDeploySteps"

7 years agoMerge "Fix for the resource ControllerPostPuppetMaintenanceModeDeployment"
Jenkins [Tue, 2 May 2017 19:02:26 +0000 (19:02 +0000)]
Merge "Fix for the resource ControllerPostPuppetMaintenanceModeDeployment"

7 years agoMerge "Deprecate ceilometer collector"
Jenkins [Tue, 2 May 2017 19:02:19 +0000 (19:02 +0000)]
Merge "Deprecate ceilometer collector"

7 years agoInitial VIP ipv6 minor update code
Michele Baldessari [Thu, 27 Apr 2017 19:41:11 +0000 (21:41 +0200)]
Initial VIP ipv6 minor update code

To test this change we deployed a stock master with ipv6 which created a bunch
of ipv6 with /64 netmask:
[root@overcloud-controller-0 ~]# pcs resource show ip-fd00.fd00.fd00.2000..18
 Resource: ip-fd00.fd00.fd00.2000..18 (class=ocf provider=heartbeat type=IPaddr2)
  Attributes: ip=fd00:fd00:fd00:2000::18 cidr_netmask=64
  Operations: start interval=0s timeout=20s (ip-fd00.fd00.fd00.2000..18-start-interval-0s)
              stop interval=0s timeout=20s (ip-fd00.fd00.fd00.2000..18-stop-interval-0s)
              monitor interval=10s timeout=20s (ip-fd00.fd00.fd00.2000..18-monitor-interval-10s)

Then we update the THT folder with this patch and upload the new scripts on the undercloud via:
openstack overcloud deploy --update-plan-only ....

Then we kick off the minor update workflow:
openstack overcloud update stack -i overcloud

Once the controller-0 node (bootstrap node for pacemaker) is completed we have the
correct VIP configuration:
[root@overcloud-controller-0 heat-config-script]# pcs resource show ip-fd00.fd00.fd00.2000..18
 Resource: ip-fd00.fd00.fd00.2000..18 (class=ocf provider=heartbeat type=IPaddr2)
  Attributes: ip=fd00:fd00:fd00:2000::18 cidr_netmask=128 nic=vlan20 lvs_ipv6_addrlabel=true lvs_ipv6_addrlabel_value=99
  Operations: start interval=0s timeout=20s (ip-fd00.fd00.fd00.2000..18-start-interval-0s)
              stop interval=0s timeout=20s (ip-fd00.fd00.fd00.2000..18-stop-interval-0s)
              monitor interval=10s timeout=20s (ip-fd00.fd00.fd00.2000..18-monitor-interval-10s)

Also verified that running the script a second time does not alter the
(already fixed) VIPs.

Co-Authored-By: Damien Ciabrini <dciabrin@redhat.com>
Change-Id: I765cd5c9b57134dff61f67ce726bf88af90f8090

7 years agoMerge "Use list_concat for metadata_settings for haproxy"
Jenkins [Tue, 2 May 2017 17:58:01 +0000 (17:58 +0000)]
Merge "Use list_concat for metadata_settings for haproxy"

7 years agosnmp: add SnmpdBindHost parameter
Emilien Macchi [Tue, 2 May 2017 16:15:08 +0000 (12:15 -0400)]
snmp: add SnmpdBindHost parameter

SnmpdBindHost will be useful for users who want to change the binding
options for SNMP daemon.
It has to be an array, and by the default the value is
['udp:161','udp6:[::1]:161'] like it was in puppet-tripleo profile.

Change-Id: Iccf0a8d35cc05d34272c078c97a5dddfb8e7d614
Closes-Bug: #1687628

7 years agoEnsure AllNodesExtraConfig runs before AllNodesDeploySteps
Steven Hardy [Tue, 2 May 2017 10:54:12 +0000 (11:54 +0100)]
Ensure AllNodesExtraConfig runs before AllNodesDeploySteps

When implementing custom roles, we lost an implicit dependency that
ensured AllNodesExtraConfig is applied before AllNodesDeploySteps,
which causes problems if you need to write hieradata via the
AllNodesExtraConfig hook (some cisco integrations we have in tree
do this, and are now broken because the ordering is no longer ensured.

Change-Id: Ie78ecbb4e135ab7f196867ef9d8d271049a9cd10
Closes-Bug: #1687597

7 years agoMerge "Allow to deploy Octavia API & Neutron Server on 2 different nodes"
Jenkins [Tue, 2 May 2017 14:22:33 +0000 (14:22 +0000)]
Merge "Allow to deploy Octavia API & Neutron Server on 2 different nodes"

7 years agoFix for the resource ControllerPostPuppetMaintenanceModeDeployment
Carlos Camacho [Thu, 27 Apr 2017 09:00:32 +0000 (11:00 +0200)]
Fix for the resource ControllerPostPuppetMaintenanceModeDeployment

Closes-Bug:1686619

Change-Id: I7c32ca39a456de9833d30c31d41fcb727d2b0a34