RETIRED, Heat templates for deploying OpenStack
Go to file
Michele Baldessari ff3173bdcf Guarantee that ovn-dbs-pcmk update_tasks are run when the cluster is up
On particular role compositions, the code joining the update_tasks might order
things differently then on a typical 3ctrl control plane and the ovn-dbs tasks
at step1 (which require the cluster to be up) will happen after the pacemaker
task at step1 which stops the cluster.

So we can observe something like the following:
2021-09-10 10:05:13.370339 | 001c2891-506d-f833-ff5a-000000000954 | TASK | Change the bundle operation timeout
2021-09-10 10:05:14.136798 | 001c2891-506d-f833-ff5a-000000000954 | CHANGED | Change the bundle operation timeout | ovn-db-01
2021-09-10 10:05:14.137982 | 001c2891-506d-f833-ff5a-000000000954 | TIMING | Change the bundle operation timeout | ovn-db-01 | 0:00:54.808754 | 0.77s
2021-09-10 10:05:14.146853 | 001c2891-506d-f833-ff5a-000000000956 | TASK | Acquire the cluster shutdown lock to stop pacemaker cluster
2021-09-10 10:05:14.508085 | 001c2891-506d-f833-ff5a-000000000956 | CHANGED | Acquire the cluster shutdown lock to stop pacemaker cluster | ovn-db-01
2021-09-10 10:05:14.509257 | 001c2891-506d-f833-ff5a-000000000956 | TIMING | Acquire the cluster shutdown lock to stop pacemaker cluster | ovn-db-01 | 0:00:55.180032 | 0.36s
2021-09-10 10:05:14.518668 | 001c2891-506d-f833-ff5a-000000000957 | TASK | Stop pacemaker cluster
2021-09-10 10:05:18.559627 | 001c2891-506d-f833-ff5a-000000000957 | CHANGED | Stop pacemaker cluster | ovn-db-01

2021-09-10 10:05:18.560561 | 001c2891-506d-f833-ff5a-000000000957 | TIMING | Stop pacemaker cluster | ovn-db-01 | 0:00:59.231336 | 4.04s
2021-09-10 10:05:18.569161 | 001c2891-506d-f833-ff5a-000000000958 | TASK | Start pacemaker cluster
2021-09-10 10:05:18.627924 | 001c2891-506d-f833-ff5a-000000000958 | SKIPPED | Start pacemaker cluster | ovn-db-01
2021-09-10 10:05:18.628678 | 001c2891-506d-f833-ff5a-000000000958 | TIMING | Start pacemaker cluster | ovn-db-01 | 0:00:59.299453 | 0.06s
2021-09-10 10:05:18.637292 | 001c2891-506d-f833-ff5a-000000000959 | TASK | Release the cluster shutdown lock
2021-09-10 10:05:18.694945 | 001c2891-506d-f833-ff5a-000000000959 | SKIPPED | Release the cluster shutdown lock | ovn-db-01
2021-09-10 10:05:18.695717 | 001c2891-506d-f833-ff5a-000000000959 | TIMING | Release the cluster shutdown lock | ovn-db-01 | 0:00:59.366493 | 0.06s
2021-09-10 10:05:18.704368 | 001c2891-506d-f833-ff5a-00000000095a | TASK | Clear ovndb cluster pacemaker error
2021-09-10 10:05:19.368816 | 001c2891-506d-f833-ff5a-00000000095a | FATAL | Clear ovndb cluster pacemaker error | ovn-db-01 | error={"changed": true, "cmd": "pcs resource cleanup ovn-dbs-bundle", "delta": "0:00:00.399084", "end": "2021-09-10 10:05:20
.044985", "msg": "non-zero return code", "rc": 1, "start": "2021-09-10 10:05:19.645901", "stderr": "Error: Unable to forget failed operations of resource: ovn-dbs-bundle\nError connecting to the CIB manager: Transport endpoint is not connected\nError perf
orming operation: Transport endpoint is not connected", "stderr_lines": ["Error: Unable to forget failed operations of resource: ovn-dbs-bundle", "Error connecting to the CIB manager: Transport endpoint is not connected", "Error performing operation: Tran
sport endpoint is not connected"], "stdout": "", "stdout_lines": []}

We cannot call pcs resource cleanup at step1, we must call it at step0 so we're
guaranteed that the cluster is up, no matter how heat/ansible decide to order
the update_tasks.

Note: This is the short-term less-invasive fix. The mid-long term fix
should be around verifying that we can now remove those workarounds
that were implemented for OVN bugs.

Closes-Bug: #1943254
Change-Id: Idd827f72c0033978db7b9a8ea6acec2086cda961
2021-09-13 08:20:19 +00:00
ci Add CephRbdTrashPurgeInterval parameter 2021-09-08 09:14:24 +00:00
common Remove unused valid_exit_codes arg 2021-08-31 16:45:00 +02:00
container_config_scripts Merge "CentOS 9: support restart of HA resources" 2021-09-08 12:13:18 +00:00
deployed-server fix typo in readme 2021-07-09 07:30:35 -05:00
deployment Guarantee that ovn-dbs-pcmk update_tasks are run when the cluster is up 2021-09-13 08:20:19 +00:00
doc Add doc/requirements 2021-01-05 09:49:46 +01:00
environments Merge "Revert "Disable postcopy for ovn/ovs-dpdk"" 2021-09-02 09:30:20 +00:00
extraconfig Drop mistral configuration from post deploy 2021-06-21 12:02:31 +05:30
firstboot Use 'wallaby' heat_template_version 2021-03-31 17:35:12 +05:30
network Manila: Drop tenant_id templating from v2 endpoint 2021-08-18 14:25:33 +00:00
network-data-samples Add network-v2 default files + vip data examples 2021-06-07 13:22:40 +02:00
plan-samples Fix plan-samples README.rst 2021-03-04 13:42:01 +05:30
puppet Make UpgradeLeappDevelSkip per-role 2021-06-13 22:48:01 +01:00
releasenotes Merge "Allow configuring distributed image import" 2021-09-07 20:59:55 +00:00
roles Merge "Add a role to run independent designate bind backends" 2021-08-09 18:55:18 +00:00
sample-env-generator Merge "Keystone: Keep default auth methods in OpenIDC Federation" 2021-08-03 13:15:08 +00:00
scripts Compute HA: Remove version discovery of keystone API 2021-08-17 17:01:26 +09:00
tools Merge "Use yaml.safe_load to load YAML files" 2021-07-28 15:48:14 +00:00
tripleo_heat_templates Use merge strategy for EndpointMap 2021-06-15 09:15:41 +05:30
zuul.d Wire up renamed upgrade periodic template 2021-07-27 18:17:21 +03:00
.ansible-lint Remove duplicate keys from yaml files 2021-03-29 13:56:31 +00:00
.gitignore Deprecate DeployedServerPortMap 2021-06-28 17:44:11 -04:00
.gitreview OpenDev Migration Patch 2019-04-19 19:34:55 +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 Remove Sahara support 2020-10-19 09:39:36 +09:00
babel.cfg Add release configuration. 2013-10-22 17:49:35 +01:00
bindep.txt Fixed tox executions 2021-03-26 15:37:07 +00:00
config-download-software.yaml Use 'wallaby' heat_template_version 2021-03-31 17:35:12 +05:30
config-download-structured.yaml Use 'wallaby' heat_template_version 2021-03-31 17:35:12 +05:30
j2_excludes.yaml Remove ipv6 specific network templates 2017-08-31 13:12:17 -07: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_default.yaml Add network-v2 default files + vip data examples 2021-06-07 13:22:40 +02:00
network_data_ganesha.yaml Use appropriate allocation pools for StorageNFS 2020-08-26 15:27:52 +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 Fix the CephDashboardNetwork default 2021-09-06 18:34:57 +02:00
overcloud.j2.yaml Merge "Add THT Jinja2 data sources as stack output" 2021-06-25 00:49:48 +00:00
requirements.txt Deprecate EnablePaunch and remove Paunch support 2020-06-03 17:53:40 +00:00
roles_data.yaml Add Pure Storage FlashBlade Manila driver 2021-07-26 16:00:18 -04:00
roles_data_undercloud.yaml Move ephemeral heat upgrade to the service 2021-06-28 07:30:44 -04:00
setup.cfg Add support for py39 2021-03-24 09:40:57 +00:00
setup.py Updated from global requirements 2017-03-28 13:03:01 +00:00
test-ansible-requirements.txt Change tests to run on ansible-core 2.11 2021-08-08 09:12:53 +00:00
test-requirements.txt Enable ansible-lint 2021-03-30 09:18:15 +01:00
tox.ini Setting language for the python3.6 tox environment 2021-08-19 08:35:44 +00:00
vip_data_default.yaml Add network-v2 default files + vip data examples 2021-06-07 13:22:40 +02: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 scn013 non-ha ovh-ha
keystone

X

X

X

X

X

X

X

X

X

X

X

glance

rbd

swift

file

rgw

file

file

rbd

file

file

file

cinder

rbd

iscsi
heat

X

X

ironic

X

mysql

X

X

X

X

X

X

X

X

X

X

X

neutron

ovn

ovn

ovn

ovn

ovn

ovs

ovn

ovn

ovn

ovn

neutron-bgpvpn

wip

ovn

X

neutron-l2gw

wip

om-rpc rabbit rabbit

amqp1

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

X

X

haproxy

X

X

X

X

X

X

X

X

X

X

memcached

X

X

X

X

X

X

X

X

X

X

pacemaker

X

X

X

X

X

X

X

X

X

X

nova

qemu

qemu

qemu

qemu

ironic

qemu

qemu

qemu

qemu

qemu

placement

X

X

X

X

X

X

X

X

X

X

ntp

X

X

X

X

X

X

X

X

X

X

X

X

snmp

X

X

X

X

X

X

X

X

X

X

X

X

timezone

X

X

X

X

X

X

X

X

X

X

X

X

mistral

X

swift

X

aodh

X

X

ceilometer

X

X

gnocchi

rbd

swift

barbican

X

zaqar

X

cephrgw

X

cephmds

X

manila

X

collectd

X

designate

X

octavia

X

X

rear

X

Extra Firewall

X