tripleo-heat-templates/sample-env-generator/standalone.yaml
Harald Jensås a120ada72e Refactor OVN bridge MAC addresses
Moving the network and port management for OVN
bridge MAC addresses to ansible.

Removes the heat resources, and adds an external
deploy task at step 0 in the ovn controller service
templates which uses the 'tripleo_ovn_mac_addresses'
ansible module to create/remove OVN mac address ports.

Adds parameter role_specific OVNStaticBridgeMacMappings,
parameter that can be used to set static bridge mac
mappings. When this is set no neutron resources will be
created by the tripleo_ovn_mac_addresses ansible module.
OVNStaticBridgeMacMappings must be used for standalone
deployments.

Implements: blueprint network-data-v2-port
Depends-On: https://review.opendev.org/782891
Depends-On: https://review.opendev.org/783137
Change-Id: I6ce29d2908e76044c55eb96d0d3779fe67ba9169
2021-05-04 11:49:50 +05:30

277 lines
12 KiB
YAML

#
# This environment generator is used to generate some sample composable role
# environment files.
#
environments:
-
name: standalone/standalone-tripleo
title: Standalone Environment (no undercloud)
description: |
A Heat environment that can be used to deploy a single node all-in-one
node via the 'overcloud tripleo deploy' command. This does not
require an Undercloud for the deployment and can be used to deploy
a single node on the local machine.
By default we only want the following OpenStack services to be enabled:
* Keystone
* Nova (and related)
* Neutron (and related)
* Glance
* Cinder
* Swift (single replica mode)
* Horizon
This file disables any other OpenStack services that would normally be
enabled.
openstack overcloud roles generate -o ~/roles_data.yaml Standalone
files:
deployment/swift/swift-storage-container-puppet.yaml:
parameters:
- SwiftReplicas
deployment/timesync/chrony-baremetal-ansible.yaml:
parameters:
- NtpServer
deployment/tripleo-packages/tripleo-packages-baremetal-puppet.yaml:
parameters:
- EnablePackageInstall
deployment/sshd/sshd-baremetal-ansible.yaml:
parameters:
- SshFirewallAllowAll
sample-env-generator/standalone.yaml:
parameters:
- AddVipsToEtcHosts
- NetworkSafeDefaults
- StandaloneNetworkConfigTemplate
overcloud.yaml:
parameters:
- DnsServers
sample_values:
AddVipsToEtcHosts: false
StackAction: CREATE
EnablePackageInstall: true
SwiftReplicas: 1
SshFirewallAllowAll: true
StandaloneNetworkConfigTemplate: templates/standalone.j2
resource_registry:
# this network config is assumed by the tripleo deploy command
OS::TripleO::Network::Ports::ControlPlaneVipPort: ../../deployed-server/deployed-neutron-port.yaml
# OVN
OS::TripleO::Services::OVNDBs: ../../deployment/ovn/ovn-dbs-pacemaker-puppet.yaml
OS::TripleO::Services::OpenStackClients: ../../deployment/clients/openstack-clients-baremetal-ansible.yaml
# Disable Docker
OS::TripleO::Services::Docker: OS::Heat::None
# Activate container image prepare
OS::TripleO::Services::ContainerImagePrepare: ../../deployment/container-image-prepare/container-image-prepare-baremetal-ansible.yaml
OS::TripleO::Services::Podman: ../../deployment/podman/podman-baremetal-ansible.yaml
OS::TripleO::Services::DockerRegistry: ../../deployment/image-serve/image-serve-baremetal-ansible.yaml
# Install tmpwatch
OS::TripleO::Services::Tmpwatch: ../../deployment/logrotate/tmpwatch-install.yaml
# Aodh
OS::TripleO::Services::AodhApi: OS::Heat::None
OS::TripleO::Services::AodhEvaluator: OS::Heat::None
OS::TripleO::Services::AodhListener: OS::Heat::None
OS::TripleO::Services::AodhNotifier: OS::Heat::None
# Barbican
OS::TripleO::Services::BarbicanApi: OS::Heat::None
OS::TripleO::Services::BarbicanBackendDogtag: OS::Heat::None
OS::TripleO::Services::BarbicanBackendKmip: OS::Heat::None
OS::TripleO::Services::BarbicanBackendPkcs11Crypto: OS::Heat::None
OS::TripleO::Services::BarbicanBackendSimpleCrypto: OS::Heat::None
# Ceilometer
OS::TripleO::Services::CeilometerAgentCentral: OS::Heat::None
OS::TripleO::Services::CeilometerAgentNotification: OS::Heat::None
OS::TripleO::Services::ComputeCeilometerAgent: OS::Heat::None
# Designate
OS::TripleO::Services::DesignateApi: OS::Heat::None
OS::TripleO::Services::DesignateCentral: OS::Heat::None
OS::TripleO::Services::DesignateMDNS: OS::Heat::None
OS::TripleO::Services::DesignateProducer: OS::Heat::None
OS::TripleO::Services::DesignateSink: OS::Heat::None
OS::TripleO::Services::DesignateWorker: OS::Heat::None
OS::TripleO::Services::DesignateBind: OS::Heat::None
# Gnocchi
OS::TripleO::Services::GnocchiApi: OS::Heat::None
OS::TripleO::Services::GnocchiMetricd: OS::Heat::None
OS::TripleO::Services::GnocchiStatsd: OS::Heat::None
# Heat
OS::TripleO::Services::HeatApi: OS::Heat::None
OS::TripleO::Services::HeatApiCfn: OS::Heat::None
OS::TripleO::Services::HeatApiCloudwatch: OS::Heat::None
OS::TripleO::Services::HeatEngine: OS::Heat::None
# TLS
OS::TripleO::Services::IpaClient: OS::Heat::None
# Ironic
OS::TripleO::Services::IronicApi: OS::Heat::None
OS::TripleO::Services::IronicConductor: OS::Heat::None
OS::TripleO::Services::IronicInspector: OS::Heat::None
OS::TripleO::Services::IronicNeutronAgent: OS::Heat::None
OS::TripleO::Services::IronicPxe: OS::Heat::None
# Manila
OS::TripleO::Services::ManilaApi: OS::Heat::None
OS::TripleO::Services::ManilaBackendCephFs: OS::Heat::None
OS::TripleO::Services::ManilaBackendIsilon: OS::Heat::None
OS::TripleO::Services::ManilaBackendNetapp: OS::Heat::None
OS::TripleO::Services::ManilaBackendUnity: OS::Heat::None
OS::TripleO::Services::ManilaBackendVMAX: OS::Heat::None
OS::TripleO::Services::ManilaBackendVNX: OS::Heat::None
OS::TripleO::Services::ManilaScheduler: OS::Heat::None
OS::TripleO::Services::ManilaShare: OS::Heat::None
# Mistral
OS::TripleO::Services::MistralApi: OS::Heat::None
OS::TripleO::Services::MistralEngine: OS::Heat::None
OS::TripleO::Services::MistralEventEngine: OS::Heat::None
OS::TripleO::Services::MistralExecutor: OS::Heat::None
# Rear
OS::TripleO::Services::Rear: OS::Heat::None
# Redis
OS::TripleO::Services::Redis: OS::Heat::None
# Rsyslog
OS::TripleO::Services::Rsyslog: ../../deployment/logging/rsyslog-baremetal-ansible.yaml
# Zaqar
OS::TripleO::Services::Zaqar: OS::Heat::None
-
name: standalone/standalone-overcloud
title: Standalone Environment (via undercloud)
description: |
A Heat environment that can be used to deploy a single node all-in-one
node via an Undercloud using the normal Overcloud deployment process.
By default we only want the following OpenStack services to be enabled:
* Keystone
* Nova (and related)
* Neutron (and related)
* Glance
* Cinder
* Swift (single replica mode)
* Horizon
This file disables any other OpenStack services that would normally be
enabled.
openstack overcloud roles generate -o ~/roles_data.yaml Standalone
files:
deployment/swift/swift-storage-container-puppet.yaml:
parameters:
- SwiftReplicas
deployment/timesync/chrony-baremetal-ansible.yaml:
parameters:
- NtpServer
# TODO(aschultz): hack to pull in this config transport, not sure it is
# still needed.
sample-env-generator/standalone.yaml:
parameters:
- StandaloneHostnameFormat
- StandaloneCount
- OvercloudStandaloneFlavor
- StandaloneNetworkConfigTemplate
overcloud.yaml:
parameters:
- DnsServers
sample_values:
StandaloneCount: 1
OvercloudStandaloneFlavor: standalone
SwiftReplicas: 1
StandaloneNetworkConfigTemplate: templates/net_config_bridge.j2
resource_registry:
OS::TripleO::Services::OpenStackClients: ../../deployment/clients/openstack-clients-baremetal-ansible.yaml
# Aodh
OS::TripleO::Services::AodhApi: OS::Heat::None
OS::TripleO::Services::AodhEvaluator: OS::Heat::None
OS::TripleO::Services::AodhListener: OS::Heat::None
OS::TripleO::Services::AodhNotifier: OS::Heat::None
# Barbican
OS::TripleO::Services::BarbicanApi: OS::Heat::None
OS::TripleO::Services::BarbicanBackendDogtag: OS::Heat::None
OS::TripleO::Services::BarbicanBackendKmip: OS::Heat::None
OS::TripleO::Services::BarbicanBackendPkcs11Crypto: OS::Heat::None
OS::TripleO::Services::BarbicanBackendSimpleCrypto: OS::Heat::None
# Ceilometer
OS::TripleO::Services::CeilometerAgentCentral: OS::Heat::None
OS::TripleO::Services::CeilometerAgentNotification: OS::Heat::None
OS::TripleO::Services::ComputeCeilometerAgent: OS::Heat::None
# Designate
OS::TripleO::Services::DesignateApi: OS::Heat::None
OS::TripleO::Services::DesignateCentral: OS::Heat::None
OS::TripleO::Services::DesignateMDNS: OS::Heat::None
OS::TripleO::Services::DesignateProducer: OS::Heat::None
OS::TripleO::Services::DesignateSink: OS::Heat::None
OS::TripleO::Services::DesignateWorker: OS::Heat::None
OS::TripleO::Services::DesignateBind: OS::Heat::None
# Gnocchi
OS::TripleO::Services::GnocchiApi: OS::Heat::None
OS::TripleO::Services::GnocchiMetricd: OS::Heat::None
OS::TripleO::Services::GnocchiStatsd: OS::Heat::None
# Heat
OS::TripleO::Services::HeatApi: OS::Heat::None
OS::TripleO::Services::HeatApiCfn: OS::Heat::None
OS::TripleO::Services::HeatApiCloudwatch: OS::Heat::None
OS::TripleO::Services::HeatEngine: OS::Heat::None
# TLS
OS::TripleO::Services::IpaClient: OS::Heat::None
# Ironic
OS::TripleO::Services::IronicApi: OS::Heat::None
OS::TripleO::Services::IronicConductor: OS::Heat::None
OS::TripleO::Services::IronicInspector: OS::Heat::None
OS::TripleO::Services::IronicNeutronAgent: OS::Heat::None
OS::TripleO::Services::IronicPxe: OS::Heat::None
# Manila
OS::TripleO::Services::ManilaApi: OS::Heat::None
OS::TripleO::Services::ManilaBackendCephFs: OS::Heat::None
OS::TripleO::Services::ManilaBackendIsilon: OS::Heat::None
OS::TripleO::Services::ManilaBackendNetapp: OS::Heat::None
OS::TripleO::Services::ManilaBackendUnity: OS::Heat::None
OS::TripleO::Services::ManilaBackendVMAX: OS::Heat::None
OS::TripleO::Services::ManilaBackendVNX: OS::Heat::None
OS::TripleO::Services::ManilaScheduler: OS::Heat::None
OS::TripleO::Services::ManilaShare: OS::Heat::None
# Mistral
OS::TripleO::Services::MistralApi: OS::Heat::None
OS::TripleO::Services::MistralEngine: OS::Heat::None
OS::TripleO::Services::MistralEventEngine: OS::Heat::None
OS::TripleO::Services::MistralExecutor: OS::Heat::None
# Zaqar
OS::TripleO::Services::Zaqar: OS::Heat::None
# NOTE(aschultz): So because these are dynamic based on the roles used, we
# do not currently define these in any heat files. So we're defining them here
# so that the sample env generator can still provide these configuration items
# in the generated config files.
parameters:
# Dynamic vars based on roles
StandaloneCount:
default: 0
description: Number of Standalone nodes
type: number
StandaloneHostnameFormat:
type: string
description: >
Format for Standalone node hostnames
Note %index% is translated into the index of the node, e.g 0/1/2 etc
and %stackname% is replaced with the stack name e.g overcloud
default: "%stackname%-standalone-%index%"
OvercloudStandaloneFlavor:
default: standalone
description: Name of the flavor for Standalone nodes
type: string
AddVipsToEtcHosts:
default: false
description: >
Set to true to append per network Vips to /etc/hosts on each node.
type: string
NetworkSafeDefaults:
default: true
description: Allow to enable/disable safe networking defaults if os-net-config would fail to run with the provided config.
type: boolean
StandaloneNetworkConfigTemplate:
description: Standalone NetworkConfigTemplate
type: string
default: ''