3037 Commits

Author SHA1 Message Date
Steve Baker
f592e195e2 Don't rely on lsb_release for hosts template write
This is problematic for the containerised heat-agents, lsb_release has
to be bind-mounted in, and atomic host doesn't even have lsb_release
installed.

Instead just write to every /etc/cloud/templates/hosts.*.tmpl file.

Change-Id: If2aab7e9b1e03aa657baf1c33aa4392ef7044075
2016-12-08 20:09:26 +00:00
Steve Baker
bb73874310 docker: don't use custom run-os-net-config
The script run-os-net-config[1] copies in ifcfg-* from the host before
running os-net-config. Apparently it was done this way because the
other scripts in /etc/sysconfig/network-scripts/ differed between host
and agent container. This should be less of an issue now that host and
heat-agents run centos-7 (even when the host is atomic)

tripleo-heat-templates recently changed to running os-net-config in a
deployment script instead of an os-refresh-config script [2]. This
means that our current run-os-net-config approach is currently
resulting in os-net-config being executed twice.

Another issue with run-os-net-config is that it copies ifcfg-* from
host to container, but not back again. This means that rebooting the
server will result in unconfigured interfaces until os-net-config is
somehow run again.

This change bind mounts /etc/sysconfig/network-scripts/ from the host
and uses the conventional approach to running os-refresh-config.

This may fix the issue where compute nodes are losing network
connectivity, so
Closes-Bug: #1646897

[1] http://git.openstack.org/cgit/openstack/tripleo-common/tree/heat_docker_agent/run-os-net-config
[2] I0ed08332cfc49a579de2e83960f0d8047690b97a

Change-Id: I763fc8d8e3eb10ac64d33e46c92888d211003e72
2016-12-08 20:09:25 +00:00
Jenkins
1e11997e76 Merge "Enable haproxy internal TLS through enable-internal-tls.yaml" 2016-12-08 16:25:08 +00:00
Jenkins
7e4904cafc Merge "Make get-occ-config.sh support custom roles" 2016-12-08 02:59:31 +00:00
Jenkins
9fac0b99b5 Merge "neutron: don't set router_delete_namespaces" 2016-12-07 16:23:33 +00:00
Juan Antonio Osorio Robles
4b425b95f4 Enable haproxy internal TLS through enable-internal-tls.yaml
For usability and to reduce the number of environments that need to be
given when enabling TLS in the internal network, it's convenient to add
the enabling of TLS in the internal front-ends for HAProxy, instead of
doing that in a separate environment file.

bp tls-via-certmonger

Change-Id: Icef0c70b4b166ce2108315d5cf0763d4e8585ae1
2016-12-07 09:03:18 +02:00
Ihar Hrachyshka
d4db12b988 neutron: don't set router_delete_namespaces
It's no longer available in Neutron (removed in Mitaka). See:
I2a879213c3b095a007a4531f430a33cea9fdf1bd

Change-Id: I044c648eb8c4933667b8ea2c9159a30e5ebb7df3
2016-12-06 22:03:18 +00:00
Chris Jones
9745e8b82f Fix SwiftStorage role.
We now fetch the name argument from the correctly named SwiftStorage
object.

Change-Id: I885505eadfc778ab57793c97af4d1c6739ec9614
Closes-Bug: #1647716
2016-12-06 14:33:47 +01:00
Jenkins
94a42fb5b7 Merge "Support multiple meter dispatchers in ceilometer config" 2016-12-05 14:28:37 +00:00
Jenkins
ba3fb5184f Merge "Move nodes' fqdns to a map to remove clutter" 2016-12-05 14:28:29 +00:00
Jenkins
e46349a37c Merge "Use transient hostname for deployed servers" 2016-12-05 14:14:48 +00:00
Jenkins
a45fbe02f4 Merge "Fix bug when using multiple DeployArtifactURLs" 2016-12-05 14:12:37 +00:00
Jenkins
a23ad11958 Merge "No longer hard coding to a specifc network interface name." 2016-12-02 19:49:48 +00:00
Jenkins
f0348b0d7a Merge "Revert "Use FQDN for rabbitmq's nodename env variable"" 2016-12-02 18:07:32 +00:00
Jenkins
67f7dc9fae Merge "Add zaqar to the controller's list of services in roles_data.yaml" 2016-12-02 18:06:33 +00:00
Christian Schwede
f7e8a043d9 Fix bug when using multiple DeployArtifactURLs
The script tries to download all artifact URLs with a single
request, instead of downloading each URL on its own if
multiple DeployArtifactURLs were given.

Change-Id: I6a8be699aff7023a67702bb1d3ddc2273984cd08
2016-12-02 16:10:52 +00:00
Ben Nemec
0f1022e8ee Revert "Use FQDN for rabbitmq's nodename env variable"
This seems to have broken the updates job, causing it to fail
with following error:

Can't set long node name!\nPlease check your configuration\n

Related-Bug: 1646873

This reverts commit 3e9fcfd09320ace07bc1bd4cb57feb98cd057332.

Change-Id: I72ba891cd9cd8c4f1bc204144f46aaabbdfd3647
2016-12-02 15:45:21 +00:00
Jenkins
ae1a0e6ec0 Merge "scenario001: deploy Cinder with RBD backend" 2016-12-02 14:34:41 +00:00
Juan Antonio Osorio Robles
41b062a0a7 Add zaqar to the controller's list of services in roles_data.yaml
Change-Id: Iecafa7878fec20c707e94bdaca55f1489f3e338a
2016-12-02 14:14:33 +02:00
Jenkins
ee86735b0c Merge "Add Zaqar to scenario002" 2016-12-02 12:09:13 +00:00
Jenkins
21303cd9fc Merge "Composable Zaqar services" 2016-12-02 12:08:37 +00:00
Juan Antonio Osorio Robles
d7060322ee Move nodes' fqdns to a map to remove clutter
There were several instances where the short-names/FQDNs where being
gotten in the same way in the role's templates. So this introduces a
mapping to get these values in order to reduce clutter.

Change-Id: Ie7df360bb69d56655f3e0fcbbf4d297db39b7a26
2016-12-02 10:45:27 +00:00
Jenkins
cefb448de5 Merge "Use FQDN for rabbitmq's nodename env variable" 2016-12-02 09:41:28 +00:00
Jenkins
5aa0c861a4 Merge "Use network-based fqdn entry from hiera instead of the custom fact" 2016-12-02 09:40:36 +00:00
Jenkins
5854a632c4 Merge "scenario001: deploy Ceph" 2016-12-02 00:06:06 +00:00
Jenkins
7fa038f1a4 Merge "Implement scenario004 with Ceph Rados Gateway scenario" 2016-12-02 00:05:20 +00:00
Jenkins
ef9dcee567 Merge "scenario003: configure Keystone tokens with Fernet provider" 2016-12-01 23:10:07 +00:00
James Slagle
64e44e8626 Make get-occ-config.sh support custom roles
Updates the get-occ-config.sh script used with the deployed-server
environment to support custom roles. Any custom role name, and a
corresponding set of hosts (ip addresses or hostnames) can now be passed
to the script and it will query for the proper nested stack uuid's and
configure os-collect-config appropriately on the respective nodes.

Change-Id: I8fc39e6d18cd70ff881e2a284234b26261018d67
2016-12-01 17:43:45 -05:00
Emilien Macchi
26c229a4b5 scenario001: deploy Cinder with RBD backend
Improve scenario001 with Cinder + RBD coverage.
Also remove Barbican bits, we don't deploy Barbican in scenario001, but
002.

Change-Id: Ib9cadbefcb3ddcdb4812f47ff5496e74b2bd888d
2016-12-01 16:05:50 -05:00
Jenkins
d19ae9f490 Merge "ceph-rgw: add missing user parameter" 2016-12-01 19:59:51 +00:00
Jenkins
ec678ff253 Merge "scenario001/pingtest: remove gnocchi_res_alarm" 2016-12-01 19:56:23 +00:00
Emilien Macchi
ea67638633 scenario003: configure Keystone tokens with Fernet provider
Improve scenario003 to configure Keystone tokens with Fernet provider.
Scenario001 and scenario002 will still deploy uuid for now.

Change-Id: I8c671d0371b2c3590b58b9623bb0df0b0c625a5b
2016-12-01 13:35:44 -05:00
Emilien Macchi
072a06f3b2 Implement scenario004 with Ceph Rados Gateway scenario
Like Puppet OpenStack CI, implement scenario004 with Ceph RGW scenario,
where Glance uses it as a image storage backend.

Change-Id: If055ca225c456a738c5726ef1e76a4a4f9c566a8
2016-12-01 17:16:40 +00:00
Emilien Macchi
f33475840c ceph-rgw: add missing user parameter
'user' is required or puppet-ceph will complain that the Keystone_user
has no title:
Evaluation Error: Missing title. The title expression resulted in undef
at /etc/puppet/modules/ceph/manifests/rgw/keystone/auth.pp

The value is set to Swift, as we use the same credentials as Swift
service.

Closes-Bug: #1642524
Change-Id: Ib4a7c07086b0b3354c8e589612f330ecdffdc637
2016-12-01 12:16:06 -05:00
Jenkins
1de7c229ea Merge "Initial support for composable upgrades with Heat+Ansible" 2016-12-01 16:47:37 +00:00
Jenkins
da9a90e8b8 Merge "Introduce network-based FQDNs via hiera" 2016-12-01 16:47:31 +00:00
Jenkins
227ec53c36 Merge "Make pep8 task run template generation" 2016-12-01 16:46:56 +00:00
Jenkins
30ace83b10 Merge "Add local template generation tox task" 2016-12-01 16:46:17 +00:00
Emilien Macchi
adcb48823b scenario001: deploy Ceph
Add Ceph to scenario001 and use it as a backend for Nova, Glance and
Gnocchi.

Change-Id: I29065d4b2ac39db40984873fda550d7adbe904fe
2016-12-01 11:15:50 -05:00
Emilien Macchi
dbee500d47 scenario001/pingtest: remove gnocchi_res_alarm
The resource is failing and it prevents us to add more coverage. Until
we figure what's wrong with it, let's disable it.

Change-Id: If89775bf67d686327d0d27222e0c9179be74a668
2016-12-01 11:08:30 -05:00
Jenkins
e85422bd84 Merge "Make scenario template paths relative" 2016-12-01 15:59:40 +00:00
Jenkins
370d392dc5 Merge "Configure /etc/hosts via os-collect-config script" 2016-12-01 14:43:26 +00:00
Jenkins
610de3101e Merge "Show team and repo badges on README" 2016-12-01 14:28:59 +00:00
Steven Hardy
dbece39f54 Initial support for composable upgrades with Heat+Ansible
This shows how we could wire in the upgrade steps using Ansible
as was previously proposed e.g in https://review.openstack.org/#/c/321416/
but it's more closely integrated with the new composable services
architecture.

It's also very similar to the approach taken by SpinalStack where
ansible snippets per-service were combined then run in a series of
steps using Ansible tags.

This patch just enables upgrade of keystone - we'll add support for
other patches in subsequent patches.

Partially-Implements: blueprint overcloud-upgrades-per-service
Change-Id: I39f5426cb9da0b40bec4a7a3a4a353f69319bdf9
2016-12-01 13:40:50 +00:00
Jenkins
ea3ace7839 Merge "Hiera optimization: use a new hiera hook" 2016-12-01 13:01:14 +00:00
Jenkins
096259f714 Merge "Fix puppet/services/README.rst step description" 2016-12-01 12:17:02 +00:00
Juan Antonio Osorio Robles
3e9fcfd093 Use FQDN for rabbitmq's nodename env variable
Change-Id: Iee1afeced0b210a46b273aafc0d40e99d6ee6d4e
2016-12-01 11:18:23 +02:00
Juan Antonio Osorio Robles
b4cd2ed1ee Use network-based fqdn entry from hiera instead of the custom fact
This changes how we get the network-based FQDNs for the specific
services, from using the custom fact, to the new hiera entries.

Change-Id: Iae668a5d89fb7bee091db4a761aa6c91d369b276
2016-12-01 11:18:23 +02:00
Juan Antonio Osorio Robles
7a2c2b0f93 Introduce network-based FQDNs via hiera
Currently, one can get the network-based FQDNs via a custom puppet
fact. This is currently unreliable, as it's based on the ::hostname
fact which we assume it's set correctly by nova. However, this is not
necessarily the case (for instance, if you use pre-deployed services
such as we do with the multinode-jobs). In these cases, the
::hostname fact will return something other than what we specified in
nova, and effectively breaks the configurations in we relly too much
on the network-based FQDN facts.

By using hiera instead, we avoid this issue as we set those values to
be exactly what we expect (as we set them in the OS::TripleO::Server
resource.

Change-Id: I6ce31237098f57bdc0adfd3c42feef0073c224fb
2016-12-01 11:08:41 +02:00
Dan Prince
7876851011 Hiera optimization: use a new hiera hook
This patch optimizes how we deploy hiera by using a new
heat hook specifically designed to help compose hiera
within heat templates. As part of this change:

 - we update all the 'hiera' software configurations to set the group to hiera
   instead of os-apply-config.

 - The new format uses JSON instead of YAML. The hook actually writes
   out the hiera JSON directly so no conversion takes place. Arrays,
   Strings, Booleans all stay in their native formats. As such we can avoid
   having to do many of the awkward string and list conversions in t-h-t to
   support the previous YAML formatting.

 - The new hook prefers JSON over YAML so upgrading users will have the
   new files prefered. (we will post a cleanup routine for the old files
   soon but this isn't a new behavior, JSON is now simply prefered.)

 - A lot of services required edits to account for default settings that
   worked in YAML that no longer work correctly in the native JSON
   format. In almost all these cases I think the resulting codes looks
   cleaner and is more explicit with regards to what is getting
   configured in hiera on the actual nodes.

Depends-On: I6a383b1ad4ec29458569763bd3f56fd3f2bd726b
Closes-bug: #1596373

Change-Id: Ibe7e2044e200e2c947223286fdf4fd5bcf98c2e1
2016-11-30 22:16:13 -05:00