Add split-stack environments

Add 2 new environments to faciltate deploying split-stack:
environments/overcloud-baremetal.j2.yaml
environments/overcloud-services.j2.yaml

The environments are used to deploy 2 separate Heat stacks, one for just
the baremetal+network configuration and one for the service
configuration.

In order to keep Heat's view of the server's hostname consistent across
the 2 stacks the 2 environments set the same HostnameFormat with
"overcloud" as the stack name.

implements blueprint split-stack-default

Change-Id: I0b3f282c08af6fecea8f136908b806db70bada46
This commit is contained in:
James Slagle 2017-04-25 17:10:40 -04:00
parent c47ca9c3a1
commit 562ee3a9a7
6 changed files with 42 additions and 7 deletions

View File

@ -0,0 +1,19 @@
resource_registry:
OS::TripleO::AllNodes::SoftwareConfig: OS::Heat::None
OS::TripleO::PostDeploySteps: OS::Heat::None
OS::TripleO::DefaultPasswords: OS::Heat::None
OS::TripleO::RandomString: OS::Heat::None
OS::TripleO::AllNodesDeployment: OS::Heat::None
parameter_defaults:
# Deploy no services
{% for role in roles %}
{{role.name}}Services: []
{% endfor %}
# Consistent Hostname format
ControllerHostnameFormat: overcloud-controller-%index%
ComputeHostnameFormat: overcloud-novacompute-%index%
ObjectStorageHostnameFormat: overcloud-objectstorage-%index%
CephStorageHostnameFormat: overcloud-cephstorage-%index%
BlockStorageHostnameFormat: overcloud-blockstorage-%index%

View File

@ -0,0 +1,7 @@
parameter_defaults:
# Consistent Hostname format
ControllerDeployedServerHostnameFormat: overcloud-controller-%index%
ComputeDeployedServerHostnameFormat: overcloud-novacompute-%index%
ObjectStorageDeployedServerHostnameFormat: overcloud-objectstorage-%index%
CephStorageDeployedServerHostnameFormat: overcloud-cephstorage-%index%
BlockStorageDeployedServerHostnameFormat: overcloud-blockstorage-%index%

View File

@ -34,7 +34,7 @@ parameters:
resources:
VipPort:
type: OS::Neutron::Port
type: OS::TripleO::Network::Ports::ControlPlaneVipPort
properties:
network: {get_param: ControlPlaneNetwork}
name: {get_param: PortName}

View File

@ -4,10 +4,12 @@ resource_registry:
OS::TripleO::PostDeploySteps: puppet/post.yaml
OS::TripleO::PostUpgradeSteps: puppet/post-upgrade.yaml
OS::TripleO::AllNodes::SoftwareConfig: puppet/all-nodes-config.yaml
OS::TripleO::AllNodesDeployment: OS::Heat::StructuredDeployments
OS::TripleO::Hosts::SoftwareConfig: hosts-config.yaml
OS::TripleO::Ssh::HostPubKey: extraconfig/tasks/ssh/host_public_key.yaml
OS::TripleO::Ssh::KnownHostsConfig: extraconfig/tasks/ssh/known_hosts_config.yaml
OS::TripleO::DefaultPasswords: default_passwords.yaml
OS::TripleO::RandomString: OS::Heat::RandomString
# Tasks (for internal TripleO usage)
OS::TripleO::Tasks::UpdateWorkflow: OS::Heat::None

View File

@ -242,15 +242,15 @@ resources:
HOST: {get_param: CloudNameStorageManagement}
HeatAuthEncryptionKey:
type: OS::Heat::RandomString
type: OS::TripleO::RandomString
PcsdPassword:
type: OS::Heat::RandomString
type: OS::TripleO::RandomString
properties:
length: 16
HorizonSecret:
type: OS::Heat::RandomString
type: OS::TripleO::RandomString
properties:
length: 10
@ -334,7 +334,7 @@ resources:
servers: {get_attr: [{{role.name}}Servers, value]}
{{role.name}}AllNodesDeployment:
type: OS::Heat::StructuredDeployments
type: OS::TripleO::AllNodesDeployment
depends_on:
{% for role_inner in roles %}
- {{role_inner.name}}HostsDeployment
@ -575,12 +575,12 @@ resources:
UpdateIdentifier: {get_param: UpdateIdentifier}
MysqlRootPassword:
type: OS::Heat::RandomString
type: OS::TripleO::RandomString
properties:
length: 10
RabbitCookie:
type: OS::Heat::RandomString
type: OS::TripleO::RandomString
properties:
length: 20
salt: {get_param: RabbitCookieSalt}

View File

@ -0,0 +1,7 @@
---
features:
- Add 2 new example environments to facilitate deploying split-stack,
environments/overcloud-baremetal.j2.yaml and
environments/overcloud-services.yaml. The environments are used to deploy two
separate Heat stacks, one for just the baremetal+network configuration and one
for the service configuration.