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
203 default: '' # Has to be here because of the ignored empty value bug
206 default: libvirt.LibvirtDriver
207 NovaComputeExtraConfig:
210 NovaCompute specific configuration to inject into the cluster. Same
211 structure as ExtraConfig.
216 NovaComputeLibvirtType:
219 NovaComputeLibvirtVifDriver:
221 description: Libvirt VIF driver configuration for the network
223 NovaEnableRbdBackend:
225 description: Whether to enable or not the Rbd backend for Nova
228 description: The password for the nova service account, used by nova-api.
233 default: '' # Has to be here because of the ignored empty value bug
236 description: Name of integration bridge used by Open vSwitch
238 NovaSecurityGroupAPI:
240 description: The full class name of the security API class
244 description: Comma-separated list of ntp servers
245 type: comma_delimited_list
248 default: '' # Has to be here because of the ignored empty value bug
251 description: The password for RabbitMQ
256 description: The username for RabbitMQ
261 Rabbit client subscriber parameter to specify
262 an SSL connection to the RabbitMQ host.
266 description: Set rabbit subscriber port, change this if using SSL
268 SnmpdReadonlyUserName:
269 default: ro_snmp_user
270 description: The user name for SNMPd with readonly rights running on all Overcloud nodes
272 SnmpdReadonlyUserPassword:
273 description: The user password for SNMPd with readonly rights running on all Overcloud nodes
276 UpgradeLevelNovaCompute:
278 description: Nova Compute upgrade level
280 EnablePackageInstall:
282 description: Set to true to enable package installation via Puppet
286 description: Mapping of service_name -> network name. Typically set
287 via parameter_defaults in the resource registry.
291 description: Mapping of service endpoint -> protocol. Typically set
292 via parameter_defaults in the resource registry.
296 description: The timezone to be set on compute nodes.
302 Setting to a previously unused value during stack-update will trigger
303 package update on all nodes
306 default: '' # Defaults to Heat created hostname
310 description: Optional mapping to override hostnames
311 NetworkDeploymentActions:
312 type: comma_delimited_list
314 Heat action when to apply network configuration changes
316 SoftwareConfigTransport:
317 default: POLL_SERVER_CFN
319 How the server should receive the metadata required for software configuration.
322 - allowed_values: [POLL_SERVER_CFN, POLL_SERVER_HEAT, POLL_TEMP_URL, ZAQAR_MESSAGE]
327 The DNS domain used for the hosts. This should match the dhcp_domain
328 configured in the Undercloud neutron. Defaults to localdomain.
332 Extra properties or metadata passed to Nova for the created nodes in
333 the overcloud. It's accessible via the Nova metadata API.
337 description: Optional scheduler hints to pass to nova
343 type: OS::Nova::Server
348 get_param: ImageUpdatePolicy
349 flavor: {get_param: Flavor}
350 key_name: {get_param: KeyName}
353 user_data_format: SOFTWARE_CONFIG
354 user_data: {get_resource: UserData}
357 template: {get_param: Hostname}
358 params: {get_param: HostnameMap}
359 software_config_transport: {get_param: SoftwareConfigTransport}
360 metadata: {get_param: ServerMetadata}
361 scheduler_hints: {get_param: SchedulerHints}
363 # Combine the NodeAdminUserData and NodeUserData mime archives
365 type: OS::Heat::MultipartMime
368 - config: {get_resource: NodeAdminUserData}
370 - config: {get_resource: NodeUserData}
373 # Creates the "heat-admin" user if configured via the environment
374 # Should return a OS::Heat::MultipartMime reference via OS::stack_id
376 type: OS::TripleO::NodeAdminUserData
378 # For optional operator additional userdata
379 # Should return a OS::Heat::MultipartMime reference via OS::stack_id
381 type: OS::TripleO::NodeUserData
384 type: OS::TripleO::Compute::Ports::ExternalPort
386 ControlPlaneIP: {get_attr: [NovaCompute, networks, ctlplane, 0]}
387 IPPool: {get_param: NovaComputeIPs}
388 NodeIndex: {get_param: NodeIndex}
391 type: OS::TripleO::Compute::Ports::InternalApiPort
393 ControlPlaneIP: {get_attr: [NovaCompute, networks, ctlplane, 0]}
394 IPPool: {get_param: NovaComputeIPs}
395 NodeIndex: {get_param: NodeIndex}
398 type: OS::TripleO::Compute::Ports::StoragePort
400 ControlPlaneIP: {get_attr: [NovaCompute, networks, ctlplane, 0]}
401 IPPool: {get_param: NovaComputeIPs}
402 NodeIndex: {get_param: NodeIndex}
405 type: OS::TripleO::Compute::Ports::StorageMgmtPort
407 ControlPlaneIP: {get_attr: [NovaCompute, networks, ctlplane, 0]}
408 IPPool: {get_param: NovaComputeIPs}
409 NodeIndex: {get_param: NodeIndex}
412 type: OS::TripleO::Compute::Ports::TenantPort
414 ControlPlaneIP: {get_attr: [NovaCompute, networks, ctlplane, 0]}
415 IPPool: {get_param: NovaComputeIPs}
416 NodeIndex: {get_param: NodeIndex}
419 type: OS::TripleO::Compute::Ports::ManagementPort
421 ControlPlaneIP: {get_attr: [NovaCompute, networks, ctlplane, 0]}
422 IPPool: {get_param: NovaComputeIPs}
423 NodeIndex: {get_param: NodeIndex}
426 type: OS::TripleO::Network::Ports::NetIpMap
428 ControlPlaneIp: {get_attr: [NovaCompute, networks, ctlplane, 0]}
429 ExternalIp: {get_attr: [ExternalPort, ip_address]}
430 ExternalIpUri: {get_attr: [ExternalPort, ip_address_uri]}
431 InternalApiIp: {get_attr: [InternalApiPort, ip_address]}
432 InternalApiIpUri: {get_attr: [InternalApiPort, ip_address_uri]}
433 StorageIp: {get_attr: [StoragePort, ip_address]}
434 StorageIpUri: {get_attr: [StoragePort, ip_address_uri]}
435 StorageMgmtIp: {get_attr: [StorageMgmtPort, ip_address]}
436 StorageMgmtIpUri: {get_attr: [StorageMgmtPort, ip_address_uri]}
437 TenantIp: {get_attr: [TenantPort, ip_address]}
438 TenantIpUri: {get_attr: [TenantPort, ip_address_uri]}
439 ManagementIp: {get_attr: [ManagementPort, ip_address]}
440 ManagementIpUri: {get_attr: [ManagementPort, ip_address_uri]}
443 type: OS::TripleO::Compute::Net::SoftwareConfig
445 ControlPlaneIp: {get_attr: [NovaCompute, networks, ctlplane, 0]}
446 ExternalIpSubnet: {get_attr: [ExternalPort, ip_subnet]}
447 InternalApiIpSubnet: {get_attr: [InternalApiPort, ip_subnet]}
448 StorageIpSubnet: {get_attr: [StoragePort, ip_subnet]}
449 StorageMgmtIpSubnet: {get_attr: [StorageMgmtPort, ip_subnet]}
450 TenantIpSubnet: {get_attr: [TenantPort, ip_subnet]}
451 ManagementIpSubnet: {get_attr: [ManagementPort, ip_subnet]}
454 type: OS::TripleO::SoftwareDeployment
456 name: NetworkDeployment
457 config: {get_resource: NetworkConfig}
458 server: {get_resource: NovaCompute}
459 actions: {get_param: NetworkDeploymentActions}
461 bridge_name: {get_param: NeutronPhysicalBridge}
462 interface_name: {get_param: NeutronPublicInterface}
465 type: OS::Heat::StructuredConfig
467 group: os-apply-config
472 - heat_config_%{::deploy_config_name}
473 - compute_extraconfig
476 - ceph_cluster # provided by CephClusterConfig
478 - all_nodes # provided by allNodesConfig
481 - neutron_bigswitch_data # Optionally provided by ComputeExtraConfigPre
482 - cisco_n1kv_data # Optionally provided by ComputeExtraConfigPre
483 - nova_nuage_data # Optionally provided by ComputeExtraConfigPre
484 - midonet_data # Optionally provided by AllNodesExtraConfig
485 - neutron_opencontrail_data # Optionally provided by ComputeExtraConfigPre
488 mapped_data: {get_param: NovaComputeExtraConfig}
490 mapped_data: {get_param: ExtraConfig}
492 raw_data: {get_file: hieradata/common.yaml}
494 raw_data: {get_file: hieradata/ceph.yaml}
496 raw_data: {get_file: hieradata/compute.yaml}
498 cinder_enable_nfs_backend: {get_input: cinder_enable_nfs_backend}
499 nova::debug: {get_input: debug}
500 nova::rabbit_userid: {get_input: rabbit_username}
501 nova::rabbit_password: {get_input: rabbit_password}
502 nova::rabbit_use_ssl: {get_input: rabbit_client_use_ssl}
503 nova::rabbit_port: {get_input: rabbit_client_port}
504 nova::upgrade_level_compute: {get_input: upgrade_level_nova_compute}
505 nova_compute_driver: {get_input: nova_compute_driver}
506 nova::compute::libvirt::libvirt_virt_type: {get_input: nova_compute_libvirt_type}
507 nova::compute::neutron::libvirt_vif_driver: {get_input: nova_compute_libvirt_vif_driver}
508 nova_api_host: {get_input: nova_api_host}
509 nova::compute::vncproxy_host: {get_input: nova_public_ip}
510 nova::compute::rbd::ephemeral_storage: {get_input: nova_enable_rbd_backend}
511 rbd_persistent_storage: {get_input: cinder_enable_rbd_backend}
512 nova_password: {get_input: nova_password}
513 nova::compute::network_device_mtu: {get_input: neutron_tenant_mtu}
514 nova::compute::vncserver_proxyclient_address: {get_input: nova_vnc_proxyclient_address}
515 nova::vncproxy::common::vncproxy_protocol: {get_input: nova_vncproxy_protocol}
516 nova::vncproxy::common::vncproxy_host: {get_input: nova_vncproxy_host}
517 nova::vncproxy::common::vncproxy_port: {get_input: nova_vncproxy_port}
518 nova::network::neutron::neutron_ovs_bridge: {get_input: nova_ovs_bridge}
519 nova::network::neutron::security_group_api: {get_input: nova_security_group_api}
520 ceilometer::debug: {get_input: debug}
521 ceilometer::rabbit_userid: {get_input: rabbit_username}
522 ceilometer::rabbit_password: {get_input: rabbit_password}
523 ceilometer::rabbit_use_ssl: {get_input: rabbit_client_use_ssl}
524 ceilometer::rabbit_port: {get_input: rabbit_client_port}
525 ceilometer::metering_secret: {get_input: ceilometer_metering_secret}
526 ceilometer::agent::auth::auth_password: {get_input: ceilometer_password}
527 ceilometer::agent::auth::auth_url: {get_input: ceilometer_agent_auth_url}
528 ceilometer_compute_agent: {get_input: ceilometer_compute_agent}
529 snmpd_readonly_user_name: {get_input: snmpd_readonly_user_name}
530 snmpd_readonly_user_password: {get_input: snmpd_readonly_user_password}
531 nova::glance_api_servers: {get_input: glance_api_servers}
532 neutron::debug: {get_input: debug}
533 neutron::rabbit_password: {get_input: rabbit_password}
534 neutron::rabbit_user: {get_input: rabbit_username}
535 neutron::rabbit_use_ssl: {get_input: rabbit_client_use_ssl}
536 neutron::rabbit_port: {get_input: rabbit_client_port}
537 neutron::plugins::ml2::flat_networks: {get_input: neutron_flat_networks}
538 neutron_host: {get_input: neutron_host}
539 neutron::agents::ml2::ovs::local_ip: {get_input: neutron_local_ip}
541 neutron::network_device_mtu: {get_input: neutron_tenant_mtu}
542 neutron::plugins::ml2::tenant_network_types: {get_input: neutron_tenant_network_types}
543 neutron::agents::ml2::ovs::tunnel_types: {get_input: neutron_tunnel_types}
544 neutron::agents::ml2::ovs::extensions: {get_input: neutron_agent_extensions}
545 neutron::plugins::ml2::network_vlan_ranges: {get_input: neutron_network_vlan_ranges}
546 neutron::plugins::ml2::tunnel_id_ranges: {get_input: neutron_tunnel_id_ranges}
547 neutron::plugins::ml2::vni_ranges: {get_input: neutron_vni_ranges}
548 neutron::agents::ml2::ovs::bridge_mappings: {get_input: neutron_bridge_mappings}
549 neutron::agents::ml2::ovs::enable_tunneling: {get_input: neutron_enable_tunneling}
550 neutron::agents::ml2::ovs::l2_population: {get_input: neutron_enable_l2pop}
551 neutron_physical_bridge: {get_input: neutron_physical_bridge}
552 neutron_public_interface: {get_input: neutron_public_interface}
553 nova::network::neutron::neutron_password: {get_input: neutron_password}
554 nova::network::neutron::neutron_url: {get_input: neutron_internal_url}
555 nova::network::neutron::neutron_auth_url: {get_input: neutron_auth_url}
556 neutron_router_distributed: {get_input: neutron_router_distributed}
557 neutron_agent_mode: {get_input: neutron_agent_mode}
558 neutron_metadata_proxy_shared_secret: {get_input: neutron_metadata_proxy_shared_secret}
559 neutron::core_plugin: {get_input: neutron_core_plugin}
560 neutron::service_plugins: {get_input: neutron_service_plugins}
561 neutron::plugins::ml2::type_drivers: {get_input: neutron_type_drivers}
562 neutron::plugins::ml2::mechanism_drivers: {get_input: neutron_mechanism_drivers}
563 neutron_public_interface_raw_device: {get_input: neutron_public_interface_raw_device}
564 keystone_public_api_virtual_ip: {get_input: keystone_vip}
565 admin_password: {get_input: admin_password}
566 ntp::servers: {get_input: ntp_servers}
567 timezone::timezone: {get_input: timezone}
568 tripleo::packages::enable_install: {get_input: enable_package_install}
569 tripleo::packages::enable_upgrade: {get_input: enable_package_upgrade}
571 NovaComputeDeployment:
572 type: OS::TripleO::SoftwareDeployment
573 depends_on: NetworkDeployment
575 name: NovaComputeDeployment
576 config: {get_resource: NovaComputeConfig}
577 server: {get_resource: NovaCompute}
579 cinder_enable_nfs_backend: {get_param: CinderEnableNfsBackend}
580 debug: {get_param: Debug}
581 nova_compute_driver: {get_param: NovaComputeDriver}
582 nova_compute_libvirt_type: {get_param: NovaComputeLibvirtType}
583 nova_compute_libvirt_vif_driver: {get_param: NovaComputeLibvirtVifDriver}
584 nova_public_ip: {get_param: NovaPublicIP}
585 nova_api_host: {get_param: NovaApiHost}
586 nova_password: {get_param: NovaPassword}
587 nova_enable_rbd_backend: {get_param: NovaEnableRbdBackend}
588 cinder_enable_rbd_backend: {get_param: CinderEnableRbdBackend}
589 nova_vnc_proxyclient_address: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, NovaVncProxyNetwork]}]}
590 nova_vncproxy_protocol: {get_param: [EndpointMap, NovaVNCProxyPublic, protocol]}
591 nova_vncproxy_host: {get_param: [EndpointMap, NovaVNCProxyPublic, host]}
592 nova_vncproxy_port: {get_param: [EndpointMap, NovaVNCProxyPublic, port]}
593 nova_ovs_bridge: {get_param: NovaOVSBridge}
594 nova_security_group_api: {get_param: NovaSecurityGroupAPI}
595 upgrade_level_nova_compute: {get_param: UpgradeLevelNovaCompute}
596 ceilometer_metering_secret: {get_param: CeilometerMeteringSecret}
597 ceilometer_password: {get_param: CeilometerPassword}
598 ceilometer_compute_agent: {get_param: CeilometerComputeAgent}
599 ceilometer_agent_auth_url: {get_param: [EndpointMap, KeystoneInternal, uri]}
600 snmpd_readonly_user_name: {get_param: SnmpdReadonlyUserName}
601 snmpd_readonly_user_password: {get_param: SnmpdReadonlyUserPassword}
602 glance_api_servers: {get_param: [EndpointMap, GlanceInternal, uri]}
603 neutron_flat_networks:
607 NETWORKS: {get_param: NeutronFlatNetworks}
608 neutron_host: {get_param: NeutronHost}
609 neutron_local_ip: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, NeutronTenantNetwork]}]}
610 neutron_tunnel_id_ranges:
614 RANGES: {get_param: NeutronTunnelIdRanges}
619 RANGES: {get_param: NeutronVniRanges}
620 neutron_tenant_network_types:
624 TYPES: {get_param: NeutronNetworkType}
625 neutron_tunnel_types:
629 TYPES: {get_param: NeutronTunnelTypes}
630 neutron_network_vlan_ranges:
634 RANGES: {get_param: NeutronNetworkVLANRanges}
635 neutron_bridge_mappings:
639 MAPPINGS: {get_param: NeutronBridgeMappings}
640 neutron_tenant_mtu: {get_param: NeutronTenantMtu}
641 neutron_enable_tunneling: {get_param: NeutronEnableTunnelling}
642 neutron_enable_l2pop: {get_param: NeutronEnableL2Pop}
643 neutron_physical_bridge: {get_param: NeutronPhysicalBridge}
644 neutron_public_interface: {get_param: NeutronPublicInterface}
645 neutron_password: {get_param: NeutronPassword}
646 neutron_agent_mode: {get_param: NeutronAgentMode}
647 neutron_router_distributed: {get_param: NeutronDVR}
648 neutron_metadata_proxy_shared_secret: {get_param: NeutronMetadataProxySharedSecret}
649 neutron_core_plugin: {get_param: NeutronCorePlugin}
650 neutron_service_plugins:
654 PLUGINS: {get_param: NeutronServicePlugins}
655 neutron_type_drivers:
659 DRIVERS: {get_param: NeutronTypeDrivers}
660 neutron_mechanism_drivers:
664 MECHANISMS: {get_param: NeutronMechanismDrivers}
665 neutron_agent_extensions:
667 template: AGENT_EXTENSIONS
669 AGENT_EXTENSIONS: {get_param: NeutronAgentExtensions}
670 neutron_public_interface_raw_device: {get_param: NeutronPublicInterfaceRawDevice}
671 neutron_internal_url: {get_param: [EndpointMap, NeutronInternal, uri]}
672 neutron_auth_url: {get_param: [EndpointMap, KeystoneV3Admin, uri]}
673 keystone_vip: {get_param: KeystonePublicApiVirtualIP}
674 admin_password: {get_param: AdminPassword}
675 rabbit_username: {get_param: RabbitUserName}
676 rabbit_password: {get_param: RabbitPassword}
677 rabbit_client_use_ssl: {get_param: RabbitClientUseSSL}
678 rabbit_client_port: {get_param: RabbitClientPort}
679 ntp_servers: {get_param: NtpServer}
680 timezone: {get_param: TimeZone}
681 enable_package_install: {get_param: EnablePackageInstall}
682 enable_package_upgrade: {get_attr: [UpdateDeployment, update_managed_packages]}
684 # Resource for site-specific injection of root certificate
686 depends_on: NovaComputeDeployment
687 type: OS::TripleO::NodeTLSCAData
689 server: {get_resource: NovaCompute}
691 # Hook for site-specific additional pre-deployment config, e.g extra hieradata
692 ComputeExtraConfigPre:
693 depends_on: NovaComputeDeployment
694 type: OS::TripleO::ComputeExtraConfigPre
696 server: {get_resource: NovaCompute}
698 # Hook for site-specific additional pre-deployment config,
699 # applying to all nodes, e.g node registration/unregistration
701 depends_on: [ComputeExtraConfigPre, NodeTLSCAData]
702 type: OS::TripleO::NodeExtraConfig
704 server: {get_resource: NovaCompute}
707 type: OS::TripleO::Tasks::PackageUpdate
710 type: OS::Heat::SoftwareDeployment
712 name: UpdateDeployment
713 config: {get_resource: UpdateConfig}
714 server: {get_resource: NovaCompute}
717 get_param: UpdateIdentifier
721 description: IP address of the server in the ctlplane network
722 value: {get_attr: [NovaCompute, networks, ctlplane, 0]}
724 description: IP address of the server in the external network
725 value: {get_attr: [ExternalPort, ip_address]}
726 internal_api_ip_address:
727 description: IP address of the server in the internal_api network
728 value: {get_attr: [InternalApiPort, ip_address]}
730 description: IP address of the server in the storage network
731 value: {get_attr: [StoragePort, ip_address]}
732 storage_mgmt_ip_address:
733 description: IP address of the server in the storage_mgmt network
734 value: {get_attr: [StorageMgmtPort, ip_address]}
736 description: IP address of the server in the tenant network
737 value: {get_attr: [TenantPort, ip_address]}
738 management_ip_address:
739 description: IP address of the server in the management network
740 value: {get_attr: [ManagementPort, ip_address]}
742 description: Hostname of the server
743 value: {get_attr: [NovaCompute, name]}
746 Server's IP address and hostname in the /etc/hosts format
750 PRIMARYIP PRIMARYHOST.DOMAIN PRIMARYHOST
751 EXTERNALIP EXTERNALHOST
752 INTERNAL_APIIP INTERNAL_APIHOST
753 STORAGEIP STORAGEHOST
754 STORAGE_MGMTIP STORAGE_MGMTHOST
756 MANAGEMENTIP MANAGEMENTHOST
758 PRIMARYIP: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, ComputeHostnameResolveNetwork]}]}
759 DOMAIN: {get_param: CloudDomain}
760 PRIMARYHOST: {get_attr: [NovaCompute, name]}
761 EXTERNALIP: {get_attr: [ExternalPort, ip_address]}
765 - - {get_attr: [NovaCompute, name]}
767 INTERNAL_APIIP: {get_attr: [InternalApiPort, ip_address]}
771 - - {get_attr: [NovaCompute, name]}
773 STORAGEIP: {get_attr: [StoragePort, ip_address]}
777 - - {get_attr: [NovaCompute, name]}
779 STORAGE_MGMTIP: {get_attr: [StorageMgmtPort, ip_address]}
783 - - {get_attr: [NovaCompute, name]}
785 TENANTIP: {get_attr: [TenantPort, ip_address]}
789 - - {get_attr: [NovaCompute, name]}
791 MANAGEMENTIP: {get_attr: [ManagementPort, ip_address]}
795 - - {get_attr: [NovaCompute, name]}
797 nova_server_resource:
798 description: Heat resource handle for the Nova compute server
800 {get_resource: NovaCompute}
802 description: identifier which changes if the node configuration may need re-applying
806 - - {get_attr: [NovaComputeDeployment, deploy_stdout]}
807 - {get_attr: [NodeTLSCAData, deploy_stdout]}
808 - {get_attr: [ComputeExtraConfigPre, deploy_stdout]}
809 - {get_param: UpdateIdentifier}