apex-puppet-tripleo.git
8 years agoFixes transparent binding to OpenDaylight in HA Proxy
Tim Rozet [Sun, 30 Oct 2016 13:44:18 +0000 (09:44 -0400)]
Fixes transparent binding to OpenDaylight in HA Proxy

ODL was missing transparent binding mode, which causes HA deployments to
fail since HA Proxy will try to come up on every node (even without
VIP).

Closes-Bug: 1637833

Change-Id: I0bb7839cdcfeacb4ca1a9fc6f878e8b51330be92
Signed-off-by: Tim Rozet <trozet@redhat.com>
8 years agoMerge "Set redis file descriptor limit when run via pacemaker"
Jenkins [Thu, 27 Oct 2016 07:02:34 +0000 (07:02 +0000)]
Merge "Set redis file descriptor limit when run via pacemaker"

8 years agoMerge "Deploy cinder over Apache httpd"
Jenkins [Wed, 26 Oct 2016 15:55:15 +0000 (15:55 +0000)]
Merge "Deploy cinder over Apache httpd"

8 years agoMerge "Only restart haproxy services when enable_load_balancer is defined"
Jenkins [Wed, 26 Oct 2016 13:33:25 +0000 (13:33 +0000)]
Merge "Only restart haproxy services when enable_load_balancer is defined"

8 years agoMerge "Remove the hardcoded tcp_keepalive false parameter"
Jenkins [Wed, 26 Oct 2016 13:28:08 +0000 (13:28 +0000)]
Merge "Remove the hardcoded tcp_keepalive false parameter"

8 years agoOnly restart haproxy services when enable_load_balancer is defined
Michele Baldessari [Tue, 25 Oct 2016 12:36:56 +0000 (14:36 +0200)]
Only restart haproxy services when enable_load_balancer is defined

If we upgrade a cloud that was configured with external load balancer
the process will fail during convergence step because it will try to
restart haproxy which is not configured when an external load balancer
is configured.

Closes-Bug: #1636527

Change-Id: I6f6caec3e5c96e77437c1c83e625f39649a66c48

8 years agoSet redis file descriptor limit when run via pacemaker
Michele Baldessari [Fri, 21 Oct 2016 08:02:39 +0000 (10:02 +0200)]
Set redis file descriptor limit when run via pacemaker

The current redis file descriptor limit is 4096 because of two reasons:
- It is run via the redis user
- It is not started via systemd which has explicit LimitNOFILE set to
  10240 (which matches the default configuration of maximum 10000
  clients)

Create an /etc/security/limits.d/redis.conf file in order to increase
the fd limit value  With this change we correctly get the following
limits:
[root@overcloud-controller-0 ~]# pcs status |grep -A2 redis
 Master/Slave Set: redis-master [redis]
     Masters: [ overcloud-controller-2 ]
     Slaves: [ overcloud-controller-0 overcloud-controller-1 ]

[root@overcloud-controller-0 ~]# cat /proc/`pgrep redis`/limits | grep open
Max open files            10240                10240   files

Previously this limit was set to 4096.

Change-Id: I7691581bad92ad9442cecd82cf44f5ac78ed169f
Closes-Bug: #1635334

8 years agoMerge "Enable communication between UI and the Undercloud by making HAProxy proxy...
Jenkins [Sun, 23 Oct 2016 08:47:56 +0000 (08:47 +0000)]
Merge "Enable communication between UI and the Undercloud by making HAProxy proxy for the UI"

8 years agoMerge "Enable haproxy statistics unix socket"
Jenkins [Sun, 23 Oct 2016 08:09:44 +0000 (08:09 +0000)]
Merge "Enable haproxy statistics unix socket"

8 years agoMerge "Increase haproxy client/server timeout for swift-proxy"
Jenkins [Sat, 22 Oct 2016 21:45:27 +0000 (21:45 +0000)]
Merge "Increase haproxy client/server timeout for swift-proxy"

8 years agoMerge "Use HAProxy for docker-registry endpoint"
Jenkins [Sat, 22 Oct 2016 21:44:51 +0000 (21:44 +0000)]
Merge "Use HAProxy for docker-registry endpoint"

8 years agoMerge "Deploy monitoring/logging agents sooner"
Jenkins [Fri, 21 Oct 2016 21:05:51 +0000 (21:05 +0000)]
Merge "Deploy monitoring/logging agents sooner"

8 years agoMerge "Add zaqar profiles"
Jenkins [Fri, 21 Oct 2016 21:04:23 +0000 (21:04 +0000)]
Merge "Add zaqar profiles"

8 years agoIncrease haproxy client/server timeout for swift-proxy
John Trowbridge [Fri, 21 Oct 2016 14:47:17 +0000 (10:47 -0400)]
Increase haproxy client/server timeout for swift-proxy

The upload and extraction for the plan tarball to swift can take
longer than the default one minute in slower environments. Doubling
the timeout to two minutes has proven to help.

This is only a partial fix, because the error reporting for this
issue also needs to be improved.

Change-Id: I06592d38fdfefacc8bdf76289a0bfa20eb33a89b
Partial-Bug: 1635269

8 years agoMerge "Removes logic dependent on 'odl_on_controller'"
Jenkins [Fri, 21 Oct 2016 12:57:11 +0000 (12:57 +0000)]
Merge "Removes logic dependent on 'odl_on_controller'"

8 years agoMerge "Enable TLS in the internal network for keystone"
Jenkins [Fri, 21 Oct 2016 12:05:31 +0000 (12:05 +0000)]
Merge "Enable TLS in the internal network for keystone"

8 years agoDeploy monitoring/logging agents sooner
Martin Mágr [Tue, 4 Oct 2016 10:29:51 +0000 (12:29 +0200)]
Deploy monitoring/logging agents sooner

To be able to monitor during deployment, we need sensu clients
and fluentd collectors be deployed as soon as it is possible.

Change-Id: I952f0d6de6f6327d5c923b8f1d7a5979758dbc59

8 years agoRemove the hardcoded tcp_keepalive false parameter
Michele Baldessari [Fri, 21 Oct 2016 05:44:24 +0000 (07:44 +0200)]
Remove the hardcoded tcp_keepalive false parameter

In change I35921652bd84d1d6be0727051294983d4a0dde10 we want to remove
all those duplicate tcp_listen_option entries. One consequence of that
is that we need to set rabbitmq::tcp_keepalive to true via hiera
(as opposed to forcing it via the tcp_listen_option hash).

For this to work we need to remove this forced parameter override.
Note that even if I35921652bd84d1d6be0727051294983d4a0dde10 and this
change don't merge at the exact same time it is still okay because
we do force tcp_keepalive to true via the tcp_listen_options.

Change-Id: I608477d5714a5081b3b4ab3b9fc2932bdd598301

8 years agoMerge "pacemaker/mysql: wait step 2 to remove default accounts"
Jenkins [Thu, 20 Oct 2016 21:51:42 +0000 (21:51 +0000)]
Merge "pacemaker/mysql: wait step 2 to remove default accounts"

8 years agoMerge "Fixes missing ODL ML2 Authentication info"
Jenkins [Thu, 20 Oct 2016 15:34:43 +0000 (15:34 +0000)]
Merge "Fixes missing ODL ML2 Authentication info"

8 years agoUse HAProxy for docker-registry endpoint
Steve Baker [Thu, 20 Oct 2016 01:51:55 +0000 (14:51 +1300)]
Use HAProxy for docker-registry endpoint

The docker tooling has a preference for interacting with encrypted
endpoints. Terminating the docker-registry endpoint with HAProxy
allows the SSL VIP to be used for this purpose.

Change-Id: Ifebfa7256e0887d6f26a478ff8dc82b0ef5f65f6

8 years agoEnable TLS in the internal network for keystone
Juan Antonio Osorio Robles [Wed, 13 Jul 2016 09:27:23 +0000 (12:27 +0300)]
Enable TLS in the internal network for keystone

This optionally enables TLS for keystone in the internal network.
If internal TLS is enabled, each node that is serving the keystone
service will use certmonger to request its certificate.

This, in turn should also configure a command that should be ran when
the certificate is refreshed (which requires the service to be
restarted).

bp tls-via-certmonger
Change-Id: I303f6cf47859284785c0cdc65284a7eb89a4e039

8 years agoMerge "Add port to rabbitmq node ip list"
Jenkins [Wed, 19 Oct 2016 13:55:42 +0000 (13:55 +0000)]
Merge "Add port to rabbitmq node ip list"

8 years agoMerge "Include ::swift::config in Swift API and Storage roles"
Jenkins [Wed, 19 Oct 2016 11:02:00 +0000 (11:02 +0000)]
Merge "Include ::swift::config in Swift API and Storage roles"

8 years agoMerge "Fix broken rabbitmqctl commands when using ipv6"
Jenkins [Wed, 19 Oct 2016 00:21:18 +0000 (00:21 +0000)]
Merge "Fix broken rabbitmqctl commands when using ipv6"

8 years agoMerge "Set memcached_servers for nova API"
Jenkins [Tue, 18 Oct 2016 23:27:40 +0000 (23:27 +0000)]
Merge "Set memcached_servers for nova API"

8 years agoFixes missing ODL ML2 Authentication info
Tim Rozet [Fri, 14 Oct 2016 21:43:51 +0000 (17:43 -0400)]
Fixes missing ODL ML2 Authentication info

Without this, neutron-server fails to start and communication will not
work to ODL REST.

Parital-Bug: 1633630

Change-Id: Ifd906db4e6062ac271c2147fe1149b1009d06ae2
Signed-off-by: Tim Rozet <trozet@redhat.com>
8 years agoMerge "Remove explicit service_name setting from nova manifest"
Jenkins [Tue, 18 Oct 2016 19:55:55 +0000 (19:55 +0000)]
Merge "Remove explicit service_name setting from nova manifest"

8 years agoSet memcached_servers for nova API
Dan Prince [Mon, 17 Oct 2016 18:47:33 +0000 (14:47 -0400)]
Set memcached_servers for nova API

This patch updates the Nova profile so that we set memcached
servers correctly for the Nova keystone auth_token middleware.

Most of the hiera settings for ::nova::keystone::authtoken are
already included in the t-h-t nova-api service.

Change-Id: I3b7ff02abbd0d5e0c38232d02b33e4c7bc411120
Closes-bug: #1633595

8 years agoMerge "Remove faulty migration logic to stop nova-api"
Jenkins [Tue, 18 Oct 2016 09:51:18 +0000 (09:51 +0000)]
Merge "Remove faulty migration logic to stop nova-api"

8 years agoFix broken rabbitmqctl commands when using ipv6
Michele Baldessari [Sat, 15 Oct 2016 09:24:45 +0000 (11:24 +0200)]
Fix broken rabbitmqctl commands when using ipv6

When deploying via ipv6, rabbitmq-ctl commands have the following
issues:

- `rabbitmq cluster_status` shows nodedown alerts
- list_queues / list_connections hang
- `rabbitmqctl node_health_check` fails with an error.

* There is no any issue while performing activity on RHOS setup(From
* horizon/cli). i.e. RHOS environment is functioning as expected.

For example:
sudo rabbitmqctl node_health_check -n rabbit@node1
Checking health of node 'rabbit@node1' ...
Heath check failed:
health check of node 'rabbit@node1' fails: nodedown

The problem is that we are missing the following in
/etc/rabbitmq/rabbitmq-env.conf:
RABBITMQ_CTL_ERL_ARGS="-proto_dist inet6_tcp"

Fix these by setting the appropriate RABBITMQ_CTL_ERL_ARGS when
deploying ipv6.

Closes-Bug: #1633693
Change-Id: I53f4e76e687b3966fbb74fd0c2d83f05176630de

8 years agoEnable communication between UI and the Undercloud by making HAProxy
Dan Trainor [Fri, 14 Oct 2016 21:43:36 +0000 (14:43 -0700)]
Enable communication between UI and the Undercloud by making HAProxy
proxy for the UI

Change-Id: I74eac4bbfc16720eeb6e2bf0ee251689dde3bafc
Implements: enable-communication-ui-undercloud

8 years agoAdd port to rabbitmq node ip list
Brent Eagles [Fri, 14 Oct 2016 19:05:44 +0000 (16:35 -0230)]
Add port to rabbitmq node ip list

We use the rabbit_hosts configuration for most of our services but we
haven't been adding the configured port. This patch appends the IP port
used provided to the service's heat template to the IPs in the list.

Note: while we could use the value set for the rabbitmq server in
rabbitmq::port, it doesn't allow for dealing with SSL. This also is also
backwards compatible with the RabbitClientPort parameters used in the
heat templates.

Change-Id: I0000f039144a6b0e98c0a148dc69324f60db3d8b
Closes-Bug: #1633580

8 years agoRemoves logic dependent on 'odl_on_controller'
Tim Rozet [Mon, 17 Oct 2016 15:29:10 +0000 (11:29 -0400)]
Removes logic dependent on 'odl_on_controller'

Since moving to composable service/roles there was some logic here that
was relying on a variable to enable ODL rather than enabling the service
itself to decide where ODL was enabled.  Now that ODL and ODL OVS
configuration are split into 2 different services we can make these
truly composable.

Partial-Bug: 1633625

Change-Id: Ia55c05e12d5d434111a13e1ed795da530e3ff4a5
Signed-off-by: Tim Rozet <trozet@redhat.com>
8 years agoMerge "packages: run upgrade at 'setup' stage"
Jenkins [Mon, 17 Oct 2016 14:05:53 +0000 (14:05 +0000)]
Merge "packages: run upgrade at 'setup' stage"

8 years agoAdd zaqar profiles
Brad P. Crochet [Fri, 10 Jun 2016 13:02:51 +0000 (09:02 -0400)]
Add zaqar profiles

Change-Id: Ie215289a7be681a2b1aa5495d3f965c005d62f52
Depends-On: Ia863b38bbac1aceabe6b7deb6939c9db693ff16d

8 years agoDeploy cinder over Apache httpd
Juan Antonio Osorio Robles [Mon, 17 Oct 2016 07:16:11 +0000 (10:16 +0300)]
Deploy cinder over Apache httpd

This adds the necessary resources to the manifest to run cinder
to run over httpd. The service name will be moved to t-h-t in a
subsequent commit, but since this patch depends on t-h-t, we try to
avoid circular dependencies of repos.

Change-Id: I950257e3b5d8db071752e53557115429574e98e2
Depends-On: Ic1967a6f4f60a273965811516f33121115d518b4

8 years agoRemove faulty migration logic to stop nova-api
Juan Antonio Osorio Robles [Mon, 17 Oct 2016 06:47:34 +0000 (09:47 +0300)]
Remove faulty migration logic to stop nova-api

The patch making nova run over httpd had added migration logic to
stop nova-api, However, this doesn't work since nova-metadata is
running over the same process. Now, the fact that is was running
seems to be just luck, since the systemctl runs, then we start the
service via the nova::api resource. So this is fragile in it's
current state.

This then removes the exec, as we don't need it for the migration.

Change-Id: I4603b81d30a704b07eef461b3cdbfe164614b04f

8 years agoEnable haproxy statistics unix socket
Michele Baldessari [Sun, 16 Oct 2016 19:57:29 +0000 (21:57 +0200)]
Enable haproxy statistics unix socket

By enabling the statistics socket we allow the collection
of statistics over time for haproxy.

This socket is set to "user" level, so this socket is limited
to read-only. The "stats timeout" line is optional, but since the
default timeout of the stats socket is 10s, we set this higher.

Change-Id: I22d3ab771e981be0d2c74b60443d276973bc1639

8 years agoMerge "Move heat domain/user creation into keystone profile"
Jenkins [Fri, 14 Oct 2016 22:50:17 +0000 (22:50 +0000)]
Merge "Move heat domain/user creation into keystone profile"

8 years agopackages: run upgrade at 'setup' stage
Emilien Macchi [Fri, 14 Oct 2016 14:15:01 +0000 (10:15 -0400)]
packages: run upgrade at 'setup' stage

Instead of using an operator to make sure we upgrade package before any
service, which causes dependency cycles with iptables puppet module,
let's do another approach where we upgrade rpms in the 'setup' stage,
which is a stage that runs before configure and running services.

In that way, we'll remove dependency cycles and make sure packages are
upgrades before configure and running TripleO services.

Change-Id: I1be83f88be1959885c980ab4f428477d412751f7

8 years agoMerge "pacemaker: increase timeouts for rabbitmq and redis"
Jenkins [Fri, 14 Oct 2016 13:40:23 +0000 (13:40 +0000)]
Merge "pacemaker: increase timeouts for rabbitmq and redis"

8 years agoMove heat domain/user creation into keystone profile
Steven Hardy [Thu, 13 Oct 2016 17:56:35 +0000 (18:56 +0100)]
Move heat domain/user creation into keystone profile

This needs to happen on the node running keystone, or things break
when you try to deploy e.g the heat_engine service on a non Controller
role.  We check the enabled flag for heat engine so this only happens
if the heat_engine service is running on some (any) role.

Partial-Bug: #1631130
Change-Id: Ib088a572b384b479f51d56555734d78ab840a1f3

8 years agoRemove explicit service_name setting from nova manifest
Juan Antonio Osorio Robles [Fri, 14 Oct 2016 10:11:25 +0000 (13:11 +0300)]
Remove explicit service_name setting from nova manifest

We can now get this parameter from t-h-t, so it's not needed here.

Change-Id: I014e7b3a6feb5609ace2e8ef1e4df11448b0a0cc
Depends-On: Ic229182cc5c887b57f6182c3db1bac8bed330f7c

8 years agoMerge "Deploy nova over Apache httpd"
Jenkins [Fri, 14 Oct 2016 09:59:06 +0000 (09:59 +0000)]
Merge "Deploy nova over Apache httpd"

8 years agoMerge "Add part_power and min_part_hours for Swift"
Jenkins [Fri, 14 Oct 2016 08:14:11 +0000 (08:14 +0000)]
Merge "Add part_power and min_part_hours for Swift"

8 years agoMerge "Only run ceilometer::db::sync on bootstrap node"
Jenkins [Thu, 13 Oct 2016 23:20:55 +0000 (23:20 +0000)]
Merge "Only run ceilometer::db::sync on bootstrap node"

8 years agoAdd part_power and min_part_hours for Swift
Christian Schwede [Mon, 10 Oct 2016 14:19:26 +0000 (16:19 +0200)]
Add part_power and min_part_hours for Swift

Change-Id: I78049105adf52226d47cc6764b1ba6c2c06e91e5
Related-Bug: 1631926

8 years agoMerge "Ensure presence of pacemaker restart directory."
Jenkins [Thu, 13 Oct 2016 15:25:54 +0000 (15:25 +0000)]
Merge "Ensure presence of pacemaker restart directory."

8 years agopacemaker/mysql: wait step 2 to remove default accounts
Emilien Macchi [Thu, 13 Oct 2016 15:21:02 +0000 (11:21 -0400)]
pacemaker/mysql: wait step 2 to remove default accounts

remove_default_accounts is a mysql::server parameter that, set to True,
will execute some MySQL commands to cleanup MySQL defaults accounts
created by packaging.
In order to successfully run the commands, we need MySQL up and running,
which is not the case at step 1 but at step 2.

This patch make sure we run the commands at step 2 on pacemaker master
only.

No change for scenarios without Pacemaker.

Change-Id: Ifad3cb40fd958d7ea606b9cd2ba4c8ec22a8e94e
Closes-Bug: #1633113

8 years agoEnsure presence of pacemaker restart directory.
Sofer Athlan-Guyot [Tue, 11 Oct 2016 08:18:16 +0000 (10:18 +0200)]
Ensure presence of pacemaker restart directory.

Currently the /var/lib/tripleo/pacemaker-restarts directory is created
only when base/pacemaker.pp file is included in the manifest. There is a
notification that ensures precedence order and trigger the touch.

The trigger and the dependency on the base/pacemaker.pp should not be
required as someone using the tripleo::pacemaker::resource_restart_flag
would expect the file to be created no matter what.

For instance in the Cinder upgrade in the convergence step has this
defined:

        Cinder_config<||> ~> Tripleo::Pacemaker::Resource_restart_flag["${::cinder::params::volume_service}"]

but in the convergence step, the base/pacemaker.pp is not included and
the above trigger fails as the directory is not created.

It looks the same for manilla.pp.

This patch removes the trigger and ensures the directory is created when
needed.

Change-Id: Ic3aa82c818662e9e88e21c8381d657adef5b43ac
Closes-Bug: #1632232

8 years agoDeploy nova over Apache httpd
Juan Antonio Osorio Robles [Mon, 26 Sep 2016 07:58:36 +0000 (10:58 +0300)]
Deploy nova over Apache httpd

This adds the necessary resources to the manifest to migrate nova
to run over httpd. The service name will be moved to t-h-t in a
subsequent commit, but since this patch depends on t-h-t, we try to
avoid circular dependencies of repos.

Change-Id: I91d430a3871672f90b0f885736f067ddae3c238c
Depends-On: I57fb20cf0d58b3376243ba4aeb04e995e7152ce3

8 years agoMerge "Fix eqlx chap password"
Jenkins [Wed, 12 Oct 2016 23:56:32 +0000 (23:56 +0000)]
Merge "Fix eqlx chap password"

8 years agoMerge "Add versioned_writes to Swift proxy config"
Jenkins [Wed, 12 Oct 2016 19:45:16 +0000 (19:45 +0000)]
Merge "Add versioned_writes to Swift proxy config"

8 years agopacemaker: increase timeouts for rabbitmq and redis
Emilien Macchi [Wed, 12 Oct 2016 16:32:18 +0000 (12:32 -0400)]
pacemaker: increase timeouts for rabbitmq and redis

When we observe the 'stop timeout' values of pacemaker resources:
rabbitmq and redis, they are set to 90s. But for all other services, it
is set to 200s.
The overcloud deployment sometimes fails due to this with the error:
Error: Could not complete shutdown of rabbitmq-clone, 1 resources
remaining
Error performing operation: Timer expired

This patch updates the timeout for Redis and RabbitMQ to avoid this
error.

Change-Id: I8a3b3951a896ee3e8e5e09778e8ea4717e76a1b4

8 years agoMerge "Update websocket service name in config template"
Jenkins [Wed, 12 Oct 2016 12:37:35 +0000 (12:37 +0000)]
Merge "Update websocket service name in config template"

8 years agoAdd versioned_writes to Swift proxy config
Christian Schwede [Mon, 10 Oct 2016 20:15:34 +0000 (22:15 +0200)]
Add versioned_writes to Swift proxy config

Tempest expects object versioning to be enabled by default in Swift;
if not it has to be disabled explicitly in the Tempest config.

This is a commonly used middleware, therefore it should be enabled
in the overcloud proxy nodes as well.

Closes-Bug: 1632215
Change-Id: I07a206473ff7939749e3eba1dfe3ea8c4526eb5c

8 years agoMerge "Fetch internal certificates for HAProxy based on network"
Jenkins [Mon, 10 Oct 2016 16:24:58 +0000 (16:24 +0000)]
Merge "Fetch internal certificates for HAProxy based on network"

8 years agoMerge "Use Heat role *_enabled hiera to check Manila backends"
Jenkins [Mon, 10 Oct 2016 09:50:56 +0000 (09:50 +0000)]
Merge "Use Heat role *_enabled hiera to check Manila backends"

8 years agoFix eqlx chap password
Alex Schultz [Fri, 7 Oct 2016 20:49:19 +0000 (14:49 -0600)]
Fix eqlx chap password

The hiera key generated by THT is eqlx_chap_password and not
eql_san_password.

https://github.com/openstack/tripleo-heat-templates/blob/master/puppet/extraconfig/pre_deploy/controller/cinder-eqlx.yaml#L63

Change-Id: Ic062d9060f0ce437336e2bd6aaca3887fc33c8cf
Closes-Bug: #1631527

8 years agoOnly run ceilometer::db::sync on bootstrap node
Alex Schultz [Fri, 30 Sep 2016 15:55:24 +0000 (09:55 -0600)]
Only run ceilometer::db::sync on bootstrap node

The ceilometer::db::sync is included by default in ceilometer::db but we
only want it to run on the bootstrap node.  This change passes the
sync_db parameter to ceilometer::db to manage the db sync process rather
than trying to manage the inclusion of ceilometer::db::sync within the
profile class.

Change-Id: Ib56db1a90dd6fbfe7582fc57b7728df81942cce2
Closes-Bug: #1629373

8 years agoMerge "Release 5.3.0 (RC3)"
Jenkins [Fri, 7 Oct 2016 13:28:34 +0000 (13:28 +0000)]
Merge "Release 5.3.0 (RC3)"

8 years agoInclude ::swift::config in Swift API and Storage roles
Giulio Fidente [Fri, 7 Oct 2016 12:57:01 +0000 (14:57 +0200)]
Include ::swift::config in Swift API and Storage roles

This changes makes the Swift API and Storage roles to include the
::swift::config class, as we do for the other OpenStack services,
which is useful to push arbitrary config settings into Swift.

Change-Id: Iaf2c2f0f0103fe9264ce875099a1578b353a5558

8 years agoRelease 5.3.0 (RC3)
Emilien Macchi [Fri, 7 Oct 2016 11:32:08 +0000 (07:32 -0400)]
Release 5.3.0 (RC3)

Release Newton RC3 5.3.0
Change-Id: I1b367dcaba4c2c0bffa9eae0b81ee81f1676d754

8 years agoUse Heat role *_enabled hiera to check Manila backends
Giulio Fidente [Fri, 7 Oct 2016 10:28:00 +0000 (12:28 +0200)]
Use Heat role *_enabled hiera to check Manila backends

Aligns the way how we check for enabled backends in
pacemaker/manila.pp with what we did in base/manila/api.pp with [1].

The benefit is that we don't need to emit from the templates
custom hiera.

1. I86ba8b9d5872c0f1a94e74215e97b796ad129bfb

Change-Id: I04e28a95e8d69a24cd3df109bf1802bfcbd941db

8 years agoSet enabled_share_protocols based on enabled backends
Giulio Fidente [Wed, 5 Oct 2016 12:37:09 +0000 (14:37 +0200)]
Set enabled_share_protocols based on enabled backends

When deploying manila with cephfs, share creation fails because
'enabled_share_protocols' sticks to NFS,CIFS and does not get updated
with CEPHFS. This change aims at fixing it by building the list of
enabled protocols based on the list of enabled backends.

Co-Authored-By: Tom Barron <tbarron@redhat.com>
Closes-Bug: 1630564
Change-Id: I86ba8b9d5872c0f1a94e74215e97b796ad129bfb

8 years agoMerge "Add ceph profile rspec testing"
Jenkins [Fri, 7 Oct 2016 04:50:03 +0000 (04:50 +0000)]
Merge "Add ceph profile rspec testing"

8 years agoMerge "Add ceilometer profile rspec testing"
Jenkins [Fri, 7 Oct 2016 04:49:57 +0000 (04:49 +0000)]
Merge "Add ceilometer profile rspec testing"

8 years agoMerge "Add aodh profile rspec testing"
Jenkins [Fri, 7 Oct 2016 04:04:21 +0000 (04:04 +0000)]
Merge "Add aodh profile rspec testing"

8 years agoMerge "Enable usage of "short names" for Ceph cluster"
Jenkins [Thu, 6 Oct 2016 11:55:13 +0000 (11:55 +0000)]
Merge "Enable usage of "short names" for Ceph cluster"

8 years agoUpdate websocket service name in config template
Julie Pichon [Thu, 6 Oct 2016 11:44:48 +0000 (12:44 +0100)]
Update websocket service name in config template

The name was changed to "zaqar-websocket" recently. Having the old name
in the configuration file leads to errors and confusion when overriding
URLs, as the override won't get picked up with the old name.

Change-Id: I7acf900d094e41862958b3cddbb66ff0d8a3e46f
Closes-Bug: #1630965

8 years agoMerge "Enable usage of "short names" for Galera cluster"
Jenkins [Thu, 6 Oct 2016 08:52:15 +0000 (08:52 +0000)]
Merge "Enable usage of "short names" for Galera cluster"

8 years agoMerge "Explicitly use Keystone v2 endpoint in the UI"
Jenkins [Wed, 5 Oct 2016 23:06:42 +0000 (23:06 +0000)]
Merge "Explicitly use Keystone v2 endpoint in the UI"

8 years agoAdd ceph profile rspec testing
Alex Schultz [Wed, 5 Oct 2016 18:22:04 +0000 (12:22 -0600)]
Add ceph profile rspec testing

This change adds rspec testing for the ceph profiles in puppet-tripleo.

Change-Id: I08954e011848d6b747735f11b3cbff5707460c26

8 years agoFetch internal certificates for HAProxy based on network
Juan Antonio Osorio Robles [Wed, 7 Sep 2016 07:29:40 +0000 (10:29 +0300)]
Fetch internal certificates for HAProxy based on network

The service profile in HAProxy has the capability of creating
certificates based on a map. The idea is to standardize this, as
some of those certificates should match certain networks the services
are listening on (with the exception of the external network which is
handled differently and the tenant network which doesn't need a
certificate). So, based on which network a certain service is
listening on, we fetch the appropriate certificate.

bp tls-via-certmonger

Change-Id: I89001ae32f46c9682aecc118753ef6cd647baa62

8 years agoMerge "Use service-specific servernames for haproxy"
Jenkins [Wed, 5 Oct 2016 13:22:50 +0000 (13:22 +0000)]
Merge "Use service-specific servernames for haproxy"

8 years agoEnable usage of "short names" for Ceph cluster
Juan Antonio Osorio Robles [Wed, 5 Oct 2016 13:22:40 +0000 (16:22 +0300)]
Enable usage of "short names" for Ceph cluster

We're not able to use FQDNs yet, so to work around this, we give
precedence to a "short name" list we'll get from t-h-t. We can
migrate to using FQDNs in the next cycle.

Change-Id: Ic6fec1057439ed9122d44ef294be890d3ff8a8ee
Related-Bug: #1628521

8 years agoMerge "Change rabbitmq queues HA mode from ha-all to ha-exactly"
Jenkins [Wed, 5 Oct 2016 12:51:26 +0000 (12:51 +0000)]
Merge "Change rabbitmq queues HA mode from ha-all to ha-exactly"

8 years agoExplicitly use Keystone v2 endpoint in the UI
Julie Pichon [Wed, 5 Oct 2016 11:58:21 +0000 (12:58 +0100)]
Explicitly use Keystone v2 endpoint in the UI

The UI expects a Keystone endpoint URL that includes the version
(without it, it is not possible to log in). Looking at the
dist/tripleo_ui_config.js.sample configuration sample in the tripleo-ui
repository, the current expectation is a v2.0 URL so let's use that for
now.

Change-Id: I4ca04b16251fbee264cd4ce5e5433c2c1cb6d2f0
Closes-Bug: #1630546

8 years agoUse service-specific servernames for haproxy
Juan Antonio Osorio Robles [Wed, 5 Oct 2016 07:37:27 +0000 (10:37 +0300)]
Use service-specific servernames for haproxy

Right now we're hardcoding the server names for the services to be
the controllers. This is problematic if we start  using custom roles
for services, which listen on nodes that are not controllers.

We already have the server names for each service, so using this
mapping instead fixes the issue.

Change-Id: Ic4b65edb3dc1b75abbc3421a87cab97425b058c4
Closes-Bug: #1629098

8 years agoEnable usage of "short names" for Galera cluster
Juan Antonio Osorio Robles [Wed, 5 Oct 2016 07:48:32 +0000 (10:48 +0300)]
Enable usage of "short names" for Galera cluster

We're not able to use FQDNs yet, so to work around this, we give
precedence to a "short name" list we'll get from t-h-t.

Change-Id: I4ef7786474c229d5212a0deb2ca02ee992b030d8
Related-Bug: #1628521

8 years agoChange rabbitmq queues HA mode from ha-all to ha-exactly
Michele Baldessari [Thu, 29 Sep 2016 16:35:25 +0000 (18:35 +0200)]
Change rabbitmq queues HA mode from ha-all to ha-exactly

It turns out that reducing number of rabbitmq queues in cluster
significantly improves performance of cluster especially in the case of
failover recovery time. Right now the cluster uses ha-all mode for rabbitmq
queues.

It is best to change this to "ha-exactly" mode and reduce the number
of queue copies to ceil(N/2) where N is number of controllers in the
cluster - so in typical scenario of 3 controller It would be 2 by
default.

It does not make much sense to keep the copies of queues over whole
cluster since if the quorum of nodes is lost then the rest of cluster
nodes will be stopped anyway. We let the user override this with a
parameter.

I.e. for a 3 node controlplane cluster we will go from this:
pcs resource show rabbitmq
 Resource: rabbitmq (class=ocf provider=heartbeat type=rabbitmq-cluster)
  Attributes: set_policy="ha-all ^(?!amq\.).* {"ha-mode":"all"}"

To this:
pcs resource show rabbitmq
 Resource: rabbitmq (class=ocf provider=heartbeat type=rabbitmq-cluster)
  Attributes: set_policy="ha-all ^(?!amq\.).* {"ha-mode":"exactly","ha-params":2}"

According to Marin Krcmarik's testing recovery time from failure was
reduced significantly.

Co-Authored-By: Marian Krcmarik <mkrcmari@redhat.com>
Change-Id: Ib62001c03e1e08f58cf0c6e0ba07a8879a584084
Partial-Bug: #1628998

8 years agoCleanup the firewall logic.
Dan Prince [Tue, 4 Oct 2016 14:11:55 +0000 (10:11 -0400)]
Cleanup the firewall logic.

We added code in t-h-t to strip empty services from the service_names
list. (These are often the result of a service set to OS::Heat::None).

As such we can now drop this puppet reject statement.

Change-Id: Ie66f14f183de7e44a1f69af862f7d4be9a14c904

8 years agoMerge "Fix the timeout for pacemaker systemd resources"
Jenkins [Tue, 4 Oct 2016 09:12:27 +0000 (09:12 +0000)]
Merge "Fix the timeout for pacemaker systemd resources"

8 years agoClean out UI httpd configuration file
Julie Pichon [Fri, 30 Sep 2016 10:32:45 +0000 (11:32 +0100)]
Clean out UI httpd configuration file

When updating the package with yum directly, a new httpd config file is
created with a different name than the one used by Puppet, causing
httpd to fail. Cleaning out the package config file and keeping it
around means it won't get overwritten on update, and is the way other
projects such as puppet-horizon handle this.

Change-Id: I539729ce4cd0898f8b0f3f26266e4e6d55b99e37
Closes-Bug: #1628983

8 years agoMerge "Use FallbackResource instead of Rewrite for UI"
Jenkins [Mon, 3 Oct 2016 19:16:18 +0000 (19:16 +0000)]
Merge "Use FallbackResource instead of Rewrite for UI"

8 years agoFix the timeout for pacemaker systemd resources
Michele Baldessari [Fri, 30 Sep 2016 22:10:18 +0000 (00:10 +0200)]
Fix the timeout for pacemaker systemd resources

Back in the Mitaka cycle via the change If6b43982c958f63bc78ad997400bf1279c23df7e
we made sure that the default start and stop timeouts for pacemaker
systemd resources is 200s (>= twice the default 90s DefaultTimeoutStopSec
in systemd). We did this change by setting puppet resource defaults for
the Pacemaker::Resource::Service class:

Pacemaker::Resource::Service {
  op_params => 'start timeout=200s stop timeout=200s',
}

The problem is that after the composable services rework, this does not
work anymore and the pacemaker systemd resources that still exist do not
have these timeouts set.

We want to move away from resource defaults for this because its results
are dependent on the inclusion order which in tripleo is not guaranteed
any longer (https://docs.puppet.com/puppet/latest/reference/lang_scope.html#scope-lookup-rules)

The only services affected in Newton are: cinder-volume,
cinder-backup, manila-share, haproxy. I preferred fixing all the
pacemaker resources because it seems the cleanest and most logical
commit.

Change-Id: If89a95706514e536a7a2949871a0002c79b6046e
Closes-Bug: #1629366

8 years agoMerge "Add swift proxy for ceilometer middleware"
Jenkins [Mon, 3 Oct 2016 16:40:19 +0000 (16:40 +0000)]
Merge "Add swift proxy for ceilometer middleware"

8 years agoMerge "Cinder: Add iSCSI protocol parameter"
Jenkins [Mon, 3 Oct 2016 07:49:58 +0000 (07:49 +0000)]
Merge "Cinder: Add iSCSI protocol parameter"

8 years agoMerge "Added X-Forwarded-Proto headers for horizon"
Jenkins [Mon, 3 Oct 2016 06:30:41 +0000 (06:30 +0000)]
Merge "Added X-Forwarded-Proto headers for horizon"

8 years agoAdd ceilometer profile rspec testing
Alex Schultz [Fri, 30 Sep 2016 15:49:35 +0000 (09:49 -0600)]
Add ceilometer profile rspec testing

This change adds rspec testing for the ceilometer profiles. While
writing these tests, the tripleo::profile::base::ceilometer::collector
class needed to have the hiera lookups moved to class parameters to
allow for testing the possible options around the database backend.
These tests add coverage for ipv4 and ipv6 configurations for the
collector profile as well as excluding mongodb on the backend.

Change-Id: I1abae040104e8492a9fe266de74080e1e7701731

8 years agoAdd aodh profile rspec testing
Alex Schultz [Wed, 21 Sep 2016 21:21:49 +0000 (15:21 -0600)]
Add aodh profile rspec testing

This change adds rspec testing for the aodh profile and serves as an
example as to how to add in spec testing using hieradata to provide some
required parameters.  This testing adds improved coverage for
expectations around computed configuration items as well as for
conditions around the steps within the tripleo deployment

Change-Id: Ic763a544289a222fea97020a98821c1e375651a3

8 years agotelemetry: normalize coordination_url
Emilien Macchi [Fri, 30 Sep 2016 13:41:11 +0000 (09:41 -0400)]
telemetry: normalize coordination_url

Normalize coordination_url for Telemetry services, so we can deploy them
with IPv6.

Change-Id: Ic6de09acf0d36ca90cc2041c0add1bc2b4a369a5
Partial-Bug: #1629279
Depends-On: I038e2bac22e3bfa5047d2e76e23cff664546464d

8 years agoUse FallbackResource instead of Rewrite for UI
Honza Pokorny [Wed, 28 Sep 2016 12:23:30 +0000 (09:23 -0300)]
Use FallbackResource instead of Rewrite for UI

The original configuration produced a 400 error for all requests.  The
new FallbackResource directive accomplishes our task in a more elegant
fashion.

Change-Id: Ib5d77d158e73acc63d5c0c85d6aa6d99d2176333
Closes-Bug: 1628484

8 years agometadata.json: prepare RC2 release
Emilien Macchi [Wed, 28 Sep 2016 13:05:19 +0000 (09:05 -0400)]
metadata.json: prepare RC2 release

Bump to 5.2.0 which is RC2 release.

Change-Id: If5e650c52fa3d7701d3079712a9cc8db3a431e36

8 years agoMerge "Move db syncs into mysql base role"
Jenkins [Wed, 28 Sep 2016 09:29:57 +0000 (09:29 +0000)]
Merge "Move db syncs into mysql base role"

8 years agoMove db syncs into mysql base role
Dan Prince [Mon, 26 Sep 2016 16:48:49 +0000 (12:48 -0400)]
Move db syncs into mysql base role

This patch moves the various DB syncs into the MySQL role.

Database creation needs to occur on the MySQL server to
avoid permission issues.

This patch also moves database creation to step 2 so we can
guarantee that all per-service databases exist at this time.
This avoids complex ordering needed during step 3 where
services, on different hosts, can run their own db sync's
in a distributed fashion.

Change-Id: I05cc0afa9373429a3197c194c3e8f784ae96de5f
Partial-bug: #1620595

8 years agoMerge "Add pameter for gmcast.listen_addr configuration"
Jenkins [Mon, 26 Sep 2016 20:42:42 +0000 (20:42 +0000)]
Merge "Add pameter for gmcast.listen_addr configuration"

8 years agoMerge "Make mysql bind-address configurable"
Jenkins [Mon, 26 Sep 2016 13:53:21 +0000 (13:53 +0000)]
Merge "Make mysql bind-address configurable"

8 years agoMerge "Move inclusion of ::manila::db::mysql in manila/api profile"
Jenkins [Mon, 26 Sep 2016 13:33:23 +0000 (13:33 +0000)]
Merge "Move inclusion of ::manila::db::mysql in manila/api profile"