# This file holds metadata about the capabilities of the tripleo-heat-templates # repository for deployment using puppet. It groups configuration by topic, # describes possible combinations of environments and resource capabilities. # root_template: identifies repository's root template # root_environment: identifies root_environment, this one is special in terms of # order in which the environments are merged before deploying. This one serves as # a base and it's parameters/resource_registry gets overridden by other environments # if used. # topics: # High Level grouping by purpose of environments # Attributes: # title: (required) # description: (optional) # environment_groups: (required) # environment_groups: # Identifies an environment choice. If group includes multiple environments it # indicates that environments in group are mutually exclusive. # Attributes: # title: (optional) # description: (optional) # tags: a list of tags to provide additional information for e.g. filtering (optional) # environments: (required) # environments: # List of environments in environment group # Attributes: # file: a file name including path within repository (required) # title: (required) # description: (optional) # requires: an array of environments which are required by this environment (optional) # resource_registry: [tbd] (optional) # resource_registry: # [tbd] Each environment can provide options on resource_registry level applicable # only when that given environment is used. (resource_type of that environment can # be implemented using multiple templates). root_template: overcloud.yaml root_environment: overcloud-resource-registry-puppet.yaml topics: - title: Base Resources Configuration description: environment_groups: - title: description: Enable base configuration for all resources required for OpenStack Deployment environments: - file: overcloud-resource-registry-puppet.yaml title: Base resources configuration description: - title: Deployment Options description: environment_groups: - title: High Availability description: Enables configuration of an Overcloud controller with Pacemaker environments: - file: environments/puppet-pacemaker.yaml title: Pacemaker description: Enable configuration of an Overcloud controller with Pacemaker requires: - overcloud-resource-registry-puppet.yaml - title: Pacemaker options description: environments: - file: environments/puppet-pacemaker-no-restart.yaml title: Pacemaker No Restart description: requires: - environments/puppet-pacemaker.yaml - overcloud-resource-registry-puppet.yaml - title: Docker RDO description: > Docker container with heat agents for containerized compute node environments: - file: environments/docker.yaml title: Docker RDO description: requires: - overcloud-resource-registry-puppet.yaml - title: Enable TLS description: > environments: - file: environments/enable-tls.yaml title: TLS description: > Use this option to pass in certificates for SSL deployments. For these values to take effect, one of the TLS endpoints environments must also be used. requires: - overcloud-resource-registry-puppet.yaml - title: TLS Endpoints description: > environments: - file: environments/tls-endpoints-public-dns.yaml title: SSL-enabled deployment with DNS name as public endpoint description: > Use this environment when deploying an SSL-enabled overcloud where the public endpoint is a DNS name. requires: - environments/enable-tls.yaml - overcloud-resource-registry-puppet.yaml - file: environments/tls-endpoints-public-ip.yaml title: SSL-enabled deployment with IP address as public endpoint description: > Use this environment when deploying an SSL-enabled overcloud where the public endpoint is an IP address. requires: - environments/enable-tls.yaml - overcloud-resource-registry-puppet.yaml - title: External load balancer description: > Enable external load balancer environments: - file: environments/external-loadbalancer-vip-v6.yaml title: External load balancer IPv6 description: > requires: - overcloud-resource-registry-puppet.yaml - file: environments/external-loadbalancer-vip.yaml title: External load balancer IPv4 description: > requires: - overcloud-resource-registry-puppet.yaml - title: Additional Services description: Deploy additional Overcloud services environment_groups: - title: Manila description: environments: - file: environments/manila-generic-config.yaml title: Manila description: Enable Manila generic driver backend requires: - overcloud-resource-registry-puppet.yaml - title: Sahara description: environments: - file: environments/services/sahara.yaml title: Sahara description: Deploy Sahara service requires: - overcloud-resource-registry-puppet.yaml - title: Ironic description: environments: - file: environments/services/ironic.yaml title: Ironic description: Deploy Ironic service requires: - overcloud-resource-registry-puppet.yaml - title: Mistral description: environments: - file: environments/services/mistral.yaml title: Mistral description: Deploy Mistral service requires: - overcloud-resource-registry-puppet.yaml # - title: Network Interface Configuration # description: # environment_groups: - title: Overlay Network Configuration description: environment_groups: - title: Network Isolation description: environments: - file: environments/network-isolation.yaml title: Network Isolation description: > Enable the creation of Neutron networks for isolated Overcloud traffic and configure each role to assign ports (related to that role) on these networks. requires: - overcloud-resource-registry-puppet.yaml - file: environments/network-isolation-v6.yaml title: Network Isolation IPv6 description: > Enable the creation of IPv6 Neutron networks for isolated Overcloud traffic and configure each role to assign ports (related to that role) on these networks. requires: - overcloud-resource-registry-puppet.yaml - title: Single NIC or Bonding description: > Configure roles to use pair of bonded nics or to use Vlans on a single nic. This option assumes use of Network Isolation. environments: - file: environments/net-bond-with-vlans.yaml title: Bond with Vlans description: > Configure each role to use a pair of bonded nics (nic2 and nic3) and configures an IP address on each relevant isolated network for each role. This option assumes use of Network Isolation. requires: - environments/network-isolation.yaml - overcloud-resource-registry-puppet.yaml - file: environments/net-bond-with-vlans-no-external.yaml title: Bond with Vlans No External Ports description: > Configure each role to use a pair of bonded nics (nic2 and nic3) and configures an IP address on each relevant isolated network for each role. This option assumes use of Network Isolation. Sets external ports to noop. requires: - environments/network-isolation.yaml - overcloud-resource-registry-puppet.yaml - file: environments/net-bond-with-vlans-v6.yaml title: Bond with Vlans IPv6 description: > Configure each role to use a pair of bonded nics (nic2 and nic3) and configures an IP address on each relevant isolated network for each role, with IPv6 on the External network. This option assumes use of Network Isolation IPv6. requires: - environments/network-isolation-v6.yaml - overcloud-resource-registry-puppet.yaml - file: environments/net-multiple-nics.yaml title: Multiple NICs description: > Configures each role to use a separate NIC for each isolated network. This option assumes use of Network Isolation. requires: - environments/network-isolation.yaml - overcloud-resource-registry-puppet.yaml - file: environments/net-multiple-nics-v6.yaml title: Multiple NICs IPv6 description: > Configure each role to use a separate NIC for each isolated network with IPv6 on the External network. This option assumes use of Network Isolation IPv6. requires: - environments/network-isolation-v6.yaml - overcloud-resource-registry-puppet.yaml - file: environments/net-single-nic-with-vlans.yaml title: Single NIC with Vlans description: > Configure each role to use Vlans on a single NIC for each isolated network. This option assumes use of Network Isolation. requires: - environments/network-isolation.yaml - overcloud-resource-registry-puppet.yaml - file: environments/net-single-nic-with-vlans-no-external.yaml title: Single NIC with Vlans No External Ports description: > Configure each role to use Vlans on a single NIC for each isolated network. This option assumes use of Network Isolation. Sets external ports to noop. requires: - environments/network-isolation.yaml - overcloud-resource-registry-puppet.yaml - file: environments/net-single-nic-linux-bridge-with-vlans.yaml title: Single NIC with Linux Bridge Vlans description: > Configure each role to use Vlans on a single NIC for each isolated network. This option assumes use of Network Isolation. requires: - environments/network-isolation.yaml - overcloud-resource-registry-puppet.yaml - file: environments/net-single-nic-with-vlans-v6.yaml title: Single NIC with Vlans IPv6 description: > Configures each role to use Vlans on a single NIC for each isolated network with IPv6 on the External network. This option assumes use of Network Isolation IPv6 requires: - environments/network-isolation-v6.yaml - overcloud-resource-registry-puppet.yaml - title: Management Network description: > Enable the creation of a system management network. This creates a Neutron network for isolated Overcloud system management traffic and configures each role to assign a port (related to that role) on that network. environments: - file: environments/network-management.yaml title: Management Network description: requires: - overcloud-resource-registry-puppet.yaml - file: environments/network-management-v6.yaml title: Management Network IPv6 description: requires: - overcloud-resource-registry-puppet.yaml - title: Neutron Plugin Configuration description: environment_groups: - title: Neutron Plugins description: > Enable various Neutron plugins and backends environments: - file: environments/neutron-ml2-bigswitch.yaml title: BigSwitch Extensions description: > Enable Big Switch extensions, configured via puppet requires: - overcloud-resource-registry-puppet.yaml - file: environments/neutron-ml2-cisco-n1kv.yaml title: Cisco N1KV backend description: > Enable a Cisco N1KV backend, configured via puppet requires: - overcloud-resource-registry-puppet.yaml - file: environments/neutron-ml2-cisco-nexus-ucsm.yaml title: Cisco Neutron plugin description: requires: - overcloud-resource-registry-puppet.yaml - file: environments/neutron-midonet.yaml title: Deploy MidoNet Services description: requires: - overcloud-resource-registry-puppet.yaml - file: environments/neutron-nuage-config.yaml title: Neutron Nuage backend description: Enables Neutron Nuage backend on the controller requires: - overcloud-resource-registry-puppet.yaml - file: environments/neutron-opencontrail.yaml title: OpenContrail Extensions description: Enables OpenContrail extensions requires: - overcloud-resource-registry-puppet.yaml - file: environments/neutron-opendaylight.yaml title: OpenDaylight description: Enables OpenDaylight requires: - overcloud-resource-registry-puppet.yaml - file: environments/neutron-opendaylight-l3.yaml title: OpenDaylight with L3 DVR description: Enables OpenDaylight with L3 DVR requires: - overcloud-resource-registry-puppet.yaml - file: environments/neutron-ovs-dpdk.yaml title: DPDK with OVS description: Deploy DPDK with OVS requires: - overcloud-resource-registry-puppet.yaml - file: environments/neutron-ovs-dvr.yaml title: DVR description: Enables DVR in the Overcloud requires: - overcloud-resource-registry-puppet.yaml - file: environments/neutron-plumgrid.yaml title: PLUMgrid extensions description: Enables PLUMgrid extensions requires: - overcloud-resource-registry-puppet.yaml - title: Nova Extensions description: environment_groups: - title: Nova Extensions description: environments: - file: environments/nova-nuage-config.yaml title: Nuage backend description: > Enables Nuage backend on the Compute requires: - overcloud-resource-registry-puppet.yaml - title: Storage description: environment_groups: - title: Cinder backup service description: environments: - file: environments/cinder-backup.yaml title: Cinder backup service description: > OpenStack Cinder Backup service with Pacemaker configured with Puppet requires: - environments/puppet-pacemaker.yaml - overcloud-resource-registry-puppet.yaml - title: Cinder backend description: > Enable various Cinder backends environments: - file: environments/cinder-netapp-config.yaml title: Cinder NetApp backend description: requires: - overcloud-resource-registry-puppet.yaml - file: environments/cinder-dellsc-config.yaml title: Cinder Dell Storage Center ISCSI backend description: > Enables a Cinder Dell Storage Center ISCSI backend, configured via puppet requires: - overcloud-resource-registry-puppet.yaml - file: environments/cinder-eqlx-config.yaml title: Cinder EQLX backend description: > Enables a Cinder EQLX backend, configured via puppet requires: - overcloud-resource-registry-puppet.yaml - title: Externally managed Ceph description: > Enable the use of an externally managed Ceph cluster environments: - file: environments/puppet-ceph-external.yaml title: Externally managed Ceph description: requires: - overcloud-resource-registry-puppet.yaml - title: Ceph Devel description: > Enable a Ceph storage cluster using the controller and 2 ceph nodes. Rbd backends are enabled for Cinder, Glance, and Nova. environments: - file: environments/puppet-ceph-devel.yaml title: Ceph Devel description: requires: - overcloud-resource-registry-puppet.yaml - title: Storage Environment description: > Can be used to set up storage backends. Defaults to Ceph used as a backend for Cinder, Glance and Nova ephemeral storage. It configures for example which services will use Ceph, or if any of the services will use NFS. And more. Usually requires to be edited by user first. tags: - no-gui environments: - file: environments/storage-environment.yaml title: Storage Environment description: requires: - overcloud-resource-registry-puppet.yaml - title: Utilities description: environment_groups: - title: Config Debug description: Enable config management (e.g. Puppet) debugging environments: - file: environments/config-debug.yaml title: Config Debug description: requires: - overcloud-resource-registry-puppet.yaml - title: Disable journal in MongoDb description: > Since, when journaling is enabled, MongoDb will create big journal file it can take time. In a CI environment for example journaling is not necessary. environments: - file: environments/mongodb-nojournal.yaml title: Disable journal in MongoDb description: requires: - overcloud-resource-registry-puppet.yaml - title: Overcloud Steps description: > Specifies hooks/breakpoints where overcloud deployment should stop Allows operator validation between steps, and/or more granular control. Note: the wildcards relate to naming convention for some resource suffixes, e.g see puppet/*-post.yaml, enabling this will mean we wait for a user signal on every *Deployment_StepN resource defined in those files. tags: - no-gui environments: - file: environments/overcloud-steps.yaml title: Overcloud Steps description: requires: - overcloud-resource-registry-puppet.yaml - title: Manage Firewall description: environments: - file: environments/manage-firewall.yaml title: Manage Firewall description: requires: - overcloud-resource-registry-puppet.yaml - title: Operational Tools description: environment_groups: - title: Monitoring agents description: Enable monitoring agents environments: - file: environments/monitoring-environment.yaml title: enable monitoring agents description: requires: - overcloud-resource-registry-puppet.yaml - title: Centralized logging support description: Enable centralized logging clients (fluentd) environments: - file: environments/logging-environment.yaml title: Enable fluentd client description: requires: - overcloud-resource-registry-puppet.yaml