RETIRED, Heat templates for deploying OpenStack
Go to file
David Vallee Delisle ac1584a44f Missing client certificate for live-migration with TLS
TLS client verification used to be accidentally disabled in libvirt.
This was fixed in libvirt-6.10.0-1[1].
Which means, once you're using libvirt-6.10.0-1 or higher, a client
certificate is mandatory during live migration with TLS.

In this case, the server certificate generated by TripleO is valid
for client _and_ server:

                 Key Purpose (not critical):
                         TLS WWW Server.
                         TLS WWW Client.

So most deployments can re-use the same certificate for client and
server.  Why?  Because if both migration ends points are located
on the same infrastructure, it is reasonable to use the same
certificate for both client and server roles.

Introducing QemuDefaultTLSVerify parameter

This parameter will allow operators to enable or disable TLS client
certificate verification. Enabling this option will reject any client
who does not have a certificate signed by the CA in
/etc/pki/qemu/ca-cert.pem.

The default is true and matches libvirt's. We will want to disable this
by default in train.

[1] https://bugzilla.redhat.com/show_bug.cgi?id=1879477#c3

Depends-On: https://review.opendev.org/c/openstack/puppet-nova/+/787249
Related: https://bugzilla.redhat.com/show_bug.cgi?id=1945760
Change-Id: I3b252854a0dbf121d69bab79543561da6be781f4
(cherry picked from commit e7d37585ac)
(cherry picked from commit d0d4f25f3d)
(cherry picked from commit dfb282b503)
2021-04-26 14:40:49 +00:00
ci Merge "Move cell_v2 discovery off compute hosts" into stable/train 2021-03-15 16:05:47 +00:00
common [TRAIN-Only] Update ansible python fact 2021-03-23 10:21:19 -06:00
container_config_scripts Upgrade mariadb storage during upgrade tasks 2021-03-10 16:17:25 +01:00
deployed-server enable-ssh-admin: allow to override plan name 2020-09-25 12:50:47 +00:00
deployment Missing client certificate for live-migration with TLS 2021-04-26 14:40:49 +00:00
environments Merge "[update][upgrade] Use container-tools:3.0" into stable/train 2021-04-09 14:35:58 +00:00
extraconfig Validation are not run via mistral anymore in Train 2021-03-11 11:32:58 +01:00
firstboot Replace chronyc "waitsync" with "makestep" 2020-03-13 11:39:42 -04:00
network Merge "Use single NovaLibvirtNetwork to configure instance console components" into stable/train 2021-04-24 15:05:14 +00:00
plan-samples Role specific derive parameters workflow parameter 2018-06-28 08:10:27 -04:00
puppet OVNChassisMacPorts for distributed VLAN 2021-03-30 12:09:44 +02:00
releasenotes Missing client certificate for live-migration with TLS 2021-04-26 14:40:49 +00:00
roles Merge "Move cell_v2 discovery off compute hosts" into stable/train 2021-03-15 16:05:47 +00:00
sample-env-generator Create OVNMacAddrNet network on Undercloud 2021-03-24 14:12:17 +01:00
scripts Drop unused remnants of the hosts-config bits 2020-04-01 06:43:23 +00:00
tools Move cell_v2 discovery off compute hosts 2021-02-08 13:42:13 +00:00
tripleo_heat_templates Enforce pep8/pyflakes rule on python codes 2019-09-05 15:40:46 +09:00
validation-scripts Remove ValidateNtp 2020-06-08 19:24:13 +00:00
zuul.d Remove scenario007-multinode and scenario010-standalone from layout 2021-03-05 12:56:41 +02:00
.gitignore Remove mac_hostname & random_string 2019-07-18 19:10:31 +00:00
.gitreview Update .gitreview for stable/train 2019-10-21 14:21:06 +00:00
.testr.conf Improve nova statedir ownership logic 2018-07-09 17:07:30 +01:00
LICENSE Add license file 2014-01-20 11:58:20 +01:00
README.rst Revert "Remove panko" 2020-01-30 20:34:27 +00:00
babel.cfg Add release configuration. 2013-10-22 17:49:35 +01:00
bindep.txt Tolerate NFS exports in /var/lib/nova when selinux relabelling 2020-03-31 13:41:55 +01:00
capabilities-map.yaml Remove OpenDaylight templates and environments 2019-11-06 06:19:15 +00:00
config-download-software.yaml Don't use POLL_SERVER_CFN transport for DeployedServer 2020-10-21 13:01:49 +00:00
config-download-structured.yaml Don't use POLL_SERVER_CFN transport for DeployedServer 2020-10-21 13:01:49 +00:00
default_passwords.yaml Change template names to rocky 2018-05-09 08:28:42 +02:00
j2_excludes.yaml Remove ipv6 specific network templates 2017-08-31 13:12:17 -07:00
net-config-bond.j2.yaml Drop EC2MetadataIp parameter and its uses 2019-07-05 14:05:59 +02:00
net-config-bridge.j2.yaml Add DNS related settings 2020-03-31 12:05:09 -05:00
net-config-linux-bridge.j2.yaml Add DNS related settings 2020-03-31 12:05:09 -05:00
net-config-noop.j2.yaml Drop EC2MetadataIp parameter and its uses 2019-07-05 14:05:59 +02:00
net-config-standalone.j2.yaml Drop EC2MetadataIp parameter and its uses 2019-07-05 14:05:59 +02:00
net-config-static-bridge-with-external-dhcp.j2.yaml Add DNS related settings 2020-03-31 12:05:09 -05:00
net-config-static-bridge.j2.yaml Drop EC2MetadataIp parameter and its uses 2019-07-05 14:05:59 +02:00
net-config-static.j2.yaml Drop EC2MetadataIp parameter and its uses 2019-07-05 14:05:59 +02:00
net-config-undercloud.j2.yaml Drop EC2MetadataIp parameter and its uses 2019-07-05 14:05:59 +02:00
network_data.yaml Add external_resource_vip_id property to network_data.yaml 2019-03-25 10:48:40 -04:00
network_data_dashboard.yaml Add a StorageDashboard network used by CephGrafana service 2019-08-30 19:16:47 +02:00
network_data_ganesha.yaml Use appropriate allocation pools for StorageNFS 2020-09-04 12:41:40 +00:00
network_data_routed.yaml Merge "Allow overlay tunnel endpoints on IPv6 address" 2019-01-10 21:13:19 +00:00
network_data_subnets_routed.yaml L3 routed networks - data + env (1/3) 2018-12-30 19:24:29 +01:00
network_data_undercloud.yaml Add network data for the undercloud 2019-01-21 19:35:37 +01:00
overcloud-resource-registry-puppet.j2.yaml Create OVNMacAddrNet network on Undercloud 2021-03-24 14:12:17 +01:00
overcloud.j2.yaml Merge "Refactor OVNMacAddressNetwork" into stable/train 2021-04-19 19:03:51 +00:00
plan-environment.yaml Add name and description fields to plan-environment.yaml 2017-04-12 17:25:40 +02:00
requirements.txt Enable paunch logging to its full extent 2019-03-22 11:42:12 +01:00
roles_data.yaml Add a new role parameter rhsm_enforce. 2021-02-17 18:08:42 +01:00
roles_data_undercloud.yaml Add composible service for tls enrollment 2020-06-11 01:32:53 -05:00
setup.cfg Replace git.openstack.org URLs with opendev.org URLs 2019-06-26 02:43:46 +00:00
setup.py Updated from global requirements 2017-03-28 13:03:01 +00:00
test-requirements.txt Sync Sphinx requirement 2019-05-29 11:23:29 +08:00
tox.ini The lower constraint file has been removed 2020-12-09 09:51:56 -06:00

README.rst

Team and repository tags

image

tripleo-heat-templates

Heat templates to deploy OpenStack using OpenStack.

Features

The ability to deploy a multi-node, role based OpenStack deployment using OpenStack Heat. Notable features include:

  • Choice of deployment/configuration tooling: puppet, (soon) docker
  • Role based deployment: roles for the controller, compute, ceph, swift, and cinder storage
  • physical network configuration: support for isolated networks, bonding, and standard ctlplane networking

Directories

A description of the directory layout in TripleO Heat Templates.

  • environments: contains heat environment files that can be used with -e

    on the command like to enable features, etc.

  • extraconfig: templates used to enable 'extra' functionality. Includes

    functionality for distro specific registration and upgrades.

  • firstboot: example first_boot scripts that can be used when initially

    creating instances.

  • network: heat templates to help create isolated networks and ports
  • puppet: templates mostly driven by configuration with puppet. To use these

    templates you can use the overcloud-resource-registry-puppet.yaml.

  • validation-scripts: validation scripts useful to all deployment

    configurations

  • roles: example roles that can be used with the tripleoclient to generate

    a roles_data.yaml for a deployment See the roles/README.rst for additional details.

Service testing matrix

The configuration for the CI scenarios will be defined in tripleo-heat-templates/ci/ and should be executed according to the following table:

- scn000 scn001 scn002 scn003 scn004 scn006 scn007 scn009 scn010 non-ha ovh-ha
keystone

X

X

X

X

X

X

X

X

X

X

glance

rbd

swift

file

rgw

file

file

rbd

file

file

cinder

rbd

iscsi
heat

X

X

ironic

X

mysql

X

X

X

X

X

X

X

X

X

X

neutron

ovn

ovn

ovn

ovn

ovn

ovs

ovn

ovn

ovn

neutron-bgpvpn

wip

ovn

X

neutron-l2gw

wip

om-rpc rabbit rabbit

amqp1

rabbit rabbit rabbit rabbit rabbit rabbit
om-notify rabbit rabbit rabbit rabbit rabbit rabbit rabbit rabbit rabbit
redis

X

X

haproxy

X

X

X

X

X

X

X

X

X

memcached

X

X

X

X

X

X

X

X

X

pacemaker

X

X

X

X

X

X

X

X

X

nova

qemu

qemu

qemu

qemu

ironic

qemu

qemu

qemu

qemu

ntp

X

X

X

X

X

X

X

X

X

X

X

snmp

X

X

X

X

X

X

X

X

X

X

X

timezone

X

X

X

X

X

X

X

X

X

X

X

sahara

X

mistral

X

swift

X

aodh

X

X

ceilometer

X

X

gnocchi

rbd

swift

panko

X

X

barbican

X

zaqar

X

ec2api

X

cephrgw

X

tacker

X

cephmds

X

manila

X

collectd

X

designate

X

octavia

X