summaryrefslogtreecommitdiffstats
path: root/overcloud.yaml
diff options
context:
space:
mode:
Diffstat (limited to 'overcloud.yaml')
-rw-r--r--overcloud.yaml98
1 files changed, 77 insertions, 21 deletions
diff --git a/overcloud.yaml b/overcloud.yaml
index 3a272741..419ac837 100644
--- a/overcloud.yaml
+++ b/overcloud.yaml
@@ -16,6 +16,30 @@ parameters:
default: overcloud
description: The DNS name of this cloud. E.g. ci-overcloud.tripleo.org
type: string
+ CloudNameInternal:
+ default: overcloud.internalapi.localdomain
+ description: >
+ The DNS name of this cloud's internal API endpoint. E.g.
+ 'ci-overcloud.internalapi.tripleo.org'.
+ type: string
+ CloudNameStorage:
+ default: overcloud.storage.localdomain
+ description: >
+ The DNS name of this cloud's storage endpoint. E.g.
+ 'ci-overcloud.storage.tripleo.org'.
+ type: string
+ CloudNameStorageManagement:
+ default: overcloud.storagemgmt.localdomain
+ description: >
+ The DNS name of this cloud's storage management endpoint. E.g.
+ 'ci-overcloud.storagemgmt.tripleo.org'.
+ type: string
+ CloudNameManagement:
+ default: overcloud.management.localdomain
+ description: >
+ The DNS name of this cloud's storage management endpoint. E.g.
+ 'ci-overcloud.management.tripleo.org'.
+ type: string
ControlFixedIPs:
default: []
description: Should be used for arbitrary ips.
@@ -56,6 +80,12 @@ parameters:
Control the IP allocation for the StorageMgmgVirtualInterface port. E.g.
[{'ip_address':'1.2.3.4'}]
type: json
+ RedisVirtualFixedIPs:
+ default: []
+ description: >
+ Control the IP allocation for the virtual IP used by Redis. E.g.
+ [{'ip_address':'1.2.3.4'}]
+ type: json
CloudDomain:
default: 'localdomain'
type: string
@@ -85,11 +115,6 @@ parameters:
may be implementation specific, e.g puppet hieradata. Any role specific
ExtraConfig, e.g controllerExtraConfig takes precedence over ExtraConfig.
type: json
- SwiftHashSuffix:
- description: A random string to be used as a salt when hashing to determine mappings in the ring.
- type: string
- hidden: true
-
# Compute-specific params
ComputeCount:
@@ -109,6 +134,7 @@ parameters:
ControllerServices:
default:
+ - OS::TripleO::Services::CACerts
- OS::TripleO::Services::CephMon
- OS::TripleO::Services::CephExternal
- OS::TripleO::Services::CinderApi
@@ -172,6 +198,7 @@ parameters:
- OS::TripleO::Services::NovaIronic
- OS::TripleO::Services::TripleoPackages
- OS::TripleO::Services::TripleoFirewall
+ - OS::TripleO::Services::OpenDaylight
description: A list of service resources (configured in the Heat
resource_registry) which represent nested stacks
for each service that should get installed on the Controllers.
@@ -179,6 +206,7 @@ parameters:
ComputeServices:
default:
+ - OS::TripleO::Services::CACerts
- OS::TripleO::Services::CephClient
- OS::TripleO::Services::CephExternal
- OS::TripleO::Services::Timezone
@@ -194,6 +222,8 @@ parameters:
- OS::TripleO::Services::ComputeNeutronMetadataAgent
- OS::TripleO::Services::TripleoPackages
- OS::TripleO::Services::TripleoFirewall
+ - OS::TripleO::Services::NeutronSriovAgent
+ - OS::TripleO::Services::OpenDaylightOvs
description: A list of service resources (configured in the Heat
resource_registry) which represent nested stacks
for each service that should get installed on the Compute Nodes.
@@ -211,6 +241,7 @@ parameters:
type: json
BlockStorageServices:
default:
+ - OS::TripleO::Services::CACerts
- OS::TripleO::Services::CinderVolume
- OS::TripleO::Services::Kernel
- OS::TripleO::Services::Ntp
@@ -235,6 +266,7 @@ parameters:
type: json
ObjectStorageServices:
default:
+ - OS::TripleO::Services::CACerts
- OS::TripleO::Services::Kernel
- OS::TripleO::Services::Ntp
- OS::TripleO::Services::SwiftStorage
@@ -262,6 +294,7 @@ parameters:
type: json
CephStorageServices:
default:
+ - OS::TripleO::Services::CACerts
- OS::TripleO::Services::CephOSD
- OS::TripleO::Services::Kernel
- OS::TripleO::Services::Ntp
@@ -374,7 +407,12 @@ resources:
EndpointMap:
type: OS::TripleO::EndpointMap
properties:
- CloudName: {get_param: CloudName}
+ CloudEndpoints:
+ external: {get_param: CloudName}
+ internal_api: {get_param: CloudNameInternal}
+ storage: {get_param: CloudNameStorage}
+ storage_mgmt: {get_param: CloudNameStorageManagement}
+ management: {get_param: CloudNameManagement}
NetIpMap: {get_attr: [VipMap, net_ip_map]}
ServiceNetMap: {get_attr: [ServiceNetMap, service_net_map]}
@@ -382,7 +420,9 @@ resources:
type: OS::TripleO::Services
properties:
Services: {get_param: ControllerServices}
+ ServiceNetMap: {get_attr: [ServiceNetMap, service_net_map]}
EndpointMap: {get_attr: [EndpointMap, endpoint_map]}
+ DefaultPasswords: {get_attr: [DefaultPasswords, passwords]}
Controller:
type: OS::Heat::ResourceGroup
@@ -395,17 +435,12 @@ resources:
properties:
CloudDomain: {get_param: CloudDomain}
controllerExtraConfig: {get_param: controllerExtraConfig}
- HeatAuthEncryptionKey: {get_resource: HeatAuthEncryptionKey}
HorizonSecret: {get_resource: HorizonSecret}
- MysqlClusterUniquePart: {get_attr: [MysqlClusterUniquePart, value]}
- MysqlRootPassword: {get_attr: [MysqlRootPassword, value]}
PcsdPassword: {get_resource: PcsdPassword}
- RabbitCookie: {get_attr: [RabbitCookie, value]}
RedisVirtualIP: {get_attr: [RedisVirtualIP, ip_address]}
RedisVirtualIPUri: {get_attr: [RedisVirtualIP, ip_address_uri]}
ServiceNetMap: {get_attr: [ServiceNetMap, service_net_map]}
EndpointMap: {get_attr: [EndpointMap, endpoint_map]}
- MysqlVirtualIP: {get_attr: [VipMap, net_ip_map, {get_attr: [ServiceNetMap, service_net_map, MysqlNetwork]}]}
Hostname:
str_replace:
template: {get_param: ControllerHostnameFormat}
@@ -416,11 +451,12 @@ resources:
ServiceNames: {get_attr: [ControllerServiceChain, role_data, service_names]}
ComputeServiceChain:
-
type: OS::TripleO::Services
properties:
Services: {get_param: ComputeServices}
+ ServiceNetMap: {get_attr: [ServiceNetMap, service_net_map]}
EndpointMap: {get_attr: [EndpointMap, endpoint_map]}
+ DefaultPasswords: {get_attr: [DefaultPasswords, passwords]}
Compute:
type: OS::Heat::ResourceGroup
@@ -434,9 +470,6 @@ resources:
CloudDomain: {get_param: CloudDomain}
NeutronPhysicalBridge: {get_param: HypervisorNeutronPhysicalBridge}
NeutronPublicInterface: {get_param: HypervisorNeutronPublicInterface}
- # L3 HA and Failover is not relevant for Computes, should be removed
- NovaApiHost: {get_attr: [VipMap, net_ip_map, {get_attr: [ServiceNetMap, service_net_map, NovaApiNetwork]}]}
- NovaPublicIP: {get_attr: [VipMap, net_ip_map, external]}
ServiceNetMap: {get_attr: [ServiceNetMap, service_net_map]}
EndpointMap: {get_attr: [EndpointMap, endpoint_map]}
Hostname:
@@ -452,7 +485,9 @@ resources:
type: OS::TripleO::Services
properties:
Services: {get_param: BlockStorageServices}
+ ServiceNetMap: {get_attr: [ServiceNetMap, service_net_map]}
EndpointMap: {get_attr: [EndpointMap, endpoint_map]}
+ DefaultPasswords: {get_attr: [DefaultPasswords, passwords]}
BlockStorage:
type: OS::Heat::ResourceGroup
@@ -482,7 +517,9 @@ resources:
type: OS::TripleO::Services
properties:
Services: {get_param: ObjectStorageServices}
+ ServiceNetMap: {get_attr: [ServiceNetMap, service_net_map]}
EndpointMap: {get_attr: [EndpointMap, endpoint_map]}
+ DefaultPasswords: {get_attr: [DefaultPasswords, passwords]}
ObjectStorage:
type: OS::Heat::ResourceGroup
@@ -493,7 +530,6 @@ resources:
resource_def:
type: OS::TripleO::ObjectStorage
properties:
- HashSuffix: {get_param: SwiftHashSuffix}
UpdateIdentifier: {get_param: UpdateIdentifier}
ServiceNetMap: {get_attr: [ServiceNetMap, service_net_map]}
Hostname:
@@ -513,7 +549,9 @@ resources:
type: OS::TripleO::Services
properties:
Services: {get_param: CephStorageServices}
+ ServiceNetMap: {get_attr: [ServiceNetMap, service_net_map]}
EndpointMap: {get_attr: [EndpointMap, endpoint_map]}
+ DefaultPasswords: {get_attr: [DefaultPasswords, passwords]}
CephStorage:
type: OS::Heat::ResourceGroup
@@ -569,6 +607,14 @@ resources:
- list_join:
- '\n'
- {get_attr: [CephStorage, hosts_entry]}
+ enabled_services:
+ list_join:
+ - ','
+ - {get_attr: [ControllerServiceChain, role_data, service_names]}
+ - {get_attr: [ComputeServiceChain, role_data, service_names]}
+ - {get_attr: [BlockStorageServiceChain, role_data, service_names]}
+ - {get_attr: [ObjectStorageServiceChain, role_data, service_names]}
+ - {get_attr: [CephStorageServiceChain, role_data, service_names]}
controller_ips: {get_attr: [Controller, ip_address]}
controller_names: {get_attr: [Controller, hostname]}
rabbit_node_ips: {get_attr: [ControllerIpListMap, net_ip_map, {get_attr: [ServiceNetMap, service_net_map, RabbitmqNetwork]}]}
@@ -594,6 +640,7 @@ resources:
sahara_api_node_ips: {get_attr: [ControllerIpListMap, net_ip_map, {get_attr: [ServiceNetMap, service_net_map, SaharaApiNetwork]}]}
ironic_api_node_ips: {get_attr: [ControllerIpListMap, net_ip_map, {get_attr: [ServiceNetMap, service_net_map, IronicApiNetwork]}]}
ceph_mon_node_ips: {get_attr: [ControllerIpListMap, net_ip_map, {get_attr: [ServiceNetMap, service_net_map, CephPublicNetwork]}]}
+ opendaylight_api_node_ips: {get_attr: [ControllerIpListMap, net_ip_map, {get_attr: [ServiceNetMap, service_net_map, OpenDaylightApiNetwork]}]}
ceph_mon_node_names: {get_attr: [Controller, hostname]}
DeployIdentifier: {get_param: DeployIdentifier}
UpdateIdentifier: {get_param: UpdateIdentifier}
@@ -603,17 +650,21 @@ resources:
properties:
length: 10
- MysqlClusterUniquePart:
- type: OS::Heat::RandomString
- properties:
- length: 10
-
RabbitCookie:
type: OS::Heat::RandomString
properties:
length: 20
salt: {get_param: RabbitCookieSalt}
+ DefaultPasswords:
+ type: OS::TripleO::DefaultPasswords
+ properties:
+ DefaultMysqlRootPassword: {get_attr: [MysqlRootPassword, value]}
+ DefaultRabbitCookie: {get_attr: [RabbitCookie, value]}
+ DefaultHeatAuthEncryptionKey: {get_attr: [HeatAuthEncryptionKey, value]}
+ DefaultPcsdPassword: {get_attr: [PcsdPassword, value]}
+ DefaultHorizonSecret: {get_attr: [HorizonSecret, value]}
+
# creates the network architecture
Networks:
type: OS::TripleO::Network
@@ -636,6 +687,7 @@ resources:
PortName: redis_virtual_ip
NetworkName: {get_attr: [ServiceNetMap, service_net_map, RedisNetwork]}
ServiceName: redis
+ FixedIPs: {get_param: RedisVirtualFixedIPs}
# The public VIP is on the External net, falls back to ctlplane
PublicVirtualIP:
@@ -720,6 +772,7 @@ resources:
internal_api_virtual_ip: {get_attr: [VipMap, net_ip_map, internal_api]}
sahara_api_vip: {get_attr: [VipMap, net_ip_map, {get_attr: [ServiceNetMap, service_net_map, SaharaApiNetwork]}]}
ironic_api_vip: {get_attr: [VipMap, net_ip_map, {get_attr: [ServiceNetMap, service_net_map, IronicApiNetwork]}]}
+ opendaylight_api_vip: {get_attr: [VipMap, net_ip_map, {get_attr: [ServiceNetMap, service_net_map, OpenDaylightApiNetwork]}]}
storage_virtual_ip: {get_attr: [VipMap, net_ip_map, storage]}
storage_mgmt_virtual_ip: {get_attr: [VipMap, net_ip_map, storage_mgmt]}
@@ -957,6 +1010,9 @@ outputs:
NovaInternalVip:
description: VIP for Nova API internal endpoint
value: {get_attr: [VipMap, net_ip_map, {get_attr: [ServiceNetMap, service_net_map, NovaApiNetwork]}]}
+ OpenDaylightInternalVip:
+ description: VIP for OpenDaylight API internal endpoint
+ value: {get_attr: [VipMap, net_ip_map, {get_attr: [ServiceNetMap, service_net_map, OpenDaylightApiNetwork]}]}
SaharaInternalVip:
description: VIP for Sahara API internal endpoint
value: {get_attr: [VipMap, net_ip_map, {get_attr: [ServiceNetMap, service_net_map, SaharaApiNetwork]}]}