summaryrefslogtreecommitdiffstats
path: root/overcloud.yaml
diff options
context:
space:
mode:
Diffstat (limited to 'overcloud.yaml')
-rw-r--r--overcloud.yaml100
1 files changed, 68 insertions, 32 deletions
diff --git a/overcloud.yaml b/overcloud.yaml
index 67636182..fe82bfd5 100644
--- a/overcloud.yaml
+++ b/overcloud.yaml
@@ -13,7 +13,6 @@ parameters:
# Common parameters (not specific to a role)
AdminPassword:
- default: unset
description: The password for the keystone admin account, used for monitoring, querying neutron etc.
type: string
hidden: true
@@ -22,12 +21,10 @@ parameters:
description: The ceilometer backend type.
type: string
CeilometerMeteringSecret:
- default: unset
description: Secret shared by the ceilometer services.
type: string
hidden: true
CeilometerPassword:
- default: unset
description: The password for the ceilometer service account.
type: string
hidden: true
@@ -93,7 +90,7 @@ parameters:
type: string
KeyName:
default: default
- description: Name of an existing EC2 KeyPair to enable SSH access to the instances
+ description: Name of an existing Nova key pair to enable SSH access to the instances
type: string
constraints:
- custom_constraint: nova.keypair
@@ -109,7 +106,7 @@ parameters:
to create provider networks (and we use this for the default floating
network) - if changing this either use different post-install network
scripts or be sure to keep 'datacentre' as a mapping network name.
- type: string
+ type: comma_delimited_list
default: "datacentre:br-ex"
NeutronControlPlaneID:
default: 'ctlplane'
@@ -128,17 +125,16 @@ parameters:
Enable/disable the L2 population feature in the Neutron agents.
default: "False"
NeutronFlatNetworks:
- type: string
+ type: comma_delimited_list
default: 'datacentre'
description: >
If set, flat networks to configure in neutron plugins. Defaults to
'datacentre' to permit external network creation.
NeutronNetworkType:
default: 'vxlan'
- description: The tenant network type for Neutron, either gre or vxlan.
- type: string
+ description: The tenant network type for Neutron.
+ type: comma_delimited_list
NeutronPassword:
- default: unset
description: The password for the neutron service account, used by neutron agents.
type: string
hidden: true
@@ -169,16 +165,14 @@ parameters:
description: Whether to configure Neutron Distributed Virtual Routers
type: string
NeutronMetadataProxySharedSecret:
- default: 'unset'
description: Shared secret to prevent spoofing
type: string
hidden: true
NeutronTunnelTypes:
default: 'vxlan'
description: |
- The tunnel types for the Neutron tenant network. To specify multiple
- values, use a comma separated string, like so: 'gre,vxlan'
- type: string
+ The tunnel types for the Neutron tenant network.
+ type: comma_delimited_list
NeutronTunnelIdRanges:
description: |
Comma-separated list of <tun_min>:<tun_max> tuples enumerating ranges
@@ -211,9 +205,8 @@ parameters:
NeutronMechanismDrivers:
default: 'openvswitch'
description: |
- The mechanism drivers for the Neutron tenant network. To specify multiple
- values, use a comma separated string, like so: 'openvswitch,l2_population'
- type: string
+ The mechanism drivers for the Neutron tenant network.
+ type: comma_delimited_list
NeutronAllowL3AgentFailover:
default: 'False'
description: Allow automatic l3-agent failover
@@ -227,7 +220,6 @@ parameters:
default: 1
description: The number of neutron dhcp agents to schedule per network
NovaPassword:
- default: unset
description: The password for the nova service account, used by nova-api.
type: string
hidden: true
@@ -279,7 +271,6 @@ parameters:
description: The user name for SNMPd with readonly rights running on all Overcloud nodes
type: string
SnmpdReadonlyUserPassword:
- default: unset
description: The user password for SNMPd with readonly rights running on all Overcloud nodes
type: string
hidden: true
@@ -289,10 +280,15 @@ parameters:
description: >
The DNS domain used for the hosts. This should match the dhcp_domain
configured in the Undercloud neutron. Defaults to localdomain.
+ ServerMetadata:
+ default: {}
+ description: >
+ Extra properties or metadata passed to Nova for the created nodes in
+ the overcloud. It's accessible via the Nova metadata API.
+ type: json
# Controller-specific params
AdminToken:
- default: unset
description: The keystone auth secret.
type: string
hidden: true
@@ -313,7 +309,6 @@ parameters:
CinderEnableNfsBackend is true.
type: comma_delimited_list
CinderPassword:
- default: unset
description: The password for the cinder service account, used by cinder-api.
type: string
hidden: true
@@ -362,6 +357,10 @@ parameters:
default: true
description: Whether to enable Swift Storage on the Controller
type: boolean
+ ControllerSchedulerHints:
+ type: json
+ description: Optional scheduler hints to pass to nova
+ default: {}
ExtraConfig:
default: {}
description: |
@@ -410,7 +409,6 @@ parameters:
type: string
default: noop
GlancePassword:
- default: unset
description: The password for the glance service account, used by the glance services.
type: string
hidden: true
@@ -422,15 +420,17 @@ parameters:
constraints:
- allowed_values: ['swift', 'file', 'rbd']
HeatPassword:
- default: unset
description: The password for the Heat service account, used by the Heat services.
type: string
hidden: true
HeatStackDomainAdminPassword:
description: Password for heat_domain_admin user.
type: string
- default: ''
hidden: true
+ InstanceNameTemplate:
+ default: 'instance-%08x'
+ description: Template string to be used to generate instance names
+ type: string
KeystoneCACertificate:
default: ''
description: Keystone self-signed certificate authority certificate.
@@ -505,12 +505,10 @@ parameters:
This should be int_public when a VLAN is being used.
type: string
SwiftHashSuffix:
- default: unset
description: A random string to be used as a salt when hashing to determine mappings in the ring.
type: string
hidden: true
SwiftPassword:
- default: unset
description: The password for the swift service account, used by the swift proxy services.
type: string
hidden: true
@@ -575,6 +573,10 @@ parameters:
default: ''
description: Libvirt VIF driver configuration for the network
type: string
+ NovaComputeSchedulerHints:
+ type: json
+ description: Optional scheduler hints to pass to nova
+ default: {}
NovaEnableRbdBackend:
default: false
description: Whether to enable or not the Rbd backend for Nova
@@ -649,6 +651,11 @@ parameters:
BlockStorage specific configuration to inject into the cluster. Same
structure as ExtraConfig.
type: json
+ BlockStorageSchedulerHints:
+ type: json
+ description: Optional scheduler hints to pass to nova
+ default: {}
+
# Object storage specific parameters
ObjectStorageCount:
@@ -668,7 +675,10 @@ parameters:
ObjectStorage specific configuration to inject into the cluster. Same
structure as ExtraConfig.
type: json
-
+ ObjectStorageSchedulerHints:
+ type: json
+ description: Optional scheduler hints to pass to nova
+ default: {}
# Ceph storage specific parameters
CephStorageCount:
@@ -689,6 +699,11 @@ parameters:
CephStorage specific configuration to inject into the cluster. Same
structure as ExtraConfig.
type: json
+ CephStorageSchedulerHints:
+ type: json
+ description: Optional scheduler hints to pass to nova
+ default: {}
+
# Hostname format for each role
# Note %index% is translated into the index of the node, e.g 0/1/2 etc
@@ -844,6 +859,7 @@ resources:
HorizonSecret: {get_resource: HorizonSecret}
Image: {get_param: controllerImage}
ImageUpdatePolicy: {get_param: ImageUpdatePolicy}
+ InstanceNameTemplate: {get_param: InstanceNameTemplate}
KeyName: {get_param: KeyName}
KeystoneCACertificate: {get_param: KeystoneCACertificate}
KeystoneSigningCertificate: {get_param: KeystoneSigningCertificate}
@@ -924,6 +940,8 @@ resources:
params:
'%stackname%': {get_param: 'OS::stack_name'}
NodeIndex: '%index%'
+ ServerMetadata: {get_param: ServerMetadata}
+ SchedulerHints: {get_param: ControllerSchedulerHints}
Compute:
type: OS::Heat::ResourceGroup
@@ -998,6 +1016,8 @@ resources:
params:
'%stackname%': {get_param: 'OS::stack_name'}
CloudDomain: {get_param: CloudDomain}
+ ServerMetadata: {get_param: ServerMetadata}
+ SchedulerHints: {get_param: NovaComputeSchedulerHints}
BlockStorage:
type: OS::Heat::ResourceGroup
@@ -1036,6 +1056,8 @@ resources:
ExtraConfig: {get_param: ExtraConfig}
BlockStorageExtraConfig: {get_param: BlockStorageExtraConfig}
CloudDomain: {get_param: CloudDomain}
+ ServerMetadata: {get_param: ServerMetadata}
+ SchedulerHints: {get_param: BlockStorageSchedulerHints}
ObjectStorage:
type: OS::Heat::ResourceGroup
@@ -1065,6 +1087,8 @@ resources:
ExtraConfig: {get_param: ExtraConfig}
ObjectStorageExtraConfig: {get_param: ObjectStorageExtraConfig}
CloudDomain: {get_param: CloudDomain}
+ ServerMetadata: {get_param: ServerMetadata}
+ SchedulerHints: {get_param: ObjectStorageSchedulerHints}
CephStorage:
type: OS::Heat::ResourceGroup
@@ -1089,6 +1113,8 @@ resources:
ExtraConfig: {get_param: ExtraConfig}
CephStorageExtraConfig: {get_param: CephStorageExtraConfig}
CloudDomain: {get_param: CloudDomain}
+ ServerMetadata: {get_param: ServerMetadata}
+ SchedulerHints: {get_param: CephStorageSchedulerHints}
ControllerIpListMap:
type: OS::TripleO::Network::Ports::NetIpListMap
@@ -1099,6 +1125,7 @@ resources:
StorageIpList: {get_attr: [Controller, storage_ip_address]}
StorageMgmtIpList: {get_attr: [Controller, storage_mgmt_ip_address]}
TenantIpList: {get_attr: [Controller, tenant_ip_address]}
+ ManagementIpList: {get_attr: [Controller, management_ip_address]}
allNodesConfig:
type: OS::TripleO::AllNodes::SoftwareConfig
@@ -1127,6 +1154,8 @@ resources:
neutron_api_node_ips: {get_attr: [ControllerIpListMap, net_ip_map, {get_param: [ServiceNetMap, NeutronApiNetwork]}]}
keystone_public_api_node_ips: {get_attr: [ControllerIpListMap, net_ip_map, {get_param: [ServiceNetMap, KeystonePublicApiNetwork]}]}
keystone_admin_api_node_ips: {get_attr: [ControllerIpListMap, net_ip_map, {get_param: [ServiceNetMap, KeystoneAdminApiNetwork]}]}
+ DeployIdentifier: {get_param: DeployIdentifier}
+ UpdateIdentifier: {get_param: UpdateIdentifier}
MysqlRootPassword:
type: OS::Heat::RandomString
@@ -1159,17 +1188,18 @@ resources:
RedisVirtualIP:
depends_on: Networks
- type: OS::TripleO::Controller::Ports::RedisVipPort
+ type: OS::TripleO::Network::Ports::RedisVipPort
properties:
ControlPlaneIP: {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]}
ControlPlaneNetwork: {get_param: NeutronControlPlaneID}
PortName: redis_virtual_ip
NetworkName: {get_param: [ServiceNetMap, RedisNetwork]}
+ ServiceName: redis
# The public VIP is on the External net, falls back to ctlplane
PublicVirtualIP:
depends_on: Networks
- type: OS::TripleO::Controller::Ports::ExternalPort
+ type: OS::TripleO::Network::Ports::ExternalVipPort
properties:
ControlPlaneIP: {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]}
ControlPlaneNetwork: {get_param: NeutronControlPlaneID}
@@ -1178,21 +1208,21 @@ resources:
InternalApiVirtualIP:
depends_on: Networks
- type: OS::TripleO::Controller::Ports::InternalApiPort
+ type: OS::TripleO::Network::Ports::InternalApiVipPort
properties:
ControlPlaneIP: {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]}
PortName: internal_api_virtual_ip
StorageVirtualIP:
depends_on: Networks
- type: OS::TripleO::Controller::Ports::StoragePort
+ type: OS::TripleO::Network::Ports::StorageVipPort
properties:
ControlPlaneIP: {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]}
PortName: storage_virtual_ip
StorageMgmtVirtualIP:
depends_on: Networks
- type: OS::TripleO::Controller::Ports::StorageMgmtPort
+ type: OS::TripleO::Network::Ports::StorageMgmtVipPort
properties:
ControlPlaneIP: {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]}
PortName: storage_management_virtual_ip
@@ -1205,7 +1235,7 @@ resources:
InternalApiIp: {get_attr: [InternalApiVirtualIP, ip_address]}
StorageIp: {get_attr: [StorageVirtualIP, ip_address]}
StorageMgmtIp: {get_attr: [StorageMgmtVirtualIP, ip_address]}
- # No tenant VIP required
+ # No tenant or management VIP required
VipConfig:
type: OS::TripleO::VipConfig
@@ -1496,3 +1526,9 @@ outputs:
SwiftInternalVip:
description: VIP for Swift Proxy internal endpoint
value: {get_attr: [VipMap, net_ip_map, {get_param: [ServiceNetMap, SwiftProxyNetwork]}]}
+ HostsEntry:
+ description: |
+ The content that should be appended to your /etc/hosts if you want to get
+ hostname-based access to the deployed nodes (useful for testing without
+ setting up a DNS).
+ value: {get_attr: [allNodesConfig, hosts_entries]}