apex-puppet-tripleo.git
8 years agoRemove double include of neutron::server class
Juan Antonio Osorio Robles [Wed, 25 Jan 2017 15:57:45 +0000 (17:57 +0200)]
Remove double include of neutron::server class

This class was being included in the same way in two different branches
of the code which could be joined in the initial branch (or if
statement).

Change-Id: Iee3c1663a2fe929b21a9c089d89b721600af66bd

8 years agoMerge "Clean TLS proxy-related setup for glance api profile"
Jenkins [Wed, 25 Jan 2017 03:36:42 +0000 (03:36 +0000)]
Merge "Clean TLS proxy-related setup for glance api profile"

8 years agoMerge "Make sure we bind the rabbit inter-cluster to a specific interface"
Jenkins [Wed, 25 Jan 2017 02:29:17 +0000 (02:29 +0000)]
Merge "Make sure we bind the rabbit inter-cluster to a specific interface"

8 years agoMerge "pacemaker remote profile support"
Jenkins [Wed, 25 Jan 2017 02:28:56 +0000 (02:28 +0000)]
Merge "pacemaker remote profile support"

8 years agoClean TLS proxy-related setup for glance api profile
Juan Antonio Osorio Robles [Thu, 8 Dec 2016 11:15:03 +0000 (13:15 +0200)]
Clean TLS proxy-related setup for glance api profile

Since the commit this depends on sets it up via hieradata, the
conditions here are no longer needed.

bp tls-via-certmonger
Change-Id: I66956f0b85e8e3bf1ab9562221d51d51c230b88e
Depends-On: I693213a1f35021b540202240e512d121cc1cd0eb

8 years agoMerge "Use TLS proxy for Glance API's internal TLS"
Jenkins [Tue, 24 Jan 2017 17:46:53 +0000 (17:46 +0000)]
Merge "Use TLS proxy for Glance API's internal TLS"

8 years agoMerge "updates to collectd support"
Jenkins [Tue, 24 Jan 2017 16:45:38 +0000 (16:45 +0000)]
Merge "updates to collectd support"

8 years agopacemaker remote profile support
Michele Baldessari [Tue, 22 Nov 2016 21:03:03 +0000 (22:03 +0100)]
pacemaker remote profile support

This support enables a base profile called pacemaker_remote which will
allow the operator to automatically configure the pacemaker_remote
service on such nodes. This manifest also automatically adds any
pacemaker_remote nodes to the pacemaker cluster.

Depends-On: I0c01ecb7df1a0f9856fdc866b9d06acf0283fa4f
Depends-On: Ic0488f4fc63e35b9aede60fae1e2cab34b1fbdd5
Change-Id: I92953afcc7d536d387381f08164cae8b52f41605

8 years agoMerge "Add retries to the ::pacemaker::stonith property"
Jenkins [Tue, 24 Jan 2017 14:40:22 +0000 (14:40 +0000)]
Merge "Add retries to the ::pacemaker::stonith property"

8 years agoMerge "Implement Nova ec2api profile"
Jenkins [Mon, 23 Jan 2017 19:28:39 +0000 (19:28 +0000)]
Merge "Implement Nova ec2api profile"

8 years agoMerge "Remove last bits of Glance Registry"
Jenkins [Mon, 23 Jan 2017 19:27:29 +0000 (19:27 +0000)]
Merge "Remove last bits of Glance Registry"

8 years agoMerge "Add Ceph RBD mirror Pacemaker profile"
Jenkins [Mon, 23 Jan 2017 18:52:47 +0000 (18:52 +0000)]
Merge "Add Ceph RBD mirror Pacemaker profile"

8 years agoUse TLS proxy for Glance API's internal TLS
Juan Antonio Osorio Robles [Thu, 8 Dec 2016 10:02:57 +0000 (12:02 +0200)]
Use TLS proxy for Glance API's internal TLS

This uses the tls_proxy resource added in the previous commit [1] in
front of the Glance API server when internal TLS is enabled. Right
now values are passed quite manually, but a subsequent commit will use
t-h-t to pass the appropriate hieradata, and then we'll be able to clean
it up from here.

Note that the proxy is only deployed when internal TLS is enabled.

[1] I82243fd3acfe4f23aab373116b78e1daf9d08467

bp tls-via-certmonger
Depends-On: Id5dfb38852cf2420f4195a3c1cb98d5c47bbd45e

Change-Id: Id35a846d43ecae8903a0d58306d9803d5ea00bee

8 years agoRemove last bits of Glance Registry
Emilien Macchi [Mon, 23 Jan 2017 13:01:37 +0000 (08:01 -0500)]
Remove last bits of Glance Registry

Glance Registry has been removed in TripleO. So we can clean
puppet-tripleo and remove last bits that used to deploy this service.

Change-Id: Iea8f6340349ab366606205305a3ec9a6e4f11ba6

8 years agoMerge "Add haproxy firewall rules for galera and redis"
Jenkins [Mon, 23 Jan 2017 12:28:41 +0000 (12:28 +0000)]
Merge "Add haproxy firewall rules for galera and redis"

8 years agoMerge "Add a noop_resource function"
Jenkins [Mon, 23 Jan 2017 11:13:14 +0000 (11:13 +0000)]
Merge "Add a noop_resource function"

8 years agoAdd a noop_resource function
Dan Prince [Sat, 21 Jan 2017 01:14:32 +0000 (20:14 -0500)]
Add a noop_resource function

A function to create noop providers (set as the default) for the named
resource. This works alongside of 'puppet apply --tags' to disable
some custom resource types that still attempt to run commands during
prefetch, etc.

Change-Id: Icabdb30369c8ca15e77d169dc441bee8cfd3631f

8 years agoMerge "Add support for fence_ironic fencing agent."
Jenkins [Sat, 21 Jan 2017 01:04:57 +0000 (01:04 +0000)]
Merge "Add support for fence_ironic fencing agent."

8 years agoMerge "cinder: move glance params into common"
Jenkins [Fri, 20 Jan 2017 19:33:32 +0000 (19:33 +0000)]
Merge "cinder: move glance params into common"

8 years agoMerge "Fix typo in endpoint.pp"
Jenkins [Fri, 20 Jan 2017 14:49:59 +0000 (14:49 +0000)]
Merge "Fix typo in endpoint.pp"

8 years agoMerge "Move nova::placement to common nova manifest"
Jenkins [Fri, 20 Jan 2017 13:38:18 +0000 (13:38 +0000)]
Merge "Move nova::placement to common nova manifest"

8 years agoImplement Nova ec2api profile
Sven Anderson [Fri, 1 Jul 2016 13:14:21 +0000 (15:14 +0200)]
Implement Nova ec2api profile

Change-Id: If4b091e1ca02f43aa9c65392baf8ceea007b7cfb

8 years agoMerge "Add base profile for Octavia services"
Jenkins [Fri, 20 Jan 2017 10:51:58 +0000 (10:51 +0000)]
Merge "Add base profile for Octavia services"

8 years agoMerge "Remove unused variable in certmonger/mysql manifest"
Jenkins [Fri, 20 Jan 2017 10:40:12 +0000 (10:40 +0000)]
Merge "Remove unused variable in certmonger/mysql manifest"

8 years agoMake sure we bind the rabbit inter-cluster to a specific interface
Michele Baldessari [Thu, 29 Dec 2016 20:48:55 +0000 (21:48 +0100)]
Make sure we bind the rabbit inter-cluster to a specific interface

Currently the inter-cluster communication port listens to all ip
addresses:
tcp 0 0 0.0.0.0:25672 0.0.0.0:* LISTEN 25631/beam.smp

In order to limit it to listen only to the network assigned to rabbitmq
we need to add the following:
{kernel, [
    ...
    {inet_dist_use_interface, {172,17,0,16}},
    ...
  ]}

In order to do the conversion from an ip address to the Erlang
representation we add a function that takes a string and returns a
converted output. The (~400 randomly generated) IPv6/4 addresses at [1]
have been parsed both via erl's built-in inet:parse_address() function
and our ruby implementation. All converted ip addresses resulted in the
same output [2], [3]. The only difference is that Erlang's parse_address()
considers network ip addresses (e.g. 10.0.0.0) invalid whereas the ruby
function does not. This should not be a problem as the use case here is
to bind a service to a specific ip address on an interface and if
anything we likely prefer the less strict behaviour, given that at least
in theory it is perfectly valid for an interface to have a network
address assigned to it.

[1] http://acksyn.org/files/tripleo/ip-addresses.txt
[2] http://acksyn.org/files/tripleo/ip-addresses-ruby.txt
[3] http://acksyn.org/files/tripleo/ip-addresses-erl.txt
Change-Id: I211c75b9bab25c545bcc7f90f34edebc92bba788
Partial-Bug: #1645898

8 years agoFix typo in endpoint.pp
zhangyanxian [Fri, 20 Jan 2017 07:25:38 +0000 (07:25 +0000)]
Fix typo in endpoint.pp

TrivialFix

Change-Id: I8ea2f108d6f98167217b31284c84dbdf23f55f36

8 years agocinder: move glance params into common
Emilien Macchi [Thu, 19 Jan 2017 23:40:44 +0000 (18:40 -0500)]
cinder: move glance params into common

glance params are also used by cinder-volume. This patch aims to use
cinder::glance in common roles for cinder, so we can split cinder api
and cinder volume.

Depends-On: Id81c029318016068481dd614ed62cc4bfaf0f3e8
Change-Id: I9703efb38c2a3166c7f21c5c1b942f33abb9e76c

8 years agoMove nova::placement to common nova manifest
Emilien Macchi [Thu, 19 Jan 2017 16:30:35 +0000 (11:30 -0500)]
Move nova::placement to common nova manifest

nova::placement needs to be declared on more than placement api node,
because credentials are used by different services (at least
nova-compute now).
This patch moves the class to base/nova.pp, at the same step.
So compute nodes will have the credentials and will be able to use
Placement API on multinode environments.

Change-Id: Iada8e9fcccec7dbfe7ac0ec0f9ec6eac1581290e

8 years agoMerge "Adds etcd"
Jenkins [Thu, 19 Jan 2017 21:08:34 +0000 (21:08 +0000)]
Merge "Adds etcd"

8 years agoMerge "Implement NTP profile"
Jenkins [Thu, 19 Jan 2017 20:08:02 +0000 (20:08 +0000)]
Merge "Implement NTP profile"

8 years agoAdd base profile for Octavia services
beagles [Fri, 5 Aug 2016 20:04:20 +0000 (17:34 -0230)]
Add base profile for Octavia services

Adds initial base profile and profile for API service.

Partially-implements: blueprint octavia-service-integration
Change-Id: I77783029797be4fb488c6e743c51d228eba9c474

8 years agoImplement NTP profile
Carlos Camacho [Thu, 28 Apr 2016 10:06:46 +0000 (12:06 +0200)]
Implement NTP profile

This puppet manifest will install and configure by default
the NTP service. It will also make sure chrony is purged, because it's
present on the EL7 images.

Change-Id: If3cf7d9690001b051465ea25cf8a8c3bc6f7c33a

8 years agoAdd retries to the ::pacemaker::stonith property
Michele Baldessari [Thu, 19 Jan 2017 09:07:52 +0000 (10:07 +0100)]
Add retries to the ::pacemaker::stonith property

Let's set a default number of retries also for the stonith
property creation. Just like we do for most of the composable
HA resource creation.

Change-Id: Ie6e19cc838a3f45100f6c98a350bdf6a37d40590
Depends-On: I20098c5d69cde356fe79f6d8dbdc03ae42ecb3ef

8 years agoAdds etcd
Feng Pan [Wed, 14 Dec 2016 03:36:10 +0000 (22:36 -0500)]
Adds etcd

etcd is used by networking-vpp ML2 driver as the messaging mechanism. This
patch adds etcd service which can be used by other services.

Implements: blueprint fdio-integration-tripleo

Change-Id: Idaa3e3deddf9be3d278e90b569466c2717e2d517
Signed-off-by: Feng Pan <fpan@redhat.com>
8 years agoUse network entries for nova placement
Juan Antonio Osorio Robles [Wed, 18 Jan 2017 22:26:55 +0000 (00:26 +0200)]
Use network entries for nova placement

Having these available from t-h-t, we should be able to use these now.

Change-Id: I7272df25c4fdba152fe15d40444311bc35ace4d9
Depends-On: Id0d34c7c3939ee81126ffd26d0658c0a87805a44

8 years agoMerge "Remove legacy flag and use composable interface"
Jenkins [Wed, 18 Jan 2017 20:00:35 +0000 (20:00 +0000)]
Merge "Remove legacy flag and use composable interface"

8 years agoAdd Ceph RBD mirror Pacemaker profile
Giulio Fidente [Mon, 5 Dec 2016 15:43:23 +0000 (16:43 +0100)]
Add Ceph RBD mirror Pacemaker profile

This change adds a profile for the Ceph RBD mirror service, which
should be managed by Pacemaker to make sure there is always a single
instance running.

Change-Id: Ic63dc5cffece38942d305f538f71dd58a5d50789
Partial-Bug: #1652177

8 years agoRemove legacy flag and use composable interface
Pradeep Kilambi [Fri, 13 Jan 2017 17:13:07 +0000 (12:13 -0500)]
Remove legacy flag and use composable interface

We dont need this flag anymore as we will disable api
using composable interface instead.

See I67900f7e6816212831aea8ed18f323652857fbd3

Closes-bug: #1656364

Change-Id: Ib6aea02bde6ad7e5223336579f0a99d6cd3ee98f

8 years agoupdates to collectd support
Lars Kellogg-Stedman [Thu, 15 Dec 2016 03:07:26 +0000 (22:07 -0500)]
updates to collectd support

Based on Steve Hardy's comments in
https://review.openstack.org/#/c/413748/, we need to move handling of
the list of plugins out of the heat templates and into puppet.  This
module now uses the service_names variable to look up information on
per-service collectd plugins.

Change-Id: Ie5fba01e1f91ffdc39eb0eb1be9b1464c797b04f

8 years agoDo not depend on bootstrap_nodeid for any pacemaker profile
Michele Baldessari [Tue, 17 Jan 2017 17:17:38 +0000 (18:17 +0100)]
Do not depend on bootstrap_nodeid for any pacemaker profile

When we create a pacemaker resource it must happen from a single node.
If it happens from multiple nodes an immediate error will be returned by
pcs.

For the pacemaker roles we enforce this by leveraging the recently
introduced <SERVICE_NAME_bootstrap_short_node_name> which gives us
the first hostname per-service, regardless of the role.
(introduced via I03e8685f939e8ae1fcd8b16883b559615042505d)

With this approach if a pacemaker service belongs to two different
roles (say role Controller on node A and role galera on node B), it
will only create the resource from one of the two and not both (which
would return an error).

Only setting Partial-Bug for this one, because it addresses the issue
from the pacemaker resource creation POV (which is always affected). But
the issue itself is a race that we're theoretically affected by since
the composable roles work landed. While I have tried to fix the more
general case in previous attempts, I think it is best if we start a
discussion on how to fix it, because each approach has a bunch of
potential drawbacks and is quite invasive on how we do things. A
discussion slot for this has been proposed for the Atlanta PTG.

Change-Id: I662398cab60d523d204b57a5674ca8f5c0f2e68a
Partial-Bug: #1615983

8 years agoMerge "Set ceph key when using manila ceph backend"
Jenkins [Wed, 18 Jan 2017 10:20:40 +0000 (10:20 +0000)]
Merge "Set ceph key when using manila ceph backend"

8 years agoMerge "Call VF configuration from udev rules"
Jenkins [Tue, 17 Jan 2017 00:07:15 +0000 (00:07 +0000)]
Merge "Call VF configuration from udev rules"

8 years agoMerge "Add missing Swift base class"
Jenkins [Tue, 17 Jan 2017 00:04:56 +0000 (00:04 +0000)]
Merge "Add missing Swift base class"

8 years agoMerge "Include swift::storage::loopbacks class"
Jenkins [Mon, 16 Jan 2017 23:59:52 +0000 (23:59 +0000)]
Merge "Include swift::storage::loopbacks class"

8 years agoMerge "Set memcache_servers in /etc/swift/object-expirer.conf"
Jenkins [Mon, 16 Jan 2017 23:59:46 +0000 (23:59 +0000)]
Merge "Set memcache_servers in /etc/swift/object-expirer.conf"

8 years agoMerge "Enable object-expirer on Swift proxy profile"
Jenkins [Mon, 16 Jan 2017 23:59:34 +0000 (23:59 +0000)]
Merge "Enable object-expirer on Swift proxy profile"

8 years agoMerge "Implement Nova Placement API profile"
Jenkins [Mon, 16 Jan 2017 18:16:38 +0000 (18:16 +0000)]
Merge "Implement Nova Placement API profile"

8 years agoMerge "Include ::heat at step 3"
Jenkins [Mon, 16 Jan 2017 17:08:35 +0000 (17:08 +0000)]
Merge "Include ::heat at step 3"

8 years agonova: disable ::nova::db::sync_cell_v2
Emilien Macchi [Sat, 14 Jan 2017 15:21:19 +0000 (10:21 -0500)]
nova: disable ::nova::db::sync_cell_v2

This feature is broken for us now and there is work in progress in Nova
to improve nova cell deployment.
Until it's fixed upstream, we need to disable cells deployment for now,
so we can promote our CI.

Change-Id: I379ba9e94a92ed225a03a67fc975b542447a9c8b
Related-Bug: #1649341

8 years agoInclude ::heat at step 3
James Slagle [Fri, 13 Jan 2017 20:41:59 +0000 (15:41 -0500)]
Include ::heat at step 3

Since we include ::heat::keystone::domain at step 3, and that class
requires heat.conf since it uses the heat_config resource, we need to
also include ::heat at step 3. The ::heat class will take care of
installing openstack-heat-common that provides heat.conf.

Closes-Bug: #165389
Partially-implements: blueprint split-stack-software-configuration
Change-Id: I5ba34ca96ca84d3f1cf3785ed8bbef6720f7bd42

8 years agoSet ceph key when using manila ceph backend
Jan Provaznik [Wed, 14 Dec 2016 12:04:17 +0000 (12:04 +0000)]
Set ceph key when using manila ceph backend

Manila ceph driver reads ceph's client configuration
(keyring is the most important) from ceph.conf file
(or any other file set by cephfs_conf_path). ceph.conf
should be updated with keyring location.

If ceph is deployed by tripleo then also manila ceph key
is added into ceph and ceph filesystem is created.

Depends-On: I18436a64fc991b9e697a1d79e369ac110cf8fe20
Change-Id: Iac4a260af6738ed6afd4bcb107221a736d07c1b5
Partial-Bug: #1644784
Closes-Bug: #1646147

8 years agoAdd support for fence_ironic fencing agent.
Chris Jones [Mon, 24 Oct 2016 20:04:11 +0000 (21:04 +0100)]
Add support for fence_ironic fencing agent.

We now support creating Pacemaker stonith fencing using the fence_ironic
fencing agent.

Partial-Bug: #1649695

Depends-On: I315f9bb78a1296f691dadaeb39fb0a48df1d5f06
Change-Id: I596eef68820f16516feeda147d3689f0da85d7ac

8 years agoImplement Nova Placement API profile
Emilien Macchi [Fri, 2 Dec 2016 19:02:43 +0000 (14:02 -0500)]
Implement Nova Placement API profile

Allow TripleO to deploy Nova Placement API with a new profile.

Change-Id: I5e25a50f3d7a9b39f4146a61cb528963ee09e90c

8 years agoMerge "Rspec tests for nova profiles"
Jenkins [Tue, 10 Jan 2017 22:40:45 +0000 (22:40 +0000)]
Merge "Rspec tests for nova profiles"

8 years agoMerge "Add Docker Registry profile"
Jenkins [Tue, 10 Jan 2017 17:33:29 +0000 (17:33 +0000)]
Merge "Add Docker Registry profile"

8 years agoMerge "Move nova cells db sync into nova-api profile"
Jenkins [Tue, 10 Jan 2017 16:12:52 +0000 (16:12 +0000)]
Merge "Move nova cells db sync into nova-api profile"

8 years agoMerge "Add support for not using admin_token in Ceph/RGW"
Jenkins [Tue, 10 Jan 2017 04:14:03 +0000 (04:14 +0000)]
Merge "Add support for not using admin_token in Ceph/RGW"

8 years agoRspec tests for nova profiles
Alex Schultz [Mon, 9 Jan 2017 20:31:37 +0000 (13:31 -0700)]
Rspec tests for nova profiles

This change fixes the hiera calls in the base nova profile to use the
parameter rather than continue to call hiera. Additionally this change
includes basic test coverage for the various nova profiles.

Change-Id: If393606eeb3c39ed3a2655bd89c5c276a9cf106e

8 years agoMove nova cells db sync into nova-api profile
Dan Prince [Mon, 9 Jan 2017 15:17:35 +0000 (10:17 -0500)]
Move nova cells db sync into nova-api profile

Having the db_sync code live in the mysql profile causes
coupling that doesn't work unless your MySQL server has the
latest Nova packages installed. This may not work for some
baremetal setups (where an isolated database exists) or
with containers where the MySQL container definately doesn't
have nova packages installed.

Moving this code into the nova-api role also matches where we
were already db syncing the normal API database so it should be
fine and safe.

Change-Id: Ib625e2ac9c8d6bd1d335c58e291facc4ea5839ae
Co-Authored-By: Alex Schultz <aschultz@redhat.com>
8 years agoAdd support for not using admin_token in Ceph/RGW
Keith Schincke [Thu, 1 Dec 2016 18:37:12 +0000 (13:37 -0500)]
Add support for not using admin_token in Ceph/RGW

This patch add the option for using Keyston V3 authention with
the Ceph/RGW service instead of using the admin_token

Change-Id: I42861afcac221478dcb68be13b6dbc2533a7f158

8 years agoUse THT to define cell0 creation
Alex Schultz [Tue, 3 Jan 2017 21:19:45 +0000 (14:19 -0700)]
Use THT to define cell0 creation

As part of the initial implementation, we hard coded the cell0 setup in
puppet. This change switches it to leverage the defined value in the
tripleo-heat-templates

Change-Id: I896a124d91d06ca85b77c9fbe24fd252815a2d28
Depends-On: I08119d781ef60750cc19753bc03190e413159925
Related-Bug: #1649341

8 years agoAdd Docker Registry profile
Martin André [Fri, 6 Jan 2017 16:14:22 +0000 (17:14 +0100)]
Add Docker Registry profile

The profile was moved out of instack-undercloud puppet manifest and
changed to install a v2 Docker registry rather than the old, deprecated
v1 registry.

Change-Id: Iecf7a4c7e86349e6ecaa0a8ee6d37223e3af7862

8 years agoAdd haproxy firewall rules for galera and redis
Michele Baldessari [Thu, 5 Jan 2017 19:27:46 +0000 (20:27 +0100)]
Add haproxy firewall rules for galera and redis

This change adds haproxy rules for galera and redis.  They are not there
because these haproxy entries do not use the ::tripleo::haproxy::endpoint
function which does this automatically.

Rabbit does not need them because it does not go through haproxy.

Closes-Bug: #1654280
Change-Id: If995d5c36341f3c089cbda9a0827ea28c19c796b

8 years agoMerge "Ensure panko::db class is initialized"
Jenkins [Sat, 7 Jan 2017 04:02:55 +0000 (04:02 +0000)]
Merge "Ensure panko::db class is initialized"

8 years agoMerge "Fix puppet warning for empty value"
Jenkins [Sat, 7 Jan 2017 01:41:02 +0000 (01:41 +0000)]
Merge "Fix puppet warning for empty value"

8 years agoEnsure panko::db class is initialized
Pradeep Kilambi [Fri, 6 Jan 2017 17:51:43 +0000 (12:51 -0500)]
Ensure panko::db class is initialized

Change-Id: If2f6559a7d76b26fa9b0a3ecfa2e2101aae93e3c

8 years agoMerge "glance/api: cleanup on dbsync"
Jenkins [Fri, 6 Jan 2017 16:25:44 +0000 (16:25 +0000)]
Merge "glance/api: cleanup on dbsync"

8 years agoFix puppet warning for empty value
Emilien Macchi [Fri, 6 Jan 2017 15:06:39 +0000 (10:06 -0500)]
Fix puppet warning for empty value

Unknown variable: 'haproxy_ssl_firewall_rules' when public_ssl_port is
empty.
Fixing it by setting an empty hash in this case.

Change-Id: If864732262852ef79ebb91ee77902c86b847072a

8 years agofirewall: add IPv6 support
Emilien Macchi [Wed, 4 Jan 2017 18:56:59 +0000 (13:56 -0500)]
firewall: add IPv6 support

This patch adds support for ip6tables rules in TripleO, in a intuitive
and flexible fashion.

1) Default firewal rules 'source' parameter to undef.
   It was 0.0.0.0/0 before but now undef, so we don't need complex logic to
   support ipv6 rules. undef will create empty source, which is the same as
   0.0.0.0/0 or ::/0.

2) Automatically convert icmp rules to ipv6-icmp for ipv6 rules.

3) Automatically create IPv6 rules like it's for IPv4.

4) Only create rules that can be created, depending on
   source/destination ip version.

This patch should be backward compatible and adds a layer of security
for IPv6 deployments. If previous deployments were manually creating
Ipv6 rules, it's possible that this patch will override them. Our
framework is able to configure any rule, so it shouldn't be a problem
for upgrades.

Co-Authored-By: Ben Nemec <bnemec@redhat.com>
Closes-Bug: #1654050
Change-Id: I98a00a9ae265d3e5854632e749cc8c3a1647298c

8 years agoglance/api: cleanup on dbsync
Emilien Macchi [Thu, 5 Jan 2017 17:09:37 +0000 (12:09 -0500)]
glance/api: cleanup on dbsync

Cleanup some code that were useful in the effort of removing Glance
Registry service from TripleO.

Change-Id: I2a4bdc413e953b8b713d9a12bba74ca18487fe0d

8 years agoMerge "Adds a profile for the Ceph MDS service"
Jenkins [Thu, 5 Jan 2017 16:18:55 +0000 (16:18 +0000)]
Merge "Adds a profile for the Ceph MDS service"

8 years agonova-api: switch to new wsgi class
Emilien Macchi [Wed, 4 Jan 2017 20:09:27 +0000 (15:09 -0500)]
nova-api: switch to new wsgi class

nova::wsgi::apache was deprecated in ocata in favor of
nova::wsgi::apache_api.
Let's switch to it.

Change-Id: I59b3b36be33268fa6e261a7db3c4aa8e8e712ffb
Depends-On: I5fc99062d349597393e2248c66f2d863029c7730

8 years agoMerge "Fixes missing haproxy firewall rules for OpenDaylight"
Jenkins [Wed, 4 Jan 2017 19:13:01 +0000 (19:13 +0000)]
Merge "Fixes missing haproxy firewall rules for OpenDaylight"

8 years agoAdds a profile for the Ceph MDS service
Giulio Fidente [Fri, 25 Nov 2016 09:52:54 +0000 (10:52 +0100)]
Adds a profile for the Ceph MDS service

This change adds a profile to deploy the Ceph MDS service and some
basic unit tests for it.

Depends-On: I558b43deaa9b243c54f3d7ae945f11dd4925eb5d
Change-Id: Iaecc3ff7acb851776c5057c42a5a513a70425d2c
Partial-Bug: #1644784

8 years agoFixes missing haproxy firewall rules for OpenDaylight
Tim Rozet [Tue, 20 Dec 2016 20:45:00 +0000 (15:45 -0500)]
Fixes missing haproxy firewall rules for OpenDaylight

This migrates the haproxy config for ODL to use the
tripleo::haproxy::endpoint class.  This class automatically configures
firewall rules for each haproxy endpoint.  Also removes listening on
public network for IP and adds listening on ctlplane network for admin
access.

Partial-Bug: 1651476

Change-Id: I1f2af2793d040fda17bf73252afe59434d99f31f
Signed-off-by: Tim Rozet <trozet@redhat.com>
8 years agoSync the db as part of the glance-api install
Flavio Percoco [Wed, 7 Dec 2016 14:38:28 +0000 (15:38 +0100)]
Sync the db as part of the glance-api install

The glance database should be created as part of the glance-api service
installation and not the registry. Move the db_sync param to the
glance-api class call.

Change-Id: Ib9f511219e8cb9a7322745b6bd7c4f9c9cc0c198

8 years agoMerge "Adds ability to populate SSH Banner text"
Jenkins [Wed, 4 Jan 2017 02:37:57 +0000 (02:37 +0000)]
Merge "Adds ability to populate SSH Banner text"

8 years agoMerge "Add the ml2_odl section when using opendalight_v2"
Jenkins [Wed, 4 Jan 2017 02:37:52 +0000 (02:37 +0000)]
Merge "Add the ml2_odl section when using opendalight_v2"

8 years agoMerge "Don't include api/scheduler manifests on manila share service set up"
Jenkins [Wed, 4 Jan 2017 02:37:46 +0000 (02:37 +0000)]
Merge "Don't include api/scheduler manifests on manila share service set up"

8 years agoMerge "Add fossw of networking-fujitsu support to puppet-tripleo"
Jenkins [Tue, 3 Jan 2017 23:08:06 +0000 (23:08 +0000)]
Merge "Add fossw of networking-fujitsu support to puppet-tripleo"

8 years agoMerge "Add cell_v2 setup for nova"
Jenkins [Tue, 3 Jan 2017 21:17:20 +0000 (21:17 +0000)]
Merge "Add cell_v2 setup for nova"

8 years agoMerge "Avoid Yum/RPM prefetch in norpm provider"
Jenkins [Tue, 3 Jan 2017 19:40:57 +0000 (19:40 +0000)]
Merge "Avoid Yum/RPM prefetch in norpm provider"

8 years agoMerge "Include nova::compute::libvirt::qemu from the libvirt profile"
Jenkins [Tue, 3 Jan 2017 15:14:19 +0000 (15:14 +0000)]
Merge "Include nova::compute::libvirt::qemu from the libvirt profile"

8 years agoAvoid Yum/RPM prefetch in norpm provider
Dan Prince [Mon, 2 Jan 2017 21:46:48 +0000 (16:46 -0500)]
Avoid Yum/RPM prefetch in norpm provider

When package installation is disabled we still prefetch packages.
This disables the package prefetch by returning an empty array
which should be fine in the normal case and fixes issues when
running puppet in some docker containers.

Change-Id: Ia483c5f8500b804ba37a80e9ca1ec9c038f0a867

8 years agoDon't include api/scheduler manifests on manila share service set up
Jan Provaznik [Mon, 2 Jan 2017 11:32:20 +0000 (12:32 +0100)]
Don't include api/scheduler manifests on manila share service set up

Manila pacemaker manifest (which sets manila share service only)
includes also manila api and scheduler manifests. There is no
reason for this. Also it causes that on whichever node manila share
service runs also manila api and scheduler services are started.

Change-Id: Ia1b39ef36c5bc34813cd6430b69ad9b698acc3cf
Closes-Bug: #1653500

8 years agoAdd the ml2_odl section when using opendalight_v2
Itzik Brown [Thu, 29 Dec 2016 15:35:41 +0000 (17:35 +0200)]
Add the ml2_odl section when using opendalight_v2

Add the option to add the section of ml2_odl
to ml2_conf.ini when opendaylight_v2 mechanism driver is used

Change-Id: I2a1c5097614e47cc09e43bbc77305a0548d54baa

8 years agoMerge "Fix puppet version for requirements in metadata"
Jenkins [Fri, 23 Dec 2016 19:43:06 +0000 (19:43 +0000)]
Merge "Fix puppet version for requirements in metadata"

8 years agonova: use transport_url for rabbitmq
Emilien Macchi [Mon, 12 Dec 2016 20:23:47 +0000 (15:23 -0500)]
nova: use transport_url for rabbitmq

Configure Nova with new Oslo Messaging parameters for RabbitMQ.

Note: parameters are renamed to be standard, so it will help a future
transition to another backend in TripleO.

Change-Id: Ia67a4dbe5b2bd12c45308a5581f96d0457b8e018

8 years agoMerge "Add basic structure for ReNo"
Jenkins [Fri, 23 Dec 2016 11:29:21 +0000 (11:29 +0000)]
Merge "Add basic structure for ReNo"

8 years agoAdd cell_v2 setup for nova
Alex Schultz [Fri, 16 Dec 2016 23:22:54 +0000 (16:22 -0700)]
Add cell_v2 setup for nova

We need to run the basic cell v2 setup for nova as it is required for
Ocata.

Change-Id: I693239ff5026f58a65eb6278b1a8fcb97af4f561
Depends-On: I43ba77cd4c8da7c6dc117ab0bd53e5cd330dc3de
Depends-On: I9462ef16fd64a577c3f950bd121f0bd28670fabc
Closes-Bug: #1649341

8 years agoMerge "add support for collectd"
Jenkins [Thu, 22 Dec 2016 23:12:33 +0000 (23:12 +0000)]
Merge "add support for collectd"

8 years agoMerge "[CVE-2016-9599] Enforce Firewall TCP / UDP rules management"
Jenkins [Thu, 22 Dec 2016 22:34:41 +0000 (22:34 +0000)]
Merge "[CVE-2016-9599] Enforce Firewall TCP / UDP rules management"

8 years agoMerge "Ensure package updates don't happen unexpectedly"
Jenkins [Thu, 22 Dec 2016 22:34:26 +0000 (22:34 +0000)]
Merge "Ensure package updates don't happen unexpectedly"

8 years agoMerge "HPELeftHandISCSIDriver support for cinder"
Jenkins [Thu, 22 Dec 2016 22:14:38 +0000 (22:14 +0000)]
Merge "HPELeftHandISCSIDriver support for cinder"

8 years agoMerge "Add TLS proxy resource"
Jenkins [Thu, 22 Dec 2016 22:12:41 +0000 (22:12 +0000)]
Merge "Add TLS proxy resource"

8 years agoMerge "Split ovn plugin and northd configuration"
Jenkins [Thu, 22 Dec 2016 20:49:28 +0000 (20:49 +0000)]
Merge "Split ovn plugin and northd configuration"

8 years ago[CVE-2016-9599] Enforce Firewall TCP / UDP rules management
Emilien Macchi [Wed, 21 Dec 2016 20:10:52 +0000 (15:10 -0500)]
[CVE-2016-9599] Enforce Firewall TCP / UDP rules management

This closes CVE-2016-9599.

1) Sanitize dynamic HAproxy endpoints firewall rules

Build the hash of firewall rules only when a port is specified. The
HAproxy endpoints are using TCP protocol, which means we have to specify
a port to the IPtables rules.
Some services don't have public network exposure (e.g. Glance Registry),
which means they don't need haproxy_ssl rule.
The code prepare the hash depending on the service_port and
public_ssl_port parameters and create the actual firewall rules only if
one of those or both parameters are specified.
It will prevent new services without public exposure to open all traffic
because no port is specified.

2) Secure Firewall rules creations

The code won't allow to create TCP / UDP IPtables rules in INPUT
or OUTPUT chains without port or sport or dport, because doing it would
allow an IPtables rule opening all traffic for TCP or UDP.
If we try to do that, Puppet catalog will fail with an error explaining
why.
Example of use-cases:
- creating VRRP rules wouldn't require port parameters.
- creating TCP or UDP rules would require port parameters.

3) Allow to open all traffic for TCO / UDP (when desired)

Some use-cases require to open all traffic for all ports on TCP / UDP.
It will be possible if the user gives port = 'all' when creating the
firewall rule.

Backward compatibility:
- if our users created custom TCP / UDP firewall rules without port
  parameters, it won't work anymore, for security purpose.
- if you users want to open TCP / UDP for all ports, they need to pass
  port = 'all' and the rule will be created, though a warning will be
  displayed because this is insecure.
- if our users created custom VRRP rules without port parameters, it
  will still work correctly and rules will be created.
- TCP / UDP rules in FORWARD chain without port are still accepted.

Change-Id: I19396c8ab06b91fee3253cdfcb834482f4040a59
Closes-Bug: #1651831

8 years agoEnsure package updates don't happen unexpectedly
Steven Hardy [Thu, 22 Dec 2016 16:42:12 +0000 (16:42 +0000)]
Ensure package updates don't happen unexpectedly

I'm seeing this run yum update on deploy, even though hiera
tripleo::packages::enable_upgrade says false.

I assume these are needed because we're getting "false", but I'm
unclear if this is a recently introduced problem (I only noticed it
today as my image has outdated centos packages and it thus hung on
step2 of the deploy.

Change-Id: If09cdde9883f2674dbbc40944be5fe4445caa08e
Closes-Bug: #1652107

8 years agoAdd fossw of networking-fujitsu support to puppet-tripleo
Koki Sanagi [Wed, 21 Dec 2016 20:13:56 +0000 (15:13 -0500)]
Add fossw of networking-fujitsu support to puppet-tripleo

Enable ml2.pp to call networking-fujitsu manifest in puppet-neutron
for fossw ML2 plugin setting.

Change-Id: I044c5812bbc5cd3de4bc33556cffbe5bad8e64cf
Implements: blueprint integration-fossw-networking-fujitsu
Depends-On: I79df6b6a27d95f0c0e2c87207ab80235a4efccfc

8 years agoMerge "Decouple swift-proxy from ceilometer packages"
Jenkins [Thu, 22 Dec 2016 14:09:32 +0000 (14:09 +0000)]
Merge "Decouple swift-proxy from ceilometer packages"