1 heat_template_version: 2015-10-15
4 OpenStack hypervisor node configured via Puppet.
8 description: The password for the keystone admin account, used for monitoring, querying neutron etc.
11 CeilometerComputeAgent:
12 description: Indicates whether the Compute agent is present and expects nova-compute to be configured accordingly
16 - allowed_values: ['', Present]
17 CeilometerMeteringSecret:
18 description: Secret shared by the ceilometer services.
22 description: The password for the ceilometer service account.
25 CinderEnableNfsBackend:
27 description: Whether to enable or not the NFS backend for Cinder
29 CinderEnableRbdBackend:
31 description: Whether to enable or not the Rbd backend for Cinder
35 description: Set to True to enable debugging on all services.
40 Additional hiera configuration to inject into the cluster. Note
41 that NovaComputeExtraConfig takes precedence over ExtraConfig.
44 description: Flavor for the nova compute node
47 - custom_constraint: nova.flavor
50 default: '' # Has to be here because of the ignored empty value bug
53 default: overcloud-compute
55 - custom_constraint: glance.image
57 default: 'REBUILD_PRESERVE_EPHEMERAL'
58 description: What policy to use when reconstructing instances. REBUILD for rebuilds, REBUILD_PRESERVE_EPHEMERAL to preserve /mnt.
61 description: Name of an existing Nova key pair to enable SSH access to the instances
65 - custom_constraint: nova.keypair
66 KeystoneAdminApiVirtualIP:
69 KeystonePublicApiVirtualIP:
72 NeutronBridgeMappings:
74 The OVS logical->physical bridge mappings to use. See the Neutron
75 documentation for details. Defaults to mapping br-ex - the external
76 bridge on hosts - to a physical name 'datacentre' which can be used
77 to create provider networks (and we use this for the default floating
78 network) - if changing this either use different post-install network
79 scripts or be sure to keep 'datacentre' as a mapping network name.
80 type: comma_delimited_list
81 default: "datacentre:br-ex"
82 NeutronEnableTunnelling:
88 Enable/disable the L2 population feature in the Neutron agents.
91 type: comma_delimited_list
94 If set, flat networks to configure in neutron plugins.
97 default: '' # Has to be here because of the ignored empty value bug
99 type: comma_delimited_list
100 description: The tenant network type for Neutron.
102 NeutronNetworkVLANRanges:
103 default: 'datacentre:1:1000'
105 The Neutron ML2 and OpenVSwitch vlan mapping range to support. See the
106 Neutron documentation for permitted values. Defaults to permitting any
107 VLAN on the 'datacentre' physical network (See NeutronBridgeMappings).
108 type: comma_delimited_list
110 description: The password for the neutron service account, used by neutron agents.
113 NeutronPhysicalBridge:
115 description: An OVS bridge to create for accessing external networks.
117 NeutronPublicInterface:
119 description: A port to add to the NeutronPhysicalBridge.
123 The default MTU for tenant networks. For VXLAN/GRE tunneling, this should
124 be at least 50 bytes smaller than the MTU on the physical network. This
125 value will be used to set the MTU on the virtual Ethernet device.
126 This number is related to the value of NeutronDnsmasqOptions, since that
127 will determine the MTU that is assigned to the VM host through DHCP.
131 type: comma_delimited_list
133 The tunnel types for the Neutron tenant network.
135 NeutronTunnelIdRanges:
137 Comma-separated list of <tun_min>:<tun_max> tuples enumerating ranges
138 of GRE tunnel IDs that are available for tenant network allocation
139 default: ["1:4094", ]
140 type: comma_delimited_list
143 Comma-separated list of <vni_min>:<vni_max> tuples enumerating ranges
144 of VXLAN VNI IDs that are available for tenant network allocation
145 default: ["1:4094", ]
146 type: comma_delimited_list
147 NeutronPublicInterfaceRawDevice:
153 NeutronMetadataProxySharedSecret:
154 description: Shared secret to prevent spoofing
160 The core plugin for Neutron. The value should be the entrypoint to be loaded
161 from neutron.core_plugins namespace.
163 NeutronServicePlugins:
164 default: "router,qos"
166 Comma-separated list of service plugin entrypoints to be loaded from the
167 neutron.service_plugins namespace.
168 type: comma_delimited_list
170 default: "vxlan,vlan,flat,gre"
172 Comma-separated list of network type driver entrypoints to be loaded.
173 type: comma_delimited_list
174 NeutronMechanismDrivers:
175 default: 'openvswitch'
177 The mechanism drivers for the Neutron tenant network.
178 type: comma_delimited_list
179 NeutronAgentExtensions:
182 Comma-separated list of extensions enabled for the Neutron agents.
183 type: comma_delimited_list
184 # Not relevant for Computes, should be removed
185 NeutronAllowL3AgentFailover:
187 description: Allow automatic l3-agent failover
189 # Not relevant for Computes, should be removed
192 description: Whether to enable l3-agent HA
196 description: Agent mode for the neutron-l3-agent on the controller hosts
200 default: '' # Has to be here because of the ignored empty value bug
203 default: libvirt.LibvirtDriver
204 NovaComputeExtraConfig:
207 NovaCompute specific configuration to inject into the cluster. Same
208 structure as ExtraConfig.
210 NovaComputeLibvirtType:
213 NovaComputeLibvirtVifDriver:
215 description: Libvirt VIF driver configuration for the network
217 NovaEnableRbdBackend:
219 description: Whether to enable or not the Rbd backend for Nova
222 description: The password for the nova service account, used by nova-api.
227 default: '' # Has to be here because of the ignored empty value bug
230 description: Name of integration bridge used by Open vSwitch
232 NovaSecurityGroupAPI:
234 description: The full class name of the security API class
238 description: Comma-separated list of ntp servers
239 type: comma_delimited_list
242 default: '' # Has to be here because of the ignored empty value bug
245 description: The password for RabbitMQ
250 description: The username for RabbitMQ
255 Rabbit client subscriber parameter to specify
256 an SSL connection to the RabbitMQ host.
260 description: Set rabbit subscriber port, change this if using SSL
262 SnmpdReadonlyUserName:
263 default: ro_snmp_user
264 description: The user name for SNMPd with readonly rights running on all Overcloud nodes
266 SnmpdReadonlyUserPassword:
267 description: The user password for SNMPd with readonly rights running on all Overcloud nodes
270 UpgradeLevelNovaCompute:
272 description: Nova Compute upgrade level
274 EnablePackageInstall:
276 description: Set to true to enable package installation via Puppet
280 description: Mapping of service_name -> network name. Typically set
281 via parameter_defaults in the resource registry.
285 description: Mapping of service endpoint -> protocol. Typically set
286 via parameter_defaults in the resource registry.
290 description: The timezone to be set on compute nodes.
296 Setting to a previously unused value during stack-update will trigger
297 package update on all nodes
300 default: '' # Defaults to Heat created hostname
304 description: Optional mapping to override hostnames
305 NetworkDeploymentActions:
306 type: comma_delimited_list
308 Heat action when to apply network configuration changes
310 SoftwareConfigTransport:
311 default: POLL_SERVER_CFN
313 How the server should receive the metadata required for software configuration.
316 - allowed_values: [POLL_SERVER_CFN, POLL_SERVER_HEAT, POLL_TEMP_URL, ZAQAR_MESSAGE]
321 The DNS domain used for the hosts. This should match the dhcp_domain
322 configured in the Undercloud neutron. Defaults to localdomain.
326 Extra properties or metadata passed to Nova for the created nodes in
327 the overcloud. It's accessible via the Nova metadata API.
331 description: Optional scheduler hints to pass to nova
337 type: OS::Nova::Server
342 get_param: ImageUpdatePolicy
343 flavor: {get_param: Flavor}
344 key_name: {get_param: KeyName}
347 user_data_format: SOFTWARE_CONFIG
348 user_data: {get_resource: UserData}
351 template: {get_param: Hostname}
352 params: {get_param: HostnameMap}
353 software_config_transport: {get_param: SoftwareConfigTransport}
354 metadata: {get_param: ServerMetadata}
355 scheduler_hints: {get_param: SchedulerHints}
357 # Combine the NodeAdminUserData and NodeUserData mime archives
359 type: OS::Heat::MultipartMime
362 - config: {get_resource: NodeAdminUserData}
364 - config: {get_resource: NodeUserData}
367 # Creates the "heat-admin" user if configured via the environment
368 # Should return a OS::Heat::MultipartMime reference via OS::stack_id
370 type: OS::TripleO::NodeAdminUserData
372 # For optional operator additional userdata
373 # Should return a OS::Heat::MultipartMime reference via OS::stack_id
375 type: OS::TripleO::NodeUserData
378 type: OS::TripleO::Compute::Ports::ExternalPort
380 ControlPlaneIP: {get_attr: [NovaCompute, networks, ctlplane, 0]}
383 type: OS::TripleO::Compute::Ports::InternalApiPort
385 ControlPlaneIP: {get_attr: [NovaCompute, networks, ctlplane, 0]}
388 type: OS::TripleO::Compute::Ports::StoragePort
390 ControlPlaneIP: {get_attr: [NovaCompute, networks, ctlplane, 0]}
393 type: OS::TripleO::Compute::Ports::StorageMgmtPort
395 ControlPlaneIP: {get_attr: [NovaCompute, networks, ctlplane, 0]}
398 type: OS::TripleO::Compute::Ports::TenantPort
400 ControlPlaneIP: {get_attr: [NovaCompute, networks, ctlplane, 0]}
403 type: OS::TripleO::Compute::Ports::ManagementPort
405 ControlPlaneIP: {get_attr: [NovaCompute, networks, ctlplane, 0]}
408 type: OS::TripleO::Network::Ports::NetIpMap
410 ControlPlaneIp: {get_attr: [NovaCompute, networks, ctlplane, 0]}
411 ExternalIp: {get_attr: [ExternalPort, ip_address]}
412 ExternalIpUri: {get_attr: [ExternalPort, ip_address_uri]}
413 InternalApiIp: {get_attr: [InternalApiPort, ip_address]}
414 InternalApiIpUri: {get_attr: [InternalApiPort, ip_address_uri]}
415 StorageIp: {get_attr: [StoragePort, ip_address]}
416 StorageIpUri: {get_attr: [StoragePort, ip_address_uri]}
417 StorageMgmtIp: {get_attr: [StorageMgmtPort, ip_address]}
418 StorageMgmtIpUri: {get_attr: [StorageMgmtPort, ip_address_uri]}
419 TenantIp: {get_attr: [TenantPort, ip_address]}
420 TenantIpUri: {get_attr: [TenantPort, ip_address_uri]}
421 ManagementIp: {get_attr: [ManagementPort, ip_address]}
422 ManagementIpUri: {get_attr: [ManagementPort, ip_address_uri]}
425 type: OS::TripleO::Compute::Net::SoftwareConfig
427 ControlPlaneIp: {get_attr: [NovaCompute, networks, ctlplane, 0]}
428 ExternalIpSubnet: {get_attr: [ExternalPort, ip_subnet]}
429 InternalApiIpSubnet: {get_attr: [InternalApiPort, ip_subnet]}
430 StorageIpSubnet: {get_attr: [StoragePort, ip_subnet]}
431 StorageMgmtIpSubnet: {get_attr: [StorageMgmtPort, ip_subnet]}
432 TenantIpSubnet: {get_attr: [TenantPort, ip_subnet]}
433 ManagementIpSubnet: {get_attr: [ManagementPort, ip_subnet]}
436 type: OS::TripleO::SoftwareDeployment
438 name: NetworkDeployment
439 config: {get_resource: NetworkConfig}
440 server: {get_resource: NovaCompute}
441 actions: {get_param: NetworkDeploymentActions}
443 bridge_name: {get_param: NeutronPhysicalBridge}
444 interface_name: {get_param: NeutronPublicInterface}
447 type: OS::Heat::StructuredConfig
449 group: os-apply-config
454 - heat_config_%{::deploy_config_name}
455 - compute_extraconfig
458 - ceph_cluster # provided by CephClusterConfig
460 - all_nodes # provided by allNodesConfig
463 - neutron_bigswitch_data # Optionally provided by ComputeExtraConfigPre
464 - cisco_n1kv_data # Optionally provided by ComputeExtraConfigPre
465 - nova_nuage_data # Optionally provided by ComputeExtraConfigPre
466 - midonet_data # Optionally provided by AllNodesExtraConfig
467 - neutron_opencontrail_data # Optionally provided by ComputeExtraConfigPre
470 mapped_data: {get_param: NovaComputeExtraConfig}
472 mapped_data: {get_param: ExtraConfig}
474 raw_data: {get_file: hieradata/common.yaml}
476 raw_data: {get_file: hieradata/ceph.yaml}
478 raw_data: {get_file: hieradata/compute.yaml}
480 cinder_enable_nfs_backend: {get_input: cinder_enable_nfs_backend}
481 nova::debug: {get_input: debug}
482 nova::rabbit_userid: {get_input: rabbit_username}
483 nova::rabbit_password: {get_input: rabbit_password}
484 nova::rabbit_use_ssl: {get_input: rabbit_client_use_ssl}
485 nova::rabbit_port: {get_input: rabbit_client_port}
486 nova::upgrade_level_compute: {get_input: upgrade_level_nova_compute}
487 nova_compute_driver: {get_input: nova_compute_driver}
488 nova::compute::libvirt::libvirt_virt_type: {get_input: nova_compute_libvirt_type}
489 nova::compute::neutron::libvirt_vif_driver: {get_input: nova_compute_libvirt_vif_driver}
490 nova_api_host: {get_input: nova_api_host}
491 nova::compute::vncproxy_host: {get_input: nova_public_ip}
492 nova::compute::rbd::ephemeral_storage: {get_input: nova_enable_rbd_backend}
493 rbd_persistent_storage: {get_input: cinder_enable_rbd_backend}
494 nova_password: {get_input: nova_password}
495 nova::compute::network_device_mtu: {get_input: neutron_tenant_mtu}
496 nova::compute::vncserver_proxyclient_address: {get_input: nova_vnc_proxyclient_address}
497 nova::vncproxy::common::vncproxy_protocol: {get_input: nova_vncproxy_protocol}
498 nova::vncproxy::common::vncproxy_host: {get_input: nova_vncproxy_host}
499 nova::vncproxy::common::vncproxy_port: {get_input: nova_vncproxy_port}
500 nova::network::neutron::neutron_ovs_bridge: {get_input: nova_ovs_bridge}
501 nova::network::neutron::security_group_api: {get_input: nova_security_group_api}
502 ceilometer::debug: {get_input: debug}
503 ceilometer::rabbit_userid: {get_input: rabbit_username}
504 ceilometer::rabbit_password: {get_input: rabbit_password}
505 ceilometer::rabbit_use_ssl: {get_input: rabbit_client_use_ssl}
506 ceilometer::rabbit_port: {get_input: rabbit_client_port}
507 ceilometer::metering_secret: {get_input: ceilometer_metering_secret}
508 ceilometer::agent::auth::auth_password: {get_input: ceilometer_password}
509 ceilometer::agent::auth::auth_url: {get_input: ceilometer_agent_auth_url}
510 ceilometer_compute_agent: {get_input: ceilometer_compute_agent}
511 snmpd_readonly_user_name: {get_input: snmpd_readonly_user_name}
512 snmpd_readonly_user_password: {get_input: snmpd_readonly_user_password}
513 nova::glance_api_servers: {get_input: glance_api_servers}
514 neutron::debug: {get_input: debug}
515 neutron::rabbit_password: {get_input: rabbit_password}
516 neutron::rabbit_user: {get_input: rabbit_username}
517 neutron::rabbit_use_ssl: {get_input: rabbit_client_use_ssl}
518 neutron::rabbit_port: {get_input: rabbit_client_port}
519 neutron::plugins::ml2::flat_networks: {get_input: neutron_flat_networks}
520 neutron_host: {get_input: neutron_host}
521 neutron::agents::ml2::ovs::local_ip: {get_input: neutron_local_ip}
523 neutron::network_device_mtu: {get_input: neutron_tenant_mtu}
524 neutron::plugins::ml2::tenant_network_types: {get_input: neutron_tenant_network_types}
525 neutron::agents::ml2::ovs::tunnel_types: {get_input: neutron_tunnel_types}
526 neutron::agents::ml2::ovs::extensions: {get_input: neutron_agent_extensions}
527 neutron::plugins::ml2::network_vlan_ranges: {get_input: neutron_network_vlan_ranges}
528 neutron::plugins::ml2::tunnel_id_ranges: {get_input: neutron_tunnel_id_ranges}
529 neutron::plugins::ml2::vni_ranges: {get_input: neutron_vni_ranges}
530 neutron::agents::ml2::ovs::bridge_mappings: {get_input: neutron_bridge_mappings}
531 neutron::agents::ml2::ovs::enable_tunneling: {get_input: neutron_enable_tunneling}
532 neutron::agents::ml2::ovs::l2_population: {get_input: neutron_enable_l2pop}
533 neutron_physical_bridge: {get_input: neutron_physical_bridge}
534 neutron_public_interface: {get_input: neutron_public_interface}
535 nova::network::neutron::neutron_password: {get_input: neutron_password}
536 nova::network::neutron::neutron_url: {get_input: neutron_internal_url}
537 nova::network::neutron::neutron_auth_url: {get_input: neutron_auth_url}
538 neutron_router_distributed: {get_input: neutron_router_distributed}
539 neutron_agent_mode: {get_input: neutron_agent_mode}
540 neutron_metadata_proxy_shared_secret: {get_input: neutron_metadata_proxy_shared_secret}
541 neutron::core_plugin: {get_input: neutron_core_plugin}
542 neutron::service_plugins: {get_input: neutron_service_plugins}
543 neutron::plugins::ml2::type_drivers: {get_input: neutron_type_drivers}
544 neutron::plugins::ml2::mechanism_drivers: {get_input: neutron_mechanism_drivers}
545 neutron_public_interface_raw_device: {get_input: neutron_public_interface_raw_device}
546 keystone_public_api_virtual_ip: {get_input: keystone_vip}
547 admin_password: {get_input: admin_password}
548 ntp::servers: {get_input: ntp_servers}
549 timezone::timezone: {get_input: timezone}
550 tripleo::packages::enable_install: {get_input: enable_package_install}
551 tripleo::packages::enable_upgrade: {get_input: enable_package_upgrade}
553 NovaComputeDeployment:
554 type: OS::TripleO::SoftwareDeployment
555 depends_on: NetworkDeployment
557 name: NovaComputeDeployment
558 config: {get_resource: NovaComputeConfig}
559 server: {get_resource: NovaCompute}
561 cinder_enable_nfs_backend: {get_param: CinderEnableNfsBackend}
562 debug: {get_param: Debug}
563 nova_compute_driver: {get_param: NovaComputeDriver}
564 nova_compute_libvirt_type: {get_param: NovaComputeLibvirtType}
565 nova_compute_libvirt_vif_driver: {get_param: NovaComputeLibvirtVifDriver}
566 nova_public_ip: {get_param: NovaPublicIP}
567 nova_api_host: {get_param: NovaApiHost}
568 nova_password: {get_param: NovaPassword}
569 nova_enable_rbd_backend: {get_param: NovaEnableRbdBackend}
570 cinder_enable_rbd_backend: {get_param: CinderEnableRbdBackend}
571 nova_vnc_proxyclient_address: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, NovaVncProxyNetwork]}]}
572 nova_vncproxy_protocol: {get_param: [EndpointMap, NovaVNCProxyPublic, protocol]}
573 nova_vncproxy_host: {get_param: [EndpointMap, NovaVNCProxyPublic, host]}
574 nova_vncproxy_port: {get_param: [EndpointMap, NovaVNCProxyPublic, port]}
575 nova_ovs_bridge: {get_param: NovaOVSBridge}
576 nova_security_group_api: {get_param: NovaSecurityGroupAPI}
577 upgrade_level_nova_compute: {get_param: UpgradeLevelNovaCompute}
578 ceilometer_metering_secret: {get_param: CeilometerMeteringSecret}
579 ceilometer_password: {get_param: CeilometerPassword}
580 ceilometer_compute_agent: {get_param: CeilometerComputeAgent}
581 ceilometer_agent_auth_url: {get_param: [EndpointMap, KeystoneInternal, uri]}
582 snmpd_readonly_user_name: {get_param: SnmpdReadonlyUserName}
583 snmpd_readonly_user_password: {get_param: SnmpdReadonlyUserPassword}
584 glance_api_servers: {get_param: [EndpointMap, GlanceInternal, uri]}
585 neutron_flat_networks:
589 NETWORKS: {get_param: NeutronFlatNetworks}
590 neutron_host: {get_param: NeutronHost}
591 neutron_local_ip: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, NeutronTenantNetwork]}]}
592 neutron_tunnel_id_ranges:
596 RANGES: {get_param: NeutronTunnelIdRanges}
601 RANGES: {get_param: NeutronVniRanges}
602 neutron_tenant_network_types:
606 TYPES: {get_param: NeutronNetworkType}
607 neutron_tunnel_types:
611 TYPES: {get_param: NeutronTunnelTypes}
612 neutron_network_vlan_ranges:
616 RANGES: {get_param: NeutronNetworkVLANRanges}
617 neutron_bridge_mappings:
621 MAPPINGS: {get_param: NeutronBridgeMappings}
622 neutron_tenant_mtu: {get_param: NeutronTenantMtu}
623 neutron_enable_tunneling: {get_param: NeutronEnableTunnelling}
624 neutron_enable_l2pop: {get_param: NeutronEnableL2Pop}
625 neutron_physical_bridge: {get_param: NeutronPhysicalBridge}
626 neutron_public_interface: {get_param: NeutronPublicInterface}
627 neutron_password: {get_param: NeutronPassword}
628 neutron_agent_mode: {get_param: NeutronAgentMode}
629 neutron_router_distributed: {get_param: NeutronDVR}
630 neutron_metadata_proxy_shared_secret: {get_param: NeutronMetadataProxySharedSecret}
631 neutron_core_plugin: {get_param: NeutronCorePlugin}
632 neutron_service_plugins:
636 PLUGINS: {get_param: NeutronServicePlugins}
637 neutron_type_drivers:
641 DRIVERS: {get_param: NeutronTypeDrivers}
642 neutron_mechanism_drivers:
646 MECHANISMS: {get_param: NeutronMechanismDrivers}
647 neutron_agent_extensions:
649 template: AGENT_EXTENSIONS
651 AGENT_EXTENSIONS: {get_param: NeutronAgentExtensions}
652 neutron_public_interface_raw_device: {get_param: NeutronPublicInterfaceRawDevice}
653 neutron_internal_url: {get_param: [EndpointMap, NeutronInternal, uri]}
654 neutron_auth_url: {get_param: [EndpointMap, KeystoneV3Admin, uri]}
655 keystone_vip: {get_param: KeystonePublicApiVirtualIP}
656 admin_password: {get_param: AdminPassword}
657 rabbit_username: {get_param: RabbitUserName}
658 rabbit_password: {get_param: RabbitPassword}
659 rabbit_client_use_ssl: {get_param: RabbitClientUseSSL}
660 rabbit_client_port: {get_param: RabbitClientPort}
661 ntp_servers: {get_param: NtpServer}
662 timezone: {get_param: TimeZone}
663 enable_package_install: {get_param: EnablePackageInstall}
664 enable_package_upgrade: {get_attr: [UpdateDeployment, update_managed_packages]}
666 # Resource for site-specific injection of root certificate
668 depends_on: NovaComputeDeployment
669 type: OS::TripleO::NodeTLSCAData
671 server: {get_resource: NovaCompute}
673 # Hook for site-specific additional pre-deployment config, e.g extra hieradata
674 ComputeExtraConfigPre:
675 depends_on: NovaComputeDeployment
676 type: OS::TripleO::ComputeExtraConfigPre
678 server: {get_resource: NovaCompute}
680 # Hook for site-specific additional pre-deployment config,
681 # applying to all nodes, e.g node registration/unregistration
683 depends_on: [ComputeExtraConfigPre, NodeTLSCAData]
684 type: OS::TripleO::NodeExtraConfig
686 server: {get_resource: NovaCompute}
689 type: OS::TripleO::Tasks::PackageUpdate
692 type: OS::Heat::SoftwareDeployment
694 name: UpdateDeployment
695 config: {get_resource: UpdateConfig}
696 server: {get_resource: NovaCompute}
699 get_param: UpdateIdentifier
703 description: IP address of the server in the ctlplane network
704 value: {get_attr: [NovaCompute, networks, ctlplane, 0]}
706 description: IP address of the server in the external network
707 value: {get_attr: [ExternalPort, ip_address]}
708 internal_api_ip_address:
709 description: IP address of the server in the internal_api network
710 value: {get_attr: [InternalApiPort, ip_address]}
712 description: IP address of the server in the storage network
713 value: {get_attr: [StoragePort, ip_address]}
714 storage_mgmt_ip_address:
715 description: IP address of the server in the storage_mgmt network
716 value: {get_attr: [StorageMgmtPort, ip_address]}
718 description: IP address of the server in the tenant network
719 value: {get_attr: [TenantPort, ip_address]}
720 management_ip_address:
721 description: IP address of the server in the management network
722 value: {get_attr: [ManagementPort, ip_address]}
724 description: Hostname of the server
725 value: {get_attr: [NovaCompute, name]}
728 Server's IP address and hostname in the /etc/hosts format
732 PRIMARYIP PRIMARYHOST.DOMAIN PRIMARYHOST
733 EXTERNALIP EXTERNALHOST
734 INTERNAL_APIIP INTERNAL_APIHOST
735 STORAGEIP STORAGEHOST
736 STORAGE_MGMTIP STORAGE_MGMTHOST
738 MANAGEMENTIP MANAGEMENTHOST
740 PRIMARYIP: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, ComputeHostnameResolveNetwork]}]}
741 DOMAIN: {get_param: CloudDomain}
742 PRIMARYHOST: {get_attr: [NovaCompute, name]}
743 EXTERNALIP: {get_attr: [ExternalPort, ip_address]}
747 - - {get_attr: [NovaCompute, name]}
749 INTERNAL_APIIP: {get_attr: [InternalApiPort, ip_address]}
753 - - {get_attr: [NovaCompute, name]}
755 STORAGEIP: {get_attr: [StoragePort, ip_address]}
759 - - {get_attr: [NovaCompute, name]}
761 STORAGE_MGMTIP: {get_attr: [StorageMgmtPort, ip_address]}
765 - - {get_attr: [NovaCompute, name]}
767 TENANTIP: {get_attr: [TenantPort, ip_address]}
771 - - {get_attr: [NovaCompute, name]}
773 MANAGEMENTIP: {get_attr: [ManagementPort, ip_address]}
777 - - {get_attr: [NovaCompute, name]}
779 nova_server_resource:
780 description: Heat resource handle for the Nova compute server
782 {get_resource: NovaCompute}
784 description: identifier which changes if the node configuration may need re-applying
788 - - {get_attr: [NovaComputeDeployment, deploy_stdout]}
789 - {get_attr: [NodeTLSCAData, deploy_stdout]}
790 - {get_attr: [ComputeExtraConfigPre, deploy_stdout]}
791 - {get_param: UpdateIdentifier}