Provide sample environment for composable roles
Creating a sample environment generator configuration to generate basic environment files for the following architectures: * Monolithic HA (3 Controller, 3 Compute, 1 Ceph) * Monolithic Non-HA (1 Controller, 1 Compute, 1 Ceph) * Standalone (3 Controller, 3 Database, 3 Messaging, 2 Networker, 1 Compute, 1 Ceph) Change-Id: Id0b967d3b2356f38a51e1028b2dccc122d59888c Related-Blueprint: example-custom-role-environments
This commit is contained in:
59
environments/composable-roles/monolithic-ha.yaml
Normal file
59
environments/composable-roles/monolithic-ha.yaml
Normal file
@@ -0,0 +1,59 @@
|
|||||||
|
# *******************************************************************
|
||||||
|
# This file was created automatically by the sample environment
|
||||||
|
# generator. Developers should use `tox -e genconfig` to update it.
|
||||||
|
# Users are recommended to make changes to a copy of the file instead
|
||||||
|
# of the original, if any customizations are needed.
|
||||||
|
# *******************************************************************
|
||||||
|
# title: Monolithic Controller HA deployment
|
||||||
|
# description: |
|
||||||
|
# A Heat environment that can be used to deploy controller and compute
|
||||||
|
# services in an HA configuration with SSL everywhere and network
|
||||||
|
# isolation.
|
||||||
|
# This should be used with a roles_data.yaml containing the Controller,
|
||||||
|
# Compute and CephStorage roles.
|
||||||
|
# openstack overcloud roles generate -o ~/roles_data.yaml Controller Compute CephStorage
|
||||||
|
parameter_defaults:
|
||||||
|
# Number of CephStorage nodes to deploy
|
||||||
|
# Type: number
|
||||||
|
CephStorageCount: 1
|
||||||
|
|
||||||
|
# Format for CephStorage 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
|
||||||
|
# Type: string
|
||||||
|
CephStorageHostnameFormat: '%stackname%-cephstorage-%index%'
|
||||||
|
|
||||||
|
# Number of Compute nodes to deploy
|
||||||
|
# Type: number
|
||||||
|
ComputeCount: 3
|
||||||
|
|
||||||
|
# Format for Compute 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
|
||||||
|
# Type: string
|
||||||
|
ComputeHostnameFormat: '%stackname%-novacompute-%index%'
|
||||||
|
|
||||||
|
# Number of Controller nodes to deploy
|
||||||
|
# Type: number
|
||||||
|
ControllerCount: 3
|
||||||
|
|
||||||
|
# Format for Controller 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
|
||||||
|
# Type: string
|
||||||
|
ControllerHostnameFormat: '%stackname%-controller-%index%'
|
||||||
|
|
||||||
|
# DNS servers to use for the Overcloud
|
||||||
|
# Type: comma_delimited_list
|
||||||
|
DnsServers: ['8.8.8.8', '8,8.4.4']
|
||||||
|
|
||||||
|
# NTP servers list. Defaulted to pool.ntp.org in order to have a sane default for Pacemaker deployments when not configuring this parameter by default.
|
||||||
|
# Type: comma_delimited_list
|
||||||
|
NtpServer: ['pool.ntp.org']
|
||||||
|
|
||||||
|
# Name of the flavor for Ceph nodes
|
||||||
|
# Type: string
|
||||||
|
OvercloudCephStorageFlavor: ceph
|
||||||
|
|
||||||
|
# Name of the flavor for Compute nodes
|
||||||
|
# Type: string
|
||||||
|
OvercloudComputeFlavor: compute
|
||||||
|
|
||||||
|
# Name of the flavor for Controller nodes
|
||||||
|
# Type: string
|
||||||
|
OvercloudControllerFlavor: control
|
||||||
|
|
59
environments/composable-roles/monolithic-nonha.yaml
Normal file
59
environments/composable-roles/monolithic-nonha.yaml
Normal file
@@ -0,0 +1,59 @@
|
|||||||
|
# *******************************************************************
|
||||||
|
# This file was created automatically by the sample environment
|
||||||
|
# generator. Developers should use `tox -e genconfig` to update it.
|
||||||
|
# Users are recommended to make changes to a copy of the file instead
|
||||||
|
# of the original, if any customizations are needed.
|
||||||
|
# *******************************************************************
|
||||||
|
# title: Monolithic Controller Non-HA deployment
|
||||||
|
# description: |
|
||||||
|
# A Heat environment that can be used to deploy controller and compute
|
||||||
|
# services in an Non-HA configuration with SSL undercloud only and a
|
||||||
|
# flat network.
|
||||||
|
# This should be used with a roles_data.yaml containing the Controller,
|
||||||
|
# Compute and CephStorage roles.
|
||||||
|
# openstack overcloud roles generate -o ~/roles_data.yaml Controller Compute CephStorage
|
||||||
|
parameter_defaults:
|
||||||
|
# Number of CephStorage nodes to deploy
|
||||||
|
# Type: number
|
||||||
|
CephStorageCount: 1
|
||||||
|
|
||||||
|
# Format for CephStorage 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
|
||||||
|
# Type: string
|
||||||
|
CephStorageHostnameFormat: '%stackname%-cephstorage-%index%'
|
||||||
|
|
||||||
|
# Number of Compute nodes to deploy
|
||||||
|
# Type: number
|
||||||
|
ComputeCount: 1
|
||||||
|
|
||||||
|
# Format for Compute 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
|
||||||
|
# Type: string
|
||||||
|
ComputeHostnameFormat: '%stackname%-novacompute-%index%'
|
||||||
|
|
||||||
|
# Number of Controller nodes to deploy
|
||||||
|
# Type: number
|
||||||
|
ControllerCount: 1
|
||||||
|
|
||||||
|
# Format for Controller 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
|
||||||
|
# Type: string
|
||||||
|
ControllerHostnameFormat: '%stackname%-controller-%index%'
|
||||||
|
|
||||||
|
# DNS servers to use for the Overcloud
|
||||||
|
# Type: comma_delimited_list
|
||||||
|
DnsServers: ['8.8.8.8', '8,8.4.4']
|
||||||
|
|
||||||
|
# NTP servers list. Defaulted to pool.ntp.org in order to have a sane default for Pacemaker deployments when not configuring this parameter by default.
|
||||||
|
# Type: comma_delimited_list
|
||||||
|
NtpServer: ['pool.ntp.org']
|
||||||
|
|
||||||
|
# Name of the flavor for Ceph nodes
|
||||||
|
# Type: string
|
||||||
|
OvercloudCephStorageFlavor: ceph
|
||||||
|
|
||||||
|
# Name of the flavor for Compute nodes
|
||||||
|
# Type: string
|
||||||
|
OvercloudComputeFlavor: compute
|
||||||
|
|
||||||
|
# Name of the flavor for Controller nodes
|
||||||
|
# Type: string
|
||||||
|
OvercloudControllerFlavor: control
|
||||||
|
|
84
environments/composable-roles/standalone.yaml
Normal file
84
environments/composable-roles/standalone.yaml
Normal file
@@ -0,0 +1,84 @@
|
|||||||
|
# *******************************************************************
|
||||||
|
# This file was created automatically by the sample environment
|
||||||
|
# generator. Developers should use `tox -e genconfig` to update it.
|
||||||
|
# Users are recommended to make changes to a copy of the file instead
|
||||||
|
# of the original, if any customizations are needed.
|
||||||
|
# *******************************************************************
|
||||||
|
# title: Controller HA deployment with standalone Database, Messaging and Networker nodes.
|
||||||
|
# description: |
|
||||||
|
# A Heat environment that can be used to deploy controller, database,
|
||||||
|
# messaging, networker and compute services in an HA configuration with SSL
|
||||||
|
# everywhere and network isolation.
|
||||||
|
# This should be used with a roles_data.yaml containing the
|
||||||
|
# ControllerOpenstack, Database, Messaging, Networker, Compute and
|
||||||
|
# CephStorage roles.
|
||||||
|
# openstack overcloud roles generate -o ~/roles_data.yaml ControllerOpenstack Database Messaging Networker Compute CephStorage
|
||||||
|
parameter_defaults:
|
||||||
|
# Number of CephStorage nodes to deploy
|
||||||
|
# Type: number
|
||||||
|
CephStorageCount: 1
|
||||||
|
|
||||||
|
# Format for CephStorage 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
|
||||||
|
# Type: string
|
||||||
|
CephStorageHostnameFormat: '%stackname%-cephstorage-%index%'
|
||||||
|
|
||||||
|
# Number of Compute nodes to deploy
|
||||||
|
# Type: number
|
||||||
|
ComputeCount: 1
|
||||||
|
|
||||||
|
# Format for Compute 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
|
||||||
|
# Type: string
|
||||||
|
ComputeHostnameFormat: '%stackname%-novacompute-%index%'
|
||||||
|
|
||||||
|
# Number of Controller nodes to deploy
|
||||||
|
# Type: number
|
||||||
|
ControllerCount: 3
|
||||||
|
|
||||||
|
# Format for Controller 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
|
||||||
|
# Type: string
|
||||||
|
ControllerHostnameFormat: '%stackname%-controller-%index%'
|
||||||
|
|
||||||
|
# Number of Database nodes
|
||||||
|
# Type: number
|
||||||
|
DatabaseCount: 3
|
||||||
|
|
||||||
|
# DNS servers to use for the Overcloud
|
||||||
|
# Type: comma_delimited_list
|
||||||
|
DnsServers: ['8.8.8.8', '8,8.4.4']
|
||||||
|
|
||||||
|
# Number of Messaging nodes
|
||||||
|
# Type: number
|
||||||
|
MessagingCount: 3
|
||||||
|
|
||||||
|
# Number of Networker nodes
|
||||||
|
# Type: number
|
||||||
|
NetworkerCount: 2
|
||||||
|
|
||||||
|
# NTP servers list. Defaulted to pool.ntp.org in order to have a sane default for Pacemaker deployments when not configuring this parameter by default.
|
||||||
|
# Type: comma_delimited_list
|
||||||
|
NtpServer: ['pool.ntp.org']
|
||||||
|
|
||||||
|
# Name of the flavor for Ceph nodes
|
||||||
|
# Type: string
|
||||||
|
OvercloudCephStorageFlavor: ceph
|
||||||
|
|
||||||
|
# Name of the flavor for Compute nodes
|
||||||
|
# Type: string
|
||||||
|
OvercloudComputeFlavor: compute
|
||||||
|
|
||||||
|
# Name of the flavor for Controller nodes
|
||||||
|
# Type: string
|
||||||
|
OvercloudControllerFlavor: control
|
||||||
|
|
||||||
|
# Name of the flavor for Database nodes
|
||||||
|
# Type: string
|
||||||
|
OvercloudDatabaseFlavor: db
|
||||||
|
|
||||||
|
# Name of the flavor for Messaging nodes
|
||||||
|
# Type: string
|
||||||
|
OvercloudMessagingFlavor: messaging
|
||||||
|
|
||||||
|
# Name of the flavor for Networker nodes
|
||||||
|
# Type: string
|
||||||
|
OvercloudNetworkerFlavor: networker
|
||||||
|
|
174
sample-env-generator/composable-roles.yaml
Normal file
174
sample-env-generator/composable-roles.yaml
Normal file
@@ -0,0 +1,174 @@
|
|||||||
|
#
|
||||||
|
# This environment generator is used to generate some sample composable role
|
||||||
|
# environment files.
|
||||||
|
#
|
||||||
|
environments:
|
||||||
|
-
|
||||||
|
name: composable-roles/monolithic-nonha
|
||||||
|
title: Monolithic Controller Non-HA deployment
|
||||||
|
description: |
|
||||||
|
A Heat environment that can be used to deploy controller and compute
|
||||||
|
services in an Non-HA configuration with SSL undercloud only and a
|
||||||
|
flat network.
|
||||||
|
This should be used with a roles_data.yaml containing the Controller,
|
||||||
|
Compute and CephStorage roles.
|
||||||
|
openstack overcloud roles generate -o ~/roles_data.yaml Controller Compute CephStorage
|
||||||
|
files:
|
||||||
|
overcloud.yaml:
|
||||||
|
parameters:
|
||||||
|
- ControllerHostnameFormat
|
||||||
|
- ComputeHostnameFormat
|
||||||
|
- CephStorageHostnameFormat
|
||||||
|
- ControllerCount
|
||||||
|
- ComputeCount
|
||||||
|
- CephStorageCount
|
||||||
|
puppet/services/time/ntp.yaml:
|
||||||
|
parameters:
|
||||||
|
- NtpServer
|
||||||
|
sample-env-generator/composable-roles.yaml:
|
||||||
|
parameters:
|
||||||
|
- DnsServers
|
||||||
|
- OvercloudControllerFlavor
|
||||||
|
- OvercloudComputeFlavor
|
||||||
|
- OvercloudCephStorageFlavor
|
||||||
|
sample_values:
|
||||||
|
ControllerCount: 1
|
||||||
|
OvercloudControllerFlavor: control
|
||||||
|
ComputeCount: 1
|
||||||
|
OvercloudComputeFlavor: compute
|
||||||
|
CephStorageCount: 1
|
||||||
|
OvercloudCephStorageFlavor: ceph
|
||||||
|
|
||||||
|
-
|
||||||
|
name: composable-roles/monolithic-ha
|
||||||
|
title: Monolithic Controller HA deployment
|
||||||
|
description: |
|
||||||
|
A Heat environment that can be used to deploy controller and compute
|
||||||
|
services in an HA configuration with SSL everywhere and network
|
||||||
|
isolation.
|
||||||
|
This should be used with a roles_data.yaml containing the Controller,
|
||||||
|
Compute and CephStorage roles.
|
||||||
|
openstack overcloud roles generate -o ~/roles_data.yaml Controller Compute CephStorage
|
||||||
|
files:
|
||||||
|
overcloud.yaml:
|
||||||
|
parameters:
|
||||||
|
- ControllerHostnameFormat
|
||||||
|
- ComputeHostnameFormat
|
||||||
|
- CephStorageHostnameFormat
|
||||||
|
- ControllerCount
|
||||||
|
- ComputeCount
|
||||||
|
- CephStorageCount
|
||||||
|
puppet/services/time/ntp.yaml:
|
||||||
|
parameters:
|
||||||
|
- NtpServer
|
||||||
|
sample-env-generator/composable-roles.yaml:
|
||||||
|
parameters:
|
||||||
|
- DnsServers
|
||||||
|
- OvercloudControllerFlavor
|
||||||
|
- OvercloudComputeFlavor
|
||||||
|
- OvercloudCephStorageFlavor
|
||||||
|
sample_values:
|
||||||
|
ControllerCount: 3
|
||||||
|
OvercloudControllerFlavor: control
|
||||||
|
ComputeCount: 3
|
||||||
|
OvercloudComputeFlavor: compute
|
||||||
|
CephStorageCount: 1
|
||||||
|
OvercloudCephStorageFlavor: ceph
|
||||||
|
|
||||||
|
-
|
||||||
|
name: composable-roles/standalone
|
||||||
|
title: Controller HA deployment with standalone Database, Messaging and Networker nodes.
|
||||||
|
description: |
|
||||||
|
A Heat environment that can be used to deploy controller, database,
|
||||||
|
messaging, networker and compute services in an HA configuration with SSL
|
||||||
|
everywhere and network isolation.
|
||||||
|
This should be used with a roles_data.yaml containing the
|
||||||
|
ControllerOpenstack, Database, Messaging, Networker, Compute and
|
||||||
|
CephStorage roles.
|
||||||
|
openstack overcloud roles generate -o ~/roles_data.yaml ControllerOpenstack Database Messaging Networker Compute CephStorage
|
||||||
|
files:
|
||||||
|
overcloud.yaml:
|
||||||
|
parameters:
|
||||||
|
- ControllerHostnameFormat
|
||||||
|
- ComputeHostnameFormat
|
||||||
|
- CephStorageHostnameFormat
|
||||||
|
- ControllerCount
|
||||||
|
- ComputeCount
|
||||||
|
- CephStorageCount
|
||||||
|
puppet/services/time/ntp.yaml:
|
||||||
|
parameters:
|
||||||
|
- NtpServer
|
||||||
|
sample-env-generator/composable-roles.yaml:
|
||||||
|
parameters:
|
||||||
|
- DnsServers
|
||||||
|
- DatabaseCount
|
||||||
|
- MessagingCount
|
||||||
|
- NetworkerCount
|
||||||
|
- OvercloudControllerFlavor
|
||||||
|
- OvercloudComputeFlavor
|
||||||
|
- OvercloudCephStorageFlavor
|
||||||
|
- OvercloudDatabaseFlavor
|
||||||
|
- OvercloudMessagingFlavor
|
||||||
|
- OvercloudNetworkerFlavor
|
||||||
|
sample_values:
|
||||||
|
ControllerCount: 3
|
||||||
|
OvercloudControllerFlavor: control
|
||||||
|
ComputeCount: 1
|
||||||
|
OvercloudComputeFlavor: compute
|
||||||
|
CephStorageCount: 1
|
||||||
|
OvercloudCephStorageFlavor: ceph
|
||||||
|
DatabaseCount: 3
|
||||||
|
OvercloudDatabaseFlavor: db
|
||||||
|
MessagingCount: 3
|
||||||
|
OvercloudMessagingFlavor: messaging
|
||||||
|
NetworkerCount: 2
|
||||||
|
OvercloudNetworkerFlavor: networker
|
||||||
|
|
||||||
|
|
||||||
|
# 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:
|
||||||
|
DnsServers:
|
||||||
|
default: ['8.8.8.8', '8,8.4.4']
|
||||||
|
description: DNS servers to use for the Overcloud
|
||||||
|
type: comma_delimited_list
|
||||||
|
# Dynamic vars based on roles
|
||||||
|
DatabaseCount:
|
||||||
|
default: 0
|
||||||
|
description: Number of Database nodes
|
||||||
|
type: number
|
||||||
|
MessagingCount:
|
||||||
|
default: 0
|
||||||
|
description: Number of Messaging nodes
|
||||||
|
type: number
|
||||||
|
NetworkerCount:
|
||||||
|
default: 0
|
||||||
|
description: Number of Networker nodes
|
||||||
|
type: number
|
||||||
|
OvercloudControllerFlavor:
|
||||||
|
default: control
|
||||||
|
description: Name of the flavor for Controller nodes
|
||||||
|
type: string
|
||||||
|
OvercloudComputeFlavor:
|
||||||
|
default: compute
|
||||||
|
description: Name of the flavor for Compute nodes
|
||||||
|
type: string
|
||||||
|
OvercloudCephStorageFlavor:
|
||||||
|
default: compute
|
||||||
|
description: Name of the flavor for Ceph nodes
|
||||||
|
type: string
|
||||||
|
OvercloudDatabaseFlavor:
|
||||||
|
default: database
|
||||||
|
description: Name of the flavor for Database nodes
|
||||||
|
type: string
|
||||||
|
OvercloudMessagingFlavor:
|
||||||
|
default: messaging
|
||||||
|
description: Name of the flavor for Messaging nodes
|
||||||
|
type: string
|
||||||
|
OvercloudNetworkerFlavor:
|
||||||
|
default: networker
|
||||||
|
description: Name of the flavor for Networker nodes
|
||||||
|
type: string
|
||||||
|
|
Reference in New Issue
Block a user