1 heat_template_version: 2015-04-30
4 OpenStack control plane node. Can be wrapped in a ResourceGroup for scaling.
9 description: The password for the keystone admin account, used for monitoring, querying neutron etc.
14 description: The keystone auth secret and db password.
19 description: The ceilometer backend type.
21 CeilometerMeteringSecret:
23 description: Secret shared by the ceilometer services.
28 description: The password for the ceilometer service and db account.
31 CinderEnableIscsiBackend:
33 description: Whether to enable or not the Iscsi backend for Cinder
35 CinderEnableRbdBackend:
37 description: Whether to enable or not the Rbd backend for Cinder
41 description: The iSCSI helper to use with cinder.
43 CinderLVMLoopDeviceSize:
45 description: The size of the loopback file used by the cinder LVM driver.
49 description: The password for the cinder service and db account, used by cinder-api.
54 description: The DNS name of this cloud. E.g. ci-overcloud.tripleo.org
56 ControllerExtraConfig:
59 Controller specific configuration to inject into the cluster. Same
60 structure as ExtraConfig.
62 ControlVirtualInterface:
64 description: Interface where virtual ip will be assigned.
68 description: Set to True to enable debugging on all services.
72 description: Whether to use Galera instead of regular MariaDB.
76 description: Whether to deploy Ceph Storage (OSD) on the Controller
80 description: Whether to enable Swift Storage on the Controller
85 Additional configuration to inject into the cluster. The JSON should have
86 the following structure:
89 [{"section": "SECTIONNAME",
91 [{"option": "OPTIONNAME",
102 [{"section": "default",
104 [{"option": "compute_manager",
105 "value": "ironic.nova.compute.manager.ClusterComputeManager"
111 [{"option": "driver",
112 "value": "nova.cells.rpc_driver.CellsRPCDriver"
121 description: Flavor for control nodes to request when deploying.
124 - custom_constraint: nova.flavor
125 GlanceNotifierStrategy:
126 description: Strategy to use for Glance notification queue
130 description: The filepath of the file to use for logging messages from Glance.
135 description: The password for the glance service and db account, used by the glance services.
140 description: Glance port.
144 description: Protocol to use when connecting to glance, set to https for SSL.
148 description: The short name of the Glance backend to use. Should be one
149 of swift, rbd, or file
152 - allowed_values: ['swift', 'file', 'rbd']
155 description: The password for the Heat service and db account, used by the Heat services.
158 HeatStackDomainAdminPassword:
159 description: Password for heat_domain_admin user.
163 HeatAuthEncryptionKey:
164 description: Auth encryption key for heat-engine
167 description: Secret key for Django
171 default: overcloud-control
173 - custom_constraint: glance.image
175 default: 'REBUILD_PRESERVE_EPHEMERAL'
176 description: What policy to use when reconstructing instances. REBUILD for rebuilds, REBUILD_PRESERVE_EPHEMERAL to preserve /mnt.
180 description: Name of an existing EC2 KeyPair to enable SSH access to the instances
183 - custom_constraint: nova.keypair
184 KeystoneCACertificate:
186 description: Keystone self-signed certificate authority certificate.
188 KeystoneSigningCertificate:
190 description: Keystone certificate for verifying token validity.
194 description: Keystone key for signing tokens.
197 KeystoneSSLCertificate:
199 description: Keystone certificate for verifying token validity.
201 KeystoneSSLCertificateKey:
203 description: Keystone key for signing tokens.
206 MysqlClusterUniquePart:
207 description: A unique identifier of the MySQL cluster the controller is in.
209 default: 'unset' # Has to be here because of the ignored empty value bug
210 # Drop the validation: https://bugs.launchpad.net/tripleo/+bug/1405446
212 # - length: {min: 4, max: 10}
213 MysqlInnodbBufferPoolSize:
215 Specifies the size of the buffer pool in megabytes. Setting to
216 zero should be interpreted as "no value" and will defer to the
223 default: '' # Has to be here because of the ignored empty value bug
224 NeutronExternalNetworkBridge:
225 description: Name of bridge used for external network traffic.
228 NeutronBridgeMappings:
230 The OVS logical->physical bridge mappings to use. See the Neutron
231 documentation for details. Defaults to mapping br-ex - the external
232 bridge on hosts - to a physical name 'datacentre' which can be used
233 to create provider networks (and we use this for the default floating
234 network) - if changing this either use different post-install network
235 scripts or be sure to keep 'datacentre' as a mapping network name.
237 default: "datacentre:br-ex"
238 NeutronDnsmasqOptions:
239 default: 'dhcp-option-force=26,1400'
240 description: Dnsmasq options for neutron-dhcp-agent. The default value here forces MTU to be set to 1400 to account for the gre tunnel overhead.
244 description: Agent mode for the neutron-l3-agent on the controller hosts
248 description: Whether to configure Neutron Distributed Virtual Routers
250 NeutronMetadataProxySharedSecret:
252 description: Shared secret to prevent spoofing
254 NeutronMechanismDrivers:
255 default: 'openvswitch'
257 The mechanism drivers for the Neutron tenant network. To specify multiple
258 values, use a comma separated string, like so: 'openvswitch,l2_population'
260 NeutronAllowL3AgentFailover:
262 description: Allow automatic l3-agent failover
266 description: Whether to enable l3-agent HA
268 NeutronEnableTunnelling:
273 default: 'datacentre'
274 description: If set, flat networks to configure in neutron plugins.
277 description: The tenant network type for Neutron, either gre or vxlan.
279 NeutronNetworkVLANRanges:
280 default: 'datacentre'
282 The Neutron ML2 and OpenVSwitch vlan mapping range to support. See the
283 Neutron documentation for permitted values. Defaults to permitting any
284 VLAN on the 'datacentre' physical network (See NeutronBridgeMappings).
285 type: comma_delimited_list
288 description: The password for the neutron service and db account, used by neutron agents.
291 NeutronPublicInterface:
293 description: What interface to bridge onto br-ex for network nodes.
295 NeutronPublicInterfaceTag:
298 VLAN tag for creating a public VLAN. The tag will be used to
299 create an access port on the exterior bridge for each control plane node,
300 and that port will be given the IP address returned by neutron from the
301 public network. Set CONTROLEXTRA=overcloud-vlan-port.yaml when compiling
302 overcloud.yaml to include the deployment of VLAN ports to the control
305 NeutronPublicInterfaceDefaultRoute:
307 description: A custom default route for the NeutronPublicInterface.
309 NeutronPublicInterfaceIP:
311 description: A custom IP address to put onto the NeutronPublicInterface.
313 NeutronPublicInterfaceRawDevice:
315 description: If set, the public interface is a vlan with this device as the raw device.
320 The tunnel types for the Neutron tenant network. To specify multiple
321 values, use a comma separated string, like so: 'gre,vxlan'
325 description: The password for the nova service and db account, used by nova-api.
333 description: The password for the 'pcsd' user.
334 PublicVirtualInterface:
337 Specifies the interface where the public-facing virtual ip will be assigned.
338 This should be int_public when a VLAN is being used.
342 default: '' # Has to be here because of the ignored empty value bug
345 default: '' # Has to be here because of the ignored empty value bug
349 description: The password for RabbitMQ
354 description: The username for RabbitMQ
359 Rabbit client subscriber parameter to specify
360 an SSL connection to the RabbitMQ host.
364 description: Set rabbit subscriber port, change this if using SSL
368 default: '' # Has to be here because of the ignored empty value bug
369 SnmpdReadonlyUserName:
370 default: ro_snmp_user
371 description: The user name for SNMPd with readonly rights running on all Overcloud nodes
373 SnmpdReadonlyUserPassword:
375 description: The user password for SNMPd with readonly rights running on all Overcloud nodes
380 description: If set, the contents of an SSL certificate authority file.
384 description: If set, the contents of an SSL certificate .crt file for encrypting SSL endpoints.
389 description: If set, the contents of an SSL certificate .key file for encrypting SSL endpoints.
394 description: A random string to be used as a salt when hashing to determine mappings
400 description: Value of mount_check in Swift account/container/object -server.conf
405 description: The minimum time (in hours) before a partition in a ring can be moved following a rebalance.
408 description: Partition Power to use when building Swift rings
412 description: The password for the swift service account, used by the swift proxy
419 description: How many replicas to use in the swift rings.
422 default: '' # Has to be here because of the ignored empty value bug
432 KeystonePublicApiVirtualIP:
440 description: Mapping of service_name -> network name. Typically set
441 via parameter_defaults in the resource registry.
447 Setting to a previously unused value during stack-update will trigger
448 package update on all nodes
451 default: '' # Defaults to Heat created hostname
456 type: OS::Nova::Server
458 image: {get_param: Image}
459 image_update_policy: {get_param: ImageUpdatePolicy}
460 flavor: {get_param: Flavor}
461 key_name: {get_param: KeyName}
464 user_data_format: SOFTWARE_CONFIG
465 user_data: {get_resource: NodeUserData}
466 name: {get_param: Hostname}
469 type: OS::TripleO::NodeUserData
472 type: OS::TripleO::Controller::Ports::ExternalPort
474 ControlPlaneIP: {get_attr: [Controller, networks, ctlplane, 0]}
477 type: OS::TripleO::Controller::Ports::InternalApiPort
479 ControlPlaneIP: {get_attr: [Controller, networks, ctlplane, 0]}
482 type: OS::TripleO::Controller::Ports::StoragePort
484 ControlPlaneIP: {get_attr: [Controller, networks, ctlplane, 0]}
487 type: OS::TripleO::Controller::Ports::StorageMgmtPort
489 ControlPlaneIP: {get_attr: [Controller, networks, ctlplane, 0]}
492 type: OS::TripleO::Controller::Ports::TenantPort
494 ControlPlaneIP: {get_attr: [Controller, networks, ctlplane, 0]}
497 type: OS::TripleO::Controller::Net::SoftwareConfig
499 ExternalIpSubnet: {get_attr: [ExternalPort, ip_subnet]}
500 InternalApiIpSubnet: {get_attr: [InternalApiPort, ip_subnet]}
501 StorageIpSubnet: {get_attr: [StoragePort, ip_subnet]}
502 StorageMgmtIpSubnet: {get_attr: [StorageMgmtPort, ip_subnet]}
503 TenantIpSubnet: {get_attr: [TenantPort, ip_subnet]}
506 type: OS::TripleO::SoftwareDeployment
508 signal_transport: NO_SIGNAL
509 config: {get_resource: NetworkConfig}
510 server: {get_resource: Controller}
513 interface_name: {get_param: NeutronPublicInterface}
515 ControllerPassthroughConfig:
516 type: OS::Heat::StructuredConfig
518 group: os-apply-config
519 config: {get_input: passthrough_config}
521 ControllerPassthroughConfigSpecific:
522 type: OS::Heat::StructuredConfig
524 group: os-apply-config
525 config: {get_input: passthrough_config_specific}
528 type: OS::Heat::StructuredConfig
530 group: os-apply-config
532 admin-password: {get_input: admin_password}
533 admin-token: {get_input: admin_token}
535 public_interface_ip: {get_input: neutron_public_interface_ip}
537 nodeid: {get_input: bootstack_nodeid}
539 db: {get_input: cinder_dsn}
540 debug: {get_input: debug}
541 volume_size_mb: {get_input: cinder_lvm_loop_device_size}
542 service-password: {get_input: cinder_password}
543 iscsi-helper: {get_input: CinderISCSIHelper}
544 controller-address: {get_input: controller_host}
546 bindnetaddr: {get_input: controller_host}
549 stonith_enabled : false
551 quorum_policy : ignore
555 host: {get_input: controller_virtual_ip}
557 db: {get_input: glance_dsn}
558 debug: {get_input: debug}
559 host: {get_input: controller_virtual_ip}
560 port: {get_input: glance_port}
561 protocol: {get_input: glance_protocol}
562 service-password: {get_input: glance_password}
563 swift-store-user: service:glance
564 swift-store-key: {get_input: glance_password}
565 notifier-strategy: {get_input: glance_notifier_strategy}
566 log-file: {get_input: glance_log_file}
568 admin_password: {get_input: heat_password}
569 admin_tenant_name: service
571 auth_encryption_key: {get_input: heat_auth_encryption_key}
572 db: {get_input: heat_dsn}
573 debug: {get_input: debug}
574 stack_domain_admin_password: {get_input: heat_stack_domain_admin_password}
575 watch_server_url: {get_input: heat.watch_server_url}
576 metadata_server_url: {get_input: heat.metadata_server_url}
577 waitcondition_server_url: {get_input: heat.waitcondition_server_url}
579 db: {get_input: keystone_dsn}
580 debug: {get_input: debug}
581 host: {get_input: controller_virtual_ip}
582 ca_certificate: {get_input: keystone_ca_certificate}
583 signing_key: {get_input: keystone_signing_key}
584 signing_certificate: {get_input: keystone_signing_certificate}
586 certificate: {get_input: keystone_ssl_certificate}
587 certificate_key: {get_input: keystone_ssl_certificate_key}
589 innodb_buffer_pool_size: {get_input: mysql_innodb_buffer_pool_size}
591 root-password: {get_input: mysql_root_password}
592 cluster_name: {get_input: mysql_cluster_name}
594 debug: {get_input: debug}
595 flat-networks: {get_input: neutron_flat_networks}
596 host: {get_input: controller_virtual_ip}
597 metadata_proxy_shared_secret: {get_input: neutron_metadata_proxy_shared_secret}
598 agent_mode: {get_input: neutron_agent_mode}
599 router_distributed: {get_input: neutron_router_distributed}
600 mechanism_drivers: {get_input: neutron_mechanism_drivers}
601 allow_automatic_l3agent_failover: {get_input: neutron_allow_l3agent_failover}
602 l3_ha: {get_input: neutron_l3_ha}
604 enable_tunneling: {get_input: neutron_enable_tunneling}
605 local_ip: {get_input: controller_host}
606 network_vlan_ranges: {get_input: neutron_network_vlan_ranges}
607 bridge_mappings: {get_input: neutron_bridge_mappings}
608 public_interface: {get_input: neutron_public_interface}
609 public_interface_raw_device: {get_input: neutron_public_interface_raw_device}
610 public_interface_route: {get_input: neutron_public_interface_default_route}
611 public_interface_tag: {get_input: neutron_public_interface_tag}
612 physical_bridge: br-ex
613 tenant_network_type: {get_input: neutron_tenant_network_type}
614 tunnel_types: {get_input: neutron_tunnel_types}
615 ovs_db: {get_input: neutron_dsn}
616 service-password: {get_input: neutron_password}
617 dnsmasq-options: {get_input: neutron_dnsmasq_options}
619 db: {get_input: ceilometer_dsn}
620 debug: {get_input: debug}
621 metering_secret: {get_input: ceilometer_metering_secret}
622 service-password: {get_input: ceilometer_password}
624 export_MIB: UCD-SNMP-MIB
625 readonly_user_name: {get_input: snmpd_readonly_user_name}
626 readonly_user_password: {get_input: snmpd_readonly_user_password}
628 compute_driver: libvirt.LibvirtDriver
629 db: {get_input: nova_dsn}
630 default_floating_pool:
632 host: {get_input: controller_virtual_ip}
634 service-password: {get_input: nova_password}
636 host: {get_input: controller_virtual_ip}
637 username: {get_input: rabbit_username}
638 password: {get_input: rabbit_password}
639 cookie: {get_input: rabbit_cookie}
640 rabbit_client_use_ssl: {get_input: rabbit_client_use_ssl}
641 rabbit_port: {get_input: rabbit_client_port}
644 - {server: {get_input: ntp_server}}
647 - vrrp_instance_name: VI_CONTROL
648 virtual_router_id: 51
649 keepalive_interface: {get_input: control_virtual_interface}
652 - ip: {get_input: controller_virtual_ip}
653 interface: {get_input: control_virtual_interface}
654 - vrrp_instance_name: VI_PUBLIC
655 virtual_router_id: 52
656 keepalive_interface: {get_input: public_virtual_interface}
659 - ip: {get_input: public_virtual_ip}
660 interface: {get_input: public_virtual_interface}
667 keepalive_interface: {get_input: public_virtual_interface}
671 ip: {get_input: controller_virtual_ip}
672 interface: {get_input: control_virtual_interface}
674 ip: {get_input: public_virtual_ip}
675 interface: {get_input: public_virtual_interface}
678 - ip: {get_input: controller_virtual_ip}
680 - option httpchk GET /
682 - name: keystone_admin
684 net_binds: &public_binds
685 - ip: {get_input: controller_virtual_ip}
686 - ip: {get_input: public_virtual_ip}
687 - name: keystone_public
689 net_binds: *public_binds
692 net_binds: *public_binds
695 net_binds: *public_binds
698 net_binds: *public_binds
701 net_binds: *public_binds
702 - name: glance_registry
704 net_binds: *public_binds
705 options: # overwrite options as glace_reg needs auth for http req
708 net_binds: *public_binds
709 - name: heat_cloudwatch
711 net_binds: *public_binds
714 net_binds: *public_binds
726 net_binds: *public_binds
727 - name: nova_metadata
729 net_binds: *public_binds
730 - name: nova_novncproxy
732 net_binds: *public_binds
735 net_binds: *public_binds
736 options: # overwrite options as ceil needs auth for http req
737 - name: swift_proxy_server
739 net_binds: *public_binds
741 - option httpchk GET /info
749 ControllerDeployment:
750 type: OS::TripleO::SoftwareDeployment
752 signal_transport: NO_SIGNAL
753 config: {get_resource: ControllerConfig}
754 server: {get_resource: Controller}
756 bootstack_nodeid: {get_attr: [Controller, name]}
757 controller_host: {get_attr: [Controller, networks, ctlplane, 0]}
758 controller_virtual_ip: {get_param: VirtualIP}
759 neutron_enable_tunneling: {get_param: NeutronEnableTunnelling}
760 heat.watch_server_url:
764 - {get_param: VirtualIP}
766 heat.metadata_server_url:
770 - {get_param: VirtualIP}
772 heat.waitcondition_server_url:
776 - {get_param: VirtualIP}
777 - ':8000/v1/waitcondition'
778 admin_password: {get_param: AdminPassword}
779 admin_token: {get_param: AdminToken}
780 neutron_public_interface_ip: {get_param: NeutronPublicInterfaceIP}
781 debug: {get_param: Debug}
782 cinder_lvm_loop_device_size: {get_param: CinderLVMLoopDeviceSize}
783 cinder_password: {get_param: CinderPassword}
784 cinder_iscsi_helper: {get_param: CinderISCSIHelper}
788 - - 'mysql://cinder:'
789 - {get_param: CinderPassword}
791 - {get_param: VirtualIP}
793 glance_port: {get_param: GlancePort}
794 glance_protocol: {get_param: GlanceProtocol}
795 glance_password: {get_param: GlancePassword}
796 glance_notifier_strategy: {get_param: GlanceNotifierStrategy}
797 glance_log_file: {get_param: GlanceLogFile}
801 - - 'mysql://glance:'
802 - {get_param: GlancePassword}
804 - {get_param: VirtualIP}
806 heat_password: {get_param: HeatPassword}
807 heat_stack_domain_admin_password: {get_param: HeatStackDomainAdminPassword}
808 heat_auth_encryption_key: {get_param: HeatAuthEncryptionKey}
813 - {get_param: HeatPassword}
815 - {get_param: VirtualIP}
817 keystone_ca_certificate: {get_param: KeystoneCACertificate}
818 keystone_signing_key: {get_param: KeystoneSigningKey}
819 keystone_signing_certificate: {get_param: KeystoneSigningCertificate}
820 keystone_ssl_certificate: {get_param: KeystoneSSLCertificate}
821 keystone_ssl_certificate_key: {get_param: KeystoneSSLCertificateKey}
825 - - 'mysql://keystone:'
826 - {get_param: AdminToken}
828 - {get_param: VirtualIP}
830 mysql_innodb_buffer_pool_size: {get_param: MysqlInnodbBufferPoolSize}
831 mysql_root_password: {get_param: MysqlRootPassword}
834 template: tripleo-CLUSTER
836 CLUSTER: {get_param: MysqlClusterUniquePart}
837 neutron_flat_networks: {get_param: NeutronFlatNetworks}
838 neutron_metadata_proxy_shared_secret: {get_param: NeutronMetadataProxySharedSecret}
839 neutron_agent_mode: {get_param: NeutronAgentMode}
840 neutron_router_distributed: {get_param: NeutronDVR}
841 neutron_mechanism_drivers: {get_param: NeutronMechanismDrivers}
842 neutron_allow_l3agent_failover: {get_param: NeutronAllowL3AgentFailover}
843 neutron_l3_ha: {get_param: NeutronL3HA}
844 neutron_network_vlan_ranges: {get_param: NeutronNetworkVLANRanges}
845 neutron_bridge_mappings: {get_param: NeutronBridgeMappings}
846 neutron_public_interface: {get_param: NeutronPublicInterface}
847 neutron_public_interface_raw_device: {get_param: NeutronPublicInterfaceRawDevice}
848 neutron_public_interface_default_route: {get_param: NeutronPublicInterfaceDefaultRoute}
849 neutron_public_interface_tag: {get_param: NeutronPublicInterfaceTag}
850 neutron_tenant_network_type: {get_param: NeutronNetworkType}
851 neutron_tunnel_types: {get_param: NeutronTunnelTypes}
852 neutron_password: {get_param: NeutronPassword}
853 neutron_dnsmasq_options: {get_param: NeutronDnsmasqOptions}
857 - - 'mysql://neutron:'
858 - {get_param: NeutronPassword}
860 - {get_param: VirtualIP}
861 - '/ovs_neutron?charset=utf8'
862 ceilometer_metering_secret: {get_param: CeilometerMeteringSecret}
863 ceilometer_password: {get_param: CeilometerPassword}
867 - - 'mysql://ceilometer:'
868 - {get_param: CeilometerPassword}
870 - {get_param: VirtualIP}
872 snmpd_readonly_user_name: {get_param: SnmpdReadonlyUserName}
873 snmpd_readonly_user_password: {get_param: SnmpdReadonlyUserPassword}
874 nova_password: {get_param: NovaPassword}
879 - {get_param: NovaPassword}
881 - {get_param: VirtualIP}
883 rabbit_username: {get_param: RabbitUserName}
884 rabbit_password: {get_param: RabbitPassword}
885 rabbit_cookie: {get_param: RabbitCookie}
886 rabbit_client_use_ssl: {get_param: RabbitClientUseSSL}
887 rabbit_client_port: {get_param: RabbitClientPort}
888 ntp_server: {get_param: NtpServer}
889 control_virtual_interface: {get_param: ControlVirtualInterface}
890 public_virtual_interface: {get_param: PublicVirtualInterface}
891 public_virtual_ip: {get_param: PublicVirtualIP}
894 type: OS::Heat::StructuredConfig
896 group: os-apply-config
899 ca_certificate: {get_input: ssl_ca_certificate}
901 cert: {get_input: ssl_certificate}
902 key: {get_input: ssl_key}
903 cacert: {get_input: ssl_ca_certificate}
908 connect_host: {get_input: controller_host}
912 connect_host: {get_input: controller_host}
916 connect_host: {get_input: controller_host}
920 connect_host: {get_input: controller_host}
924 connect_host: {get_input: controller_host}
925 - name: 'swift-proxy'
928 connect_host: {get_input: controller_host}
932 connect_host: {get_input: controller_host}
936 connect_host: {get_input: controller_host}
938 ControllerSSLDeployment:
939 type: OS::Heat::StructuredDeployment
941 config: {get_resource: SSLConfig}
942 server: {get_resource: Controller}
943 signal_transport: NO_SIGNAL
945 controller_host: {get_attr: [Controller, networks, ctlplane, 0]}
946 ssl_certificate: {get_param: SSLCertificate}
947 ssl_key: {get_param: SSLKey}
948 ssl_ca_certificate: {get_param: SSLCACertificate}
950 ControllerPassthroughDeployment:
951 type: OS::Heat::StructuredDeployment
953 config: {get_resource: ControllerPassthroughConfig}
954 server: {get_resource: Controller}
955 signal_transport: NO_SIGNAL
957 passthrough_config: {get_param: ExtraConfig}
959 ControllerPassthroughSpecificDeployment:
960 depends_on: [ControllerPassthroughDeployment]
961 type: OS::Heat::StructuredDeployment
963 config: {get_resource: ControllerPassthroughConfigSpecific}
964 server: {get_resource: Controller}
965 signal_transport: NO_SIGNAL
967 passthrough_config_specific: {get_param: ControllerExtraConfig}
970 type: OS::Heat::StructuredConfig
972 group: os-apply-config
975 hash: { get_input: swift_hash_suffix }
976 part-power: { get_input: swift_part_power }
977 mount-check: { get_input: swift_mount_check }
978 min-part-hours: { get_input: swift_min_part_hours }
979 replicas: {get_input: swift_replicas }
980 service-password: { get_input: swift_password }
983 type: OS::Heat::StructuredDeployment
985 server: {get_resource: Controller}
986 config: {get_resource: SwiftConfig}
987 signal_transport: NO_SIGNAL
989 swift_hash_suffix: {get_param: SwiftHashSuffix}
990 swift_mount_check: {get_param: SwiftMountCheck}
991 swift_password: {get_param: SwiftPassword}
992 swift_min_part_hours: {get_param: SwiftMinPartHours}
993 swift_part_power: {get_param: SwiftPartPower}
994 swift_replicas: { get_param: SwiftReplicas}
998 description: IP address of the server in the ctlplane network
999 value: {get_attr: [Controller, networks, ctlplane, 0]}
1000 external_ip_address:
1001 description: IP address of the server in the external network
1002 value: {get_attr: [ExternalPort, ip_address]}
1003 internal_api_ip_address:
1004 description: IP address of the server in the internal_api network
1005 value: {get_attr: [InternalApiPort, ip_address]}
1007 description: IP address of the server in the storage network
1008 value: {get_attr: [StoragePort, ip_address]}
1009 storage_mgmt_ip_address:
1010 description: IP address of the server in the storage_mgmt network
1011 value: {get_attr: [StorageMgmtPort, ip_address]}
1013 description: IP address of the server in the tenant network
1014 value: {get_attr: [TenantPort, ip_address]}
1016 description: Hostname of the server
1017 value: {get_attr: [Controller, name]}
1020 Node object in the format {ip: ..., name: ...} format that the corosync
1023 ip: {get_attr: [Controller, networks, ctlplane, 0]}
1024 name: {get_attr: [Controller, name]}
1027 Server's IP address and hostname in the /etc/hosts format
1030 template: IP HOST CLOUDNAME
1032 IP: {get_attr: [Controller, networks, ctlplane, 0]}
1033 HOST: {get_attr: [Controller, name]}
1034 CLOUDNAME: {get_param: CloudName}
1035 nova_server_resource:
1036 description: Heat resource handle for the Nova compute server
1038 {get_resource: Controller}
1040 description: Swift device formatted for swift-ring-builder
1043 template: 'r1z1-IP:%PORT%/d1'
1045 IP: {get_attr: [Controller, networks, ctlplane, 0]}
1046 swift_proxy_memcache:
1047 description: Swift proxy-memcache value
1050 template: "IP:11211"
1052 IP: {get_attr: [Controller, networks, ctlplane, 0]}
1054 description: identifier which changes if the node configuration may need re-applying
1055 value: "None - NO_SIGNAL"