RETIRED, Heat templates for deploying OpenStack
Go to file
Michele Baldessari 82875a4933 Fix haproxy stats network binding
a) The haproxy.stats stanza in haproxy config file has pretty much remained the same since newton:
listen haproxy.stats
  bind 192.168.24.8:1993 transparent
  mode http
  stats enable
  stats uri /
  stats auth admin:tRJre6PnQuN4ZwqKYUygTJArB

b) what we do today with the haproxy stats makes little sense:
- we bind it to the VIP running on the control-plane network on all controller nodes
- de facto we allow to look at the haproxy stat info via web only on the node holding the ctlplane VIP
- since haproxy does not share stats across nodes, we're effectively
  limited at looking at the stats info on a single node.

Now imagine ctrl-0 holding the internal_api VIP and ctrl-1 holding the
ctlplane VIP. Basically now the only stats you will be able to see are
the ones relative to keystone_admin (which for other silly reasons has
been moved to ctlplane by default) and very little else.

Tested this and am able to bind the haproxy stat to another network
and to have it listen to the IP of the node on said network (in addition
to the ctrlplane vip which we do not remove as it might break stuff):

    listen haproxy.stats
      bind fd00:fd00:fd00:2000::16:1993 transparent
      bind 192.168.24.15:1993 transparent
      mode http
      stats enable
      stats uri /
      stats auth admin:password

Closes-Bug: #1830334

NB: Cherry-pick not 100% clean as it applies to
puppet/services/haproxy.yaml and not docker/services/haproxy.yaml
NB: Tiny conflict due to context for the queens backport

Depends-On: Iab5f11c3065ff34a3543621554e7f05161d069f2

Change-Id: If2ee15f1e0fcf6d077cba524fad75dec7e1144b6
(cherry picked from commit 45f5c283e3)
(cherry picked from commit 8b3fceb0be)
(cherry picked from commit b56035e655)
2019-06-04 06:30:30 +02:00
ci Add ability to specify dns search domains 2019-05-23 20:15:17 +00:00
common Merge "Enable serial execution for ansible host" into stable/queens 2019-05-31 18:16:45 +00:00
deployed-server Add missing entries for Pure Storage Cinder Backend and fix typos 2019-03-07 19:23:56 +00:00
docker Merge "Run octavia-api under httpd" into stable/queens 2019-04-29 21:12:57 +00:00
docker_config_scripts Avoid concurrent nova cell_v2 discovery instances 2019-04-25 11:35:17 +02:00
environments Make krb-service-principal metadata per-Role 2019-05-29 10:31:41 +02:00
extraconfig Make krb-service-principal metadata per-Role 2019-05-29 10:31:41 +02:00
firstboot Try a timesync as part of first boot 2019-05-23 08:18:40 -06:00
network Fix haproxy stats network binding 2019-06-04 06:30:30 +02:00
plan-samples Update default value for derive params workflow inputs 2018-01-15 05:50:47 -05:00
puppet Fix haproxy stats network binding 2019-06-04 06:30:30 +02:00
releasenotes Add domain and no-ntp options to ipaclient 2019-05-28 14:45:38 +00:00
roles [Queens-only] Install and configure tmpwatch for log cleanup 2019-03-27 07:42:11 +01:00
sample-env-generator Make krb-service-principal metadata per-Role 2019-05-29 10:31:41 +02:00
scripts [Templates] Use str_replace for hosts. 2018-11-15 08:54:22 +00:00
tools Make krb-service-principal metadata per-Role 2019-05-29 10:31:41 +02:00
tripleo_heat_templates Do not generate apache/haproxy certs for invalid networks 2018-02-08 12:50:04 +00:00
validation-scripts Optional ICMP validation of controllers and gateways 2019-03-18 17:06:45 +00:00
zuul.d Merge "Rename tripleo scenario00{6,9}-multinode-oooq (queens branch)" into stable/queens 2018-12-13 23:38:27 +00:00
.gitignore Sample environment generator 2017-06-12 15:02:50 -05:00
.gitreview OpenDev Migration Patch 2019-04-19 19:35:08 +00:00
.testr.conf Improve nova statedir ownership logic 2018-07-25 16:49:52 +02:00
LICENSE Add license file 2014-01-20 11:58:20 +01:00
README.rst Merge "fix the scenario chart" into stable/queens 2018-06-01 20:40:28 +00:00
all-nodes-validation.yaml Optional ICMP validation of controllers and gateways 2019-03-18 17:06:45 +00:00
babel.cfg Add release configuration. 2013-10-22 17:49:35 +01:00
bindep.txt Add in roles data validation 2017-07-07 09:51:40 -06:00
bootstrap-config.yaml Change template names to queens 2017-11-23 10:15:32 +01:00
capabilities-map.yaml Add networking-ansible ML2 plugin support 2018-12-07 08:56:17 +00:00
config-download-software.yaml Support SshKnownHostsDeployment with config-download 2018-07-12 19:58:40 -04:00
config-download-structured.yaml Support SshKnownHostsDeployment with config-download 2018-07-12 19:58:40 -04:00
default_passwords.yaml Change template names to queens 2017-11-23 10:15:32 +01:00
hosts-config.yaml [Templates] Use str_replace for hosts. 2018-11-15 08:54:22 +00:00
j2_excludes.yaml Remove ipv6 specific network templates 2017-08-31 13:12:17 -07:00
net-config-bond.j2.yaml Add ability to specify dns search domains 2019-05-23 20:15:17 +00:00
net-config-bridge.j2.yaml Render NIC config templates with jinja2 2018-02-13 00:19:37 -08:00
net-config-linux-bridge.j2.yaml Render NIC config templates with jinja2 2018-02-13 00:19:37 -08:00
net-config-noop.j2.yaml Render NIC config templates with jinja2 2018-02-13 00:19:37 -08:00
net-config-static-bridge-with-external-dhcp.j2.yaml Render NIC config templates with jinja2 2018-02-13 00:19:37 -08:00
net-config-static-bridge.j2.yaml Add ability to specify dns search domains 2019-05-23 20:15:17 +00:00
net-config-static.j2.yaml Add ability to specify dns search domains 2019-05-23 20:15:17 +00:00
net-config-undercloud.j2.yaml Add ability to specify dns search domains 2019-05-23 20:15:17 +00:00
network_data.yaml Add default value for name_lower in network_data.yaml to update ServiceNetMap 2018-06-30 18:57:50 +00:00
network_data_ganesha.yaml Enable management network in network_data 2018-04-23 14:01:59 +00:00
overcloud-resource-registry-puppet.j2.yaml Merge "Try a timesync as part of first boot" into stable/queens 2019-05-29 22:24:48 +00:00
overcloud.j2.yaml Make krb-service-principal metadata per-Role 2019-05-29 10:31:41 +02:00
plan-environment.yaml Containers defaults for plan environment 2018-05-28 08:11:24 +00:00
requirements.txt Ensure unique containers names in docker-puppet 2019-01-07 11:25:02 +02:00
roles_data.yaml Add missing entries for Pure Storage Cinder Backend and fix typos 2019-03-07 19:23:56 +00:00
roles_data_undercloud.yaml [Queens-only] Install and configure tmpwatch for log cleanup 2019-03-27 07:42:11 +01:00
setup.cfg Drop deprecated templates/Makefile/merge.py 2015-11-25 15:00:13 -05:00
setup.py Updated from global requirements 2017-03-28 13:03:01 +00:00
test-requirements.txt Improve nova statedir ownership logic 2018-07-25 16:49:52 +02:00
tox.ini Improve nova statedir ownership logic 2018-07-25 16:49:52 +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 non-ha ovh-ha
openshift

X

keystone

X

X

X

X

X

X

X

X

X

glance

rbd

swift

file

rgw

file

file

file

file

cinder

rbd

iscsi
heat

X

X

ironic

X

mysql

X

X

X

X

X

X

X

X

X

neutron

ovs

ovs

ovs

ovs

ovs

ovn

ovs

ovs

neutron-bgpvpn

wip

ovn

X

neutron-l2gw

wip

rabbitmq

X

X

X

X

X

X

X

X

mongodb
redis

X

X

haproxy

X

X

X

X

X

X

X

X

memcached

X

X

X

X

X

X

X

X

pacemaker

X

X

X

X

X

X

X

X

nova

qemu

qemu

qemu

qemu

ironic

qemu

qemu

qemu

ntp

X

X

X

X

X

X

X

X

X

X

snmp

X

X

X

X

X

X

X

X

X

X

timezone

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

congress

X

cephmds

X

manila

X

collectd

X

fluentd

X

sensu-client

X