1 heat_template_version: 2015-04-30
4 OpenStack controller node configured by Puppet.
8 default: 'admin@example.com'
9 description: The email for the keystone admin account.
14 description: The password for the keystone admin account, used for monitoring, querying neutron etc.
19 description: The keystone auth secret and db password.
22 CeilometerApiVirtualIP:
27 description: The ceilometer backend type.
29 CeilometerMeteringSecret:
31 description: Secret shared by the ceilometer services.
36 description: The password for the ceilometer service and db account.
42 CinderEnableNfsBackend:
44 description: Whether to enable or not the NFS backend for Cinder
46 CinderEnableIscsiBackend:
48 description: Whether to enable or not the Iscsi backend for Cinder
50 CinderEnableRbdBackend:
52 description: Whether to enable or not the Rbd backend for Cinder
56 description: The iSCSI helper to use with cinder.
58 CinderLVMLoopDeviceSize:
60 description: The size of the loopback file used by the cinder LVM driver.
62 CinderNfsMountOptions:
65 Mount options for NFS mounts used by Cinder NFS backend. Effective
66 when CinderEnableNfsBackend is true.
71 NFS servers used by Cinder NFS backend. Effective when
72 CinderEnableNfsBackend is true.
73 type: comma_delimited_list
76 description: The password for the cinder service and db account, used by cinder-api.
81 description: Contains parameters to configure Cinder backends. Typically
82 set via parameter_defaults in the resource registry.
86 description: The DNS name of this cloud. E.g. ci-overcloud.tripleo.org
88 ControllerExtraConfig:
91 Controller specific hiera configuration data to inject into the cluster.
93 ControlVirtualInterface:
95 description: Interface where virtual ip will be assigned.
99 description: Set to True to enable debugging on all services.
103 description: Whether to enable fencing in Pacemaker or not.
107 description: Whether to use Galera instead of regular MariaDB.
111 description: Whether to deploy Ceph Storage (OSD) on the Controller
115 description: Whether to enable Swift Storage on the Controller
120 Additional hieradata to inject into the cluster, note that
121 ControllerExtraConfig takes precedence over ExtraConfig.
126 Pacemaker fencing configuration. The JSON should have
127 the following structure:
131 "agent": "AGENT_NAME",
132 "host_mac": "HOST_MAC_ADDRESS",
133 "params": {"PARAM_NAME": "PARAM_VALUE"}
141 "agent": "fence_xvm",
142 "host_mac": "52:54:00:aa:bb:cc",
144 "multicast_address": "225.0.0.12",
145 "port": "baremetal_0",
147 "manage_key_file": true,
148 "key_file": "/etc/fence_xvm.key",
149 "key_file_password": "abcdef"
156 description: Flavor for control nodes to request when deploying.
159 - custom_constraint: nova.flavor
160 GlanceNotifierStrategy:
161 description: Strategy to use for Glance notification queue
165 description: The filepath of the file to use for logging messages from Glance.
170 description: The password for the glance service and db account, used by the glance services.
175 description: The short name of the Glance backend to use. Should be one
176 of swift, rbd, or file
179 - allowed_values: ['swift', 'file', 'rbd']
180 GlanceFilePcmkDevice:
183 An exported storage device that should be mounted by Pacemaker
184 as Glance storage. Effective when GlanceFilePcmkManage is true.
186 GlanceFilePcmkFstype:
189 Filesystem type for Pacemaker mount used as Glance storage.
190 Effective when GlanceFilePcmkManage is true.
192 GlanceFilePcmkManage:
195 Whether to make Glance file backend a mount managed by Pacemaker.
196 Effective when GlanceBackend is 'file'.
198 GlanceFilePcmkOptions:
201 Mount options for Pacemaker mount used as Glance storage.
202 Effective when GlanceFilePcmkManage is true.
204 HAProxySyslogAddress:
206 description: Syslog address where HAproxy will send its log
210 description: The password for the Heat service and db account, used by the Heat services.
213 HeatStackDomainAdminPassword:
214 description: Password for heat_domain_admin user.
218 HeatAuthEncryptionKey:
219 description: Auth encryption key for heat-engine
224 description: A list of IP/Hostname allowed to connect to horizon
225 type: comma_delimited_list
227 description: Secret key for Django
232 default: overcloud-control
234 - custom_constraint: glance.image
236 default: 'REBUILD_PRESERVE_EPHEMERAL'
237 description: What policy to use when reconstructing instances. REBUILD for rebuilds, REBUILD_PRESERVE_EPHEMERAL to preserve /mnt.
241 description: Name of an existing EC2 KeyPair to enable SSH access to the instances
244 - custom_constraint: nova.keypair
245 KeystoneCACertificate:
247 description: Keystone self-signed certificate authority certificate.
249 KeystoneSigningCertificate:
251 description: Keystone certificate for verifying token validity.
255 description: Keystone key for signing tokens.
258 KeystoneSSLCertificate:
260 description: Keystone certificate for verifying token validity.
262 KeystoneSSLCertificateKey:
264 description: Keystone key for signing tokens.
267 KeystoneNotificationDriver:
268 description: Comma-separated list of Oslo notification drivers used by Keystone
269 default: ['messaging']
270 type: comma_delimited_list
271 KeystoneNotificationFormat:
272 description: The Keystone notification format
276 - allowed_values: [ 'basic', 'cadf' ]
280 description: Keystone region for endpoint
283 description: Whether to manage IPtables rules.
287 description: Whether IPtables rules should be purged before setting up the new ones.
289 MysqlClusterUniquePart:
290 description: A unique identifier of the MySQL cluster the controller is in.
292 default: 'unset' # Has to be here because of the ignored empty value bug
293 # Drop the validation: https://bugs.launchpad.net/tripleo/+bug/1405446
295 # - length: {min: 4, max: 10}
296 MysqlInnodbBufferPoolSize:
298 Specifies the size of the buffer pool in megabytes. Setting to
299 zero should be interpreted as "no value" and will defer to the
304 description: Configures MySQL max_connections config setting
310 default: '' # Has to be here because of the ignored empty value bug
311 NeutronExternalNetworkBridge:
312 description: Name of bridge used for external network traffic.
315 NeutronBridgeMappings:
317 The OVS logical->physical bridge mappings to use. See the Neutron
318 documentation for details. Defaults to mapping br-ex - the external
319 bridge on hosts - to a physical name 'datacentre' which can be used
320 to create provider networks (and we use this for the default floating
321 network) - if changing this either use different post-install network
322 scripts or be sure to keep 'datacentre' as a mapping network name.
324 default: "datacentre:br-ex"
325 NeutronDnsmasqOptions:
326 default: 'dhcp-option-force=26,1400'
327 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.
331 description: Agent mode for the neutron-l3-agent on the controller hosts
335 description: Whether to enable l3-agent HA
337 NeutronDhcpAgentsPerNetwork:
340 description: The number of neutron dhcp agents to schedule per network
343 description: Whether to configure Neutron Distributed Virtual Routers
345 NeutronMetadataProxySharedSecret:
347 description: Shared secret to prevent spoofing
353 The core plugin for Neutron. The value should be the entrypoint to be loaded
354 from neutron.core_plugins namespace.
356 NeutronServicePlugins:
359 Comma-separated list of service plugin entrypoints to be loaded from the
360 neutron.service_plugins namespace.
361 type: comma_delimited_list
363 default: "vxlan,vlan,flat,gre"
365 Comma-separated list of network type driver entrypoints to be loaded.
366 type: comma_delimited_list
367 NeutronMechanismDrivers:
368 default: 'openvswitch'
370 The mechanism drivers for the Neutron tenant network. To specify multiple
371 values, use a comma separated string, like so: 'openvswitch,l2_population'
373 NeutronAllowL3AgentFailover:
375 description: Allow automatic l3-agent failover
377 NeutronEnableIsolatedMetadata:
379 description: If True, DHCP provide metadata route to VM.
381 NeutronEnableTunnelling:
387 Enable/disable the L2 population feature in the Neutron agents.
391 default: 'datacentre'
392 description: If set, flat networks to configure in neutron plugins.
395 description: Whether to enable l3-agent HA
399 description: The tenant network type for Neutron, either gre or vxlan.
401 NeutronNetworkVLANRanges:
402 default: 'datacentre'
404 The Neutron ML2 and OpenVSwitch vlan mapping range to support. See the
405 Neutron documentation for permitted values. Defaults to permitting any
406 VLAN on the 'datacentre' physical network (See NeutronBridgeMappings).
407 type: comma_delimited_list
410 description: The password for the neutron service and db account, used by neutron agents.
413 NeutronPublicInterface:
415 description: What interface to bridge onto br-ex for network nodes.
417 NeutronPublicInterfaceTag:
420 VLAN tag for creating a public VLAN. The tag will be used to
421 create an access port on the exterior bridge for each control plane node,
422 and that port will be given the IP address returned by neutron from the
423 public network. Set CONTROLEXTRA=overcloud-vlan-port.yaml when compiling
424 overcloud.yaml to include the deployment of VLAN ports to the control
427 NeutronPublicInterfaceDefaultRoute:
429 description: A custom default route for the NeutronPublicInterface.
431 NeutronPublicInterfaceIP:
433 description: A custom IP address to put onto the NeutronPublicInterface.
435 NeutronPublicInterfaceRawDevice:
437 description: If set, the public interface is a vlan with this device as the raw device.
442 The tunnel types for the Neutron tenant network. To specify multiple
443 values, use a comma separated string, like so: 'gre,vxlan'
445 NeutronTunnelIdRanges:
447 Comma-separated list of <tun_min>:<tun_max> tuples enumerating ranges
448 of GRE tunnel IDs that are available for tenant network allocation
449 default: ["1:1000", ]
450 type: comma_delimited_list
453 Comma-separated list of <vni_min>:<vni_max> tuples enumerating ranges
454 of VXLAN VNI IDs that are available for tenant network allocation
455 default: ["1:1000", ]
456 type: comma_delimited_list
462 description: The password for the nova service and db account, used by nova-api.
467 description: Should MongoDb journaling be disabled
471 description: Comma-separated list of ntp servers
472 type: comma_delimited_list
475 description: The password for the 'pcsd' user.
477 PublicVirtualInterface:
480 Specifies the interface where the public-facing virtual ip will be assigned.
481 This should be int_public when a VLAN is being used.
485 default: '' # Has to be here because of the ignored empty value bug
488 default: '' # Has to be here because of the ignored empty value bug
492 description: The password for RabbitMQ
497 description: The username for RabbitMQ
502 Rabbit client subscriber parameter to specify
503 an SSL connection to the RabbitMQ host.
507 description: Set rabbit subscriber port, change this if using SSL
511 description: Configures RabbitMQ FD limit
515 default: '' # Has to be here because of the ignored empty value bug
516 SnmpdReadonlyUserName:
517 default: ro_snmp_user
518 description: The user name for SNMPd with readonly rights running on all Overcloud nodes
520 SnmpdReadonlyUserPassword:
522 description: The user password for SNMPd with readonly rights running on all Overcloud nodes
527 description: If set, the contents of an SSL certificate authority file.
531 description: If set, the contents of an SSL certificate .crt file for encrypting SSL endpoints.
536 description: If set, the contents of an SSL certificate .key file for encrypting SSL endpoints.
541 description: A random string to be used as a salt when hashing to determine mappings
547 description: Value of mount_check in Swift account/container/object -server.conf
552 description: The minimum time (in hours) before a partition in a ring can be moved following a rebalance.
555 description: Partition Power to use when building Swift rings
559 description: The password for the swift service account, used by the swift proxy
569 description: How many replicas to use in the swift rings.
570 VirtualIP: # DEPRECATED: use per service settings instead
572 default: '' # Has to be here because of the ignored empty value bug
579 GlanceRegistryVirtualIP:
585 KeystoneAdminApiVirtualIP:
588 KeystonePublicApiVirtualIP:
594 EnablePackageInstall:
596 description: Set to true to enable package installation via Puppet
600 description: Mapping of service_name -> network name. Typically set
601 via parameter_defaults in the resource registry.
605 description: Mapping of service endpoint -> protocol. Typically set
606 via parameter_defaults in the resource registry.
612 Setting to a previously unused value during stack-update will trigger
613 package update on all nodes
616 default: '' # Defaults to Heat created hostname
617 NetworkDeploymentActions:
618 type: comma_delimited_list
620 Heat action when to apply network configuration changes
626 type: OS::Nova::Server
628 image: {get_param: Image}
629 image_update_policy: {get_param: ImageUpdatePolicy}
630 flavor: {get_param: Flavor}
631 key_name: {get_param: KeyName}
634 user_data_format: SOFTWARE_CONFIG
635 user_data: {get_resource: UserData}
636 name: {get_param: Hostname}
638 # Combine the NodeAdminUserData and NodeUserData mime archives
640 type: OS::Heat::MultipartMime
643 - config: {get_resource: NodeAdminUserData}
645 - config: {get_resource: NodeUserData}
648 # Creates the "heat-admin" user if configured via the environment
649 # Should return a OS::Heat::MultipartMime reference via OS::stack_id
651 type: OS::TripleO::NodeAdminUserData
653 # For optional operator additional userdata
654 # Should return a OS::Heat::MultipartMime reference via OS::stack_id
656 type: OS::TripleO::NodeUserData
659 type: OS::TripleO::Controller::Ports::ExternalPort
661 ControlPlaneIP: {get_attr: [Controller, networks, ctlplane, 0]}
664 type: OS::TripleO::Controller::Ports::InternalApiPort
666 ControlPlaneIP: {get_attr: [Controller, networks, ctlplane, 0]}
669 type: OS::TripleO::Controller::Ports::StoragePort
671 ControlPlaneIP: {get_attr: [Controller, networks, ctlplane, 0]}
674 type: OS::TripleO::Controller::Ports::StorageMgmtPort
676 ControlPlaneIP: {get_attr: [Controller, networks, ctlplane, 0]}
679 type: OS::TripleO::Controller::Ports::TenantPort
681 ControlPlaneIP: {get_attr: [Controller, networks, ctlplane, 0]}
684 type: OS::TripleO::Network::Ports::NetIpMap
686 ControlPlaneIp: {get_attr: [Controller, networks, ctlplane, 0]}
687 ExternalIp: {get_attr: [ExternalPort, ip_address]}
688 InternalApiIp: {get_attr: [InternalApiPort, ip_address]}
689 StorageIp: {get_attr: [StoragePort, ip_address]}
690 StorageMgmtIp: {get_attr: [StorageMgmtPort, ip_address]}
691 TenantIp: {get_attr: [TenantPort, ip_address]}
694 type: OS::TripleO::Network::Ports::NetIpSubnetMap
696 ControlPlaneIp: {get_attr: [Controller, networks, ctlplane, 0]}
697 ExternalIpSubnet: {get_attr: [ExternalPort, ip_subnet]}
698 InternalApiIpSubnet: {get_attr: [InternalApiPort, ip_subnet]}
699 StorageIpSubnet: {get_attr: [StoragePort, ip_subnet]}
700 StorageMgmtIpSubnet: {get_attr: [StorageMgmtPort, ip_subnet]}
701 TenantIpSubnet: {get_attr: [TenantPort, ip_subnet]}
704 type: OS::TripleO::Controller::Net::SoftwareConfig
706 ControlPlaneIp: {get_attr: [Controller, networks, ctlplane, 0]}
707 ExternalIpSubnet: {get_attr: [ExternalPort, ip_subnet]}
708 InternalApiIpSubnet: {get_attr: [InternalApiPort, ip_subnet]}
709 StorageIpSubnet: {get_attr: [StoragePort, ip_subnet]}
710 StorageMgmtIpSubnet: {get_attr: [StorageMgmtPort, ip_subnet]}
711 TenantIpSubnet: {get_attr: [TenantPort, ip_subnet]}
714 type: OS::TripleO::SoftwareDeployment
716 config: {get_resource: NetworkConfig}
717 server: {get_resource: Controller}
718 actions: {get_param: NetworkDeploymentActions}
721 interface_name: {get_param: NeutronPublicInterface}
723 ControllerDeployment:
724 type: OS::TripleO::SoftwareDeployment
725 depends_on: NetworkDeployment
727 config: {get_resource: ControllerConfig}
728 server: {get_resource: Controller}
730 bootstack_nodeid: {get_attr: [Controller, name]}
731 neutron_enable_tunneling: {get_param: NeutronEnableTunnelling}
732 neutron_enable_l2pop: {get_param: NeutronEnableL2Pop}
733 neutron_enable_isolated_metadata: {get_param: NeutronEnableIsolatedMetadata}
734 haproxy_log_address: {get_param: HAProxySyslogAddress}
735 heat.watch_server_url:
739 - {get_param: HeatApiVirtualIP}
741 heat.metadata_server_url:
745 - {get_param: HeatApiVirtualIP}
747 heat.waitcondition_server_url:
751 - {get_param: HeatApiVirtualIP}
752 - ':8000/v1/waitcondition'
753 heat_auth_encryption_key: {get_param: HeatAuthEncryptionKey}
754 horizon_allowed_hosts: {get_param: HorizonAllowedHosts}
755 horizon_secret: {get_param: HorizonSecret}
756 admin_email: {get_param: AdminEmail}
757 admin_password: {get_param: AdminPassword}
758 admin_token: {get_param: AdminToken}
759 neutron_public_interface_ip: {get_param: NeutronPublicInterfaceIP}
760 debug: {get_param: Debug}
761 cinder_enable_nfs_backend: {get_param: CinderEnableNfsBackend}
762 cinder_enable_rbd_backend: {get_param: CinderEnableRbdBackend}
763 cinder_nfs_mount_options: {get_param: CinderNfsMountOptions}
766 template: "['SERVERS']"
771 - {get_param: CinderNfsServers}
772 cinder_lvm_loop_device_size: {get_param: CinderLVMLoopDeviceSize}
773 cinder_password: {get_param: CinderPassword}
774 cinder_enable_iscsi_backend: {get_param: CinderEnableIscsiBackend}
775 cinder_iscsi_helper: {get_param: CinderISCSIHelper}
776 cinder_backend_config: {get_param: CinderBackendConfig}
780 - - 'mysql://cinder:'
781 - {get_param: CinderPassword}
783 - {get_param: MysqlVirtualIP}
785 glance_port: {get_param: [EndpointMap, GlanceInternal, port]}
786 glance_password: {get_param: GlancePassword}
787 glance_backend: {get_param: GlanceBackend}
788 glance_file_pcmk_device: {get_param: GlanceFilePcmkDevice}
789 glance_file_pcmk_fstype: {get_param: GlanceFilePcmkFstype}
790 glance_file_pcmk_manage: {get_param: GlanceFilePcmkManage}
791 glance_file_pcmk_options: {get_param: GlanceFilePcmkOptions}
792 glance_notifier_strategy: {get_param: GlanceNotifierStrategy}
793 glance_log_file: {get_param: GlanceLogFile}
797 - - 'mysql://glance:'
798 - {get_param: GlancePassword}
800 - {get_param: MysqlVirtualIP}
802 heat_password: {get_param: HeatPassword}
803 heat_stack_domain_admin_password: {get_param: HeatStackDomainAdminPassword}
808 - {get_param: HeatPassword}
810 - {get_param: MysqlVirtualIP}
812 keystone_ca_certificate: {get_param: KeystoneCACertificate}
813 keystone_signing_key: {get_param: KeystoneSigningKey}
814 keystone_signing_certificate: {get_param: KeystoneSigningCertificate}
815 keystone_ssl_certificate: {get_param: KeystoneSSLCertificate}
816 keystone_ssl_certificate_key: {get_param: KeystoneSSLCertificateKey}
817 keystone_notification_driver: {get_param: KeystoneNotificationDriver}
818 keystone_notification_format: {get_param: KeystoneNotificationFormat}
822 - - 'mysql://keystone:'
823 - {get_param: AdminToken}
825 - {get_param: MysqlVirtualIP}
827 keystone_identity_uri: { get_param: [EndpointMap, KeystoneAdmin, uri_no_suffix] }
828 keystone_auth_uri: {get_param: [EndpointMap, KeystoneInternal, uri] }
829 keystone_public_url: { get_param: [EndpointMap, KeystonePublic, uri_no_suffix] }
830 keystone_internal_url: { get_param: [EndpointMap, KeystoneInternal, uri_no_suffix] }
831 keystone_ec2_uri: { get_param: [EndpointMap, KeystoneEC2, uri] }
832 enable_fencing: {get_param: EnableFencing}
833 enable_galera: {get_param: EnableGalera}
834 enable_ceph_storage: {get_param: EnableCephStorage}
835 enable_swift_storage: {get_param: EnableSwiftStorage}
836 manage_firewall: {get_param: ManageFirewall}
837 purge_firewall_rules: {get_param: PurgeFirewallRules}
838 mysql_innodb_buffer_pool_size: {get_param: MysqlInnodbBufferPoolSize}
839 mysql_max_connections: {get_param: MysqlMaxConnections}
840 mysql_root_password: {get_param: MysqlRootPassword}
843 template: tripleo-CLUSTER
845 CLUSTER: {get_param: MysqlClusterUniquePart}
846 neutron_flat_networks: {get_param: NeutronFlatNetworks}
847 neutron_metadata_proxy_shared_secret: {get_param: NeutronMetadataProxySharedSecret}
848 neutron_agent_mode: {get_param: NeutronAgentMode}
849 neutron_router_distributed: {get_param: NeutronDVR}
850 neutron_core_plugin: {get_param: NeutronCorePlugin}
851 neutron_service_plugins:
853 template: "['PLUGINS']"
858 - {get_param: NeutronServicePlugins}
859 neutron_type_drivers:
861 template: "['DRIVERS']"
866 - {get_param: NeutronTypeDrivers}
867 neutron_mechanism_drivers: {get_param: NeutronMechanismDrivers}
868 neutron_allow_l3agent_failover: {get_param: NeutronAllowL3AgentFailover}
869 neutron_l3_ha: {get_param: NeutronL3HA}
870 neutron_dhcp_agents_per_network: {get_param: NeutronDhcpAgentsPerNetwork}
871 neutron_network_vlan_ranges:
873 template: "['RANGES']"
878 - {get_param: NeutronNetworkVLANRanges}
879 neutron_bridge_mappings: {get_param: NeutronBridgeMappings}
880 neutron_external_network_bridge: {get_param: NeutronExternalNetworkBridge}
881 neutron_public_interface: {get_param: NeutronPublicInterface}
882 neutron_public_interface_raw_device: {get_param: NeutronPublicInterfaceRawDevice}
883 neutron_public_interface_default_route: {get_param: NeutronPublicInterfaceDefaultRoute}
884 neutron_public_interface_tag: {get_param: NeutronPublicInterfaceTag}
885 neutron_tenant_network_type: {get_param: NeutronNetworkType}
886 neutron_tunnel_types: {get_param: NeutronTunnelTypes}
887 neutron_tunnel_id_ranges:
889 template: "['RANGES']"
894 - {get_param: NeutronTunnelIdRanges}
897 template: "['RANGES']"
902 - {get_param: NeutronVniRanges}
903 neutron_password: {get_param: NeutronPassword}
904 neutron_dnsmasq_options: {get_param: NeutronDnsmasqOptions}
908 - - 'mysql://neutron:'
909 - {get_param: NeutronPassword}
911 - {get_param: MysqlVirtualIP}
912 - '/ovs_neutron?charset=utf8'
913 neutron_internal_url: { get_param: [ EndpointMap, NeutronInternal, uri ] }
914 neutron_public_url: { get_param: [ EndpointMap, NeutronPublic, uri ] }
915 neutron_admin_url: { get_param: [ EndpointMap, NeutronAdmin, uri ] }
916 neutron_admin_auth_url: { get_param: [ EndpointMap, KeystoneAdmin, uri ] }
917 nova_internal_url: { get_param: [ EndpointMap, NovaInternal, uri ] }
918 ceilometer_backend: {get_param: CeilometerBackend}
919 ceilometer_metering_secret: {get_param: CeilometerMeteringSecret}
920 ceilometer_password: {get_param: CeilometerPassword}
921 ceilometer_coordination_url:
925 - {get_param: RedisVirtualIP}
930 - - 'mysql://ceilometer:'
931 - {get_param: CeilometerPassword}
933 - {get_param: MysqlVirtualIP}
935 snmpd_readonly_user_name: {get_param: SnmpdReadonlyUserName}
936 snmpd_readonly_user_password: {get_param: SnmpdReadonlyUserPassword}
937 nova_password: {get_param: NovaPassword}
942 - {get_param: NovaPassword}
944 - {get_param: MysqlVirtualIP}
946 fencing_config: {get_param: FencingConfig}
947 pcsd_password: {get_param: PcsdPassword}
948 rabbit_username: {get_param: RabbitUserName}
949 rabbit_password: {get_param: RabbitPassword}
950 rabbit_cookie: {get_param: RabbitCookie}
951 rabbit_client_use_ssl: {get_param: RabbitClientUseSSL}
952 rabbit_client_port: {get_param: RabbitClientPort}
953 mongodb_no_journal: {get_param: MongoDbNoJournal}
954 # We need to force this into quotes or hiera will return integer causing
955 # the puppet module validation regexp to fail.
956 # Remove when: https://github.com/puppetlabs/puppetlabs-rabbitmq/pull/401
961 LIMIT: {get_param: RabbitFDLimit}
962 ntp_servers: {get_param: NtpServer}
963 control_virtual_interface: {get_param: ControlVirtualInterface}
964 public_virtual_interface: {get_param: PublicVirtualInterface}
965 swift_hash_suffix: {get_param: SwiftHashSuffix}
966 swift_password: {get_param: SwiftPassword}
967 swift_part_power: {get_param: SwiftPartPower}
968 swift_replicas: {get_param: SwiftReplicas}
969 swift_min_part_hours: {get_param: SwiftMinPartHours}
970 swift_mount_check: {get_param: SwiftMountCheck}
971 enable_package_install: {get_param: EnablePackageInstall}
972 enable_package_upgrade: {get_attr: [UpdateDeployment, update_managed_packages]}
973 swift_proxy_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, SwiftProxyNetwork]}]}
974 swift_management_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, SwiftMgmtNetwork]}]}
975 cinder_iscsi_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, CinderIscsiNetwork]}]}
976 cinder_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, CinderApiNetwork]}]}
977 glance_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, GlanceApiNetwork]}]}
978 glance_registry_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, GlanceRegistryNetwork]}]}
979 glance_api_servers: { get_param: [EndpointMap, GlanceInternal, uri]}
980 glance_registry_host: {get_param: GlanceRegistryVirtualIP}
981 heat_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, HeatApiNetwork]}]}
982 keystone_public_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, KeystonePublicApiNetwork]}]}
983 keystone_admin_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, KeystoneAdminApiNetwork]}]}
984 keystone_region: {get_param: KeystoneRegion}
985 mongo_db_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, MongoDbNetwork]}]}
986 neutron_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, NeutronApiNetwork]}]}
987 neutron_local_ip: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, NeutronTenantNetwork]}]}
988 ceilometer_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, CeilometerApiNetwork]}]}
989 nova_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, NovaApiNetwork]}]}
990 nova_metadata_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, NovaMetadataNetwork]}]}
991 horizon_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, HorizonNetwork]}]}
992 rabbitmq_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, RabbitMqNetwork]}]}
993 redis_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, RedisNetwork]}]}
994 redis_vip: {get_param: RedisVirtualIP}
995 memcached_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, MemcachedNetwork]}]}
996 mysql_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, MysqlNetwork]}]}
997 mysql_virtual_ip: {get_param: MysqlVirtualIP}
998 ceph_cluster_network: {get_attr: [NetIpSubnetMap, net_ip_subnet_map, {get_param: [ServiceNetMap, CephClusterNetwork]}]}
999 ceph_public_network: {get_attr: [NetIpSubnetMap, net_ip_subnet_map, {get_param: [ServiceNetMap, CephPublicNetwork]}]}
1000 ceph_public_ip: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, CephPublicNetwork]}]}
1002 # Map heat metadata into hiera datafiles
1004 type: OS::Heat::StructuredConfig
1006 group: os-apply-config
1011 - heat_config_%{::deploy_config_name}
1012 - controller_extraconfig
1017 - swift_devices_and_proxy # provided by SwiftDevicesAndProxyConfig
1018 - ceph_cluster # provided by CephClusterConfig
1020 - bootstrap_node # provided by BootstrapNodeConfig
1021 - all_nodes # provided by allNodesConfig
1022 - vip_data # provided by vip-config
1025 - cinder_netapp_data # Optionally provided by ControllerExtraConfigPre
1026 - neutron_bigswitch_data # Optionally provided by ControllerExtraConfigPre
1027 - neutron_cisco_data # Optionally provided by ControllerExtraConfigPre
1028 - cisco_n1kv_data # Optionally provided by ControllerExtraConfigPre
1030 controller_extraconfig:
1031 mapped_data: {get_param: ControllerExtraConfig}
1033 mapped_data: {get_param: ExtraConfig}
1035 raw_data: {get_file: hieradata/common.yaml}
1037 raw_data: {get_file: hieradata/ceph.yaml}
1039 ceph::profile::params::cluster_network: {get_input: ceph_cluster_network}
1040 ceph::profile::params::public_network: {get_input: ceph_public_network}
1041 ceph::mon::public_addr: {get_input: ceph_public_ip}
1043 raw_data: {get_file: hieradata/database.yaml}
1045 raw_data: {get_file: hieradata/object.yaml}
1047 raw_data: {get_file: hieradata/controller.yaml}
1048 mapped_data: # data supplied directly to this deployment configuration, etc
1049 bootstack_nodeid: {get_input: bootstack_nodeid}
1052 enable_fencing: {get_input: enable_fencing}
1053 hacluster_pwd: {get_input: pcsd_password}
1054 tripleo::fencing::config: {get_input: fencing_config}
1057 swift::proxy::proxy_local_net_ip: {get_input: swift_proxy_network}
1058 swift::proxy::authtoken::auth_uri: {get_input: keystone_auth_uri}
1059 swift::proxy::authtoken::identity_uri: {get_input: keystone_identity_uri}
1060 swift::storage::all::storage_local_net_ip: {get_input: swift_management_network}
1061 swift::swift_hash_suffix: {get_input: swift_hash_suffix}
1062 swift::proxy::authtoken::admin_password: {get_input: swift_password}
1063 tripleo::ringbuilder::part_power: {get_input: swift_part_power}
1064 tripleo::ringbuilder::replicas: {get_input: swift_replicas}
1065 tripleo::ringbuilder::min_part_hours: {get_input: swift_min_part_hours}
1066 swift_mount_check: {get_input: swift_mount_check}
1068 # NOTE(dprince): build_ring support is currently not wired in.
1069 # See: https://review.openstack.org/#/c/109225/
1070 tripleo::ringbuilder::build_ring: True
1073 cinder_enable_nfs_backend: {get_input: cinder_enable_nfs_backend}
1074 cinder_enable_rbd_backend: {get_input: cinder_enable_rbd_backend}
1075 cinder_nfs_mount_options: {get_input: cinder_nfs_mount_options}
1076 cinder_nfs_servers: {get_input: cinder_nfs_servers}
1077 cinder_lvm_loop_device_size: {get_input: cinder_lvm_loop_device_size}
1078 cinder_iscsi_helper: {get_input: cinder_iscsi_helper}
1079 cinder_iscsi_ip_address: {get_input: cinder_iscsi_network}
1080 cinder::database_connection: {get_input: cinder_dsn}
1081 cinder::api::keystone_password: {get_input: cinder_password}
1082 cinder::api::auth_uri: {get_input: keystone_auth_uri}
1083 cinder::api::identity_uri: {get_input: keystone_identity_uri}
1084 cinder::api::bind_host: {get_input: cinder_api_network}
1085 cinder::rabbit_userid: {get_input: rabbit_username}
1086 cinder::rabbit_password: {get_input: rabbit_password}
1087 cinder::rabbit_use_ssl: {get_input: rabbit_client_use_ssl}
1088 cinder::rabbit_port: {get_input: rabbit_client_port}
1089 cinder::debug: {get_input: debug}
1090 cinder_enable_iscsi_backend: {get_input: cinder_enable_iscsi_backend}
1091 cinder::glance::glance_api_servers: {get_input: glance_api_servers}
1092 cinder_backend_config: {get_input: CinderBackendConfig}
1093 cinder::db::mysql::password: {get_input: cinder_password}
1096 glance::api::bind_port: {get_input: glance_port}
1097 glance::api::bind_host: {get_input: glance_api_network}
1098 glance::api::auth_uri: {get_input: keystone_auth_uri}
1099 glance::api::identity_uri: {get_input: keystone_identity_uri}
1100 glance::api::registry_host: {get_input: glance_registry_host}
1101 glance::api::keystone_password: {get_input: glance_password}
1102 glance::api::debug: {get_input: debug}
1103 glance_notifier_strategy: {get_input: glance_notifier_strategy}
1104 glance_log_file: {get_input: glance_log_file}
1105 glance_log_file: {get_input: glance_log_file}
1106 glance::api::database_connection: {get_input: glance_dsn}
1107 glance::registry::keystone_password: {get_input: glance_password}
1108 glance::registry::database_connection: {get_input: glance_dsn}
1109 glance::registry::bind_host: {get_input: glance_registry_network}
1110 glance::registry::auth_uri: {get_input: keystone_auth_uri}
1111 glance::registry::identity_uri: {get_input: keystone_identity_uri}
1112 glance::registry::debug: {get_input: debug}
1113 glance::backend::swift::swift_store_auth_address: {get_input: keystone_auth_uri}
1114 glance::backend::swift::swift_store_user: service:glance
1115 glance::backend::swift::swift_store_key: {get_input: glance_password}
1116 glance_backend: {get_input: glance_backend}
1117 glance::db::mysql::password: {get_input: glance_password}
1118 glance_file_pcmk_device: {get_input: glance_file_pcmk_device}
1119 glance_file_pcmk_fstype: {get_input: glance_file_pcmk_fstype}
1120 glance_file_pcmk_manage: {get_input: glance_file_pcmk_manage}
1121 glance_file_pcmk_options: {get_input: glance_file_pcmk_options}
1124 heat_stack_domain_admin_password: {get_input: heat_stack_domain_admin_password}
1125 heat::engine::heat_watch_server_url: {get_input: heat.watch_server_url}
1126 heat::engine::heat_metadata_server_url: {get_input: heat.metadata_server_url}
1127 heat::engine::heat_waitcondition_server_url: {get_input: heat.waitcondition_server_url}
1128 heat::engine::auth_encryption_key: {get_input: heat_auth_encryption_key}
1129 heat::rabbit_userid: {get_input: rabbit_username}
1130 heat::rabbit_password: {get_input: rabbit_password}
1131 heat::rabbit_use_ssl: {get_input: rabbit_client_use_ssl}
1132 heat::rabbit_port: {get_input: rabbit_client_port}
1133 heat::auth_uri: {get_input: keystone_auth_uri}
1134 heat::keystone_ec2_uri: {get_input: keystone_ec2_uri}
1135 heat::identity_uri: {get_input: keystone_identity_uri}
1136 heat::keystone_password: {get_input: heat_password}
1137 heat::api::bind_host: {get_input: heat_api_network}
1138 heat::api_cloudwatch::bind_host: {get_input: heat_api_network}
1139 heat::api_cfn::bind_host: {get_input: heat_api_network}
1140 heat::database_connection: {get_input: heat_dsn}
1141 heat::debug: {get_input: debug}
1142 heat::db::mysql::password: {get_input: heat_password}
1145 keystone::admin_token: {get_input: admin_token}
1146 keystone_ca_certificate: {get_input: keystone_ca_certificate}
1147 keystone_signing_key: {get_input: keystone_signing_key}
1148 keystone_signing_certificate: {get_input: keystone_signing_certificate}
1149 keystone_ssl_certificate: {get_input: keystone_ssl_certificate}
1150 keystone_ssl_certificate_key: {get_input: keystone_ssl_certificate_key}
1151 keystone::database_connection: {get_input: keystone_dsn}
1152 keystone::public_bind_host: {get_input: keystone_public_api_network}
1153 keystone::admin_bind_host: {get_input: keystone_admin_api_network}
1154 keystone::debug: {get_input: debug}
1155 keystone::db::mysql::password: {get_input: admin_token}
1156 keystone::rabbit_userid: {get_input: rabbit_username}
1157 keystone::rabbit_password: {get_input: rabbit_password}
1158 keystone::rabbit_use_ssl: {get_input: rabbit_client_use_ssl}
1159 keystone::rabbit_port: {get_input: rabbit_client_port}
1160 keystone::notification_driver: {get_input: keystone_notification_driver}
1161 keystone::notification_format: {get_input: keystone_notification_format}
1162 keystone::roles::admin::email: {get_input: admin_email}
1163 keystone::roles::admin::password: {get_input: admin_password}
1164 keystone::endpoint::public_url: {get_input: keystone_public_url}
1165 keystone::endpoint::internal_url: {get_input: keystone_internal_url}
1166 keystone::endpoint::admin_url: {get_input: keystone_identity_uri}
1167 keystone::endpoint::region: {get_input: keystone_region}
1169 mongodb::server::bind_ip: {get_input: mongo_db_network}
1170 mongodb::server::nojournal: {get_input: mongodb_no_journal}
1172 admin_password: {get_input: admin_password}
1173 enable_galera: {get_input: enable_galera}
1174 enable_ceph_storage: {get_input: enable_ceph_storage}
1175 enable_swift_storage: {get_input: enable_swift_storage}
1176 mysql_innodb_buffer_pool_size: {get_input: mysql_innodb_buffer_pool_size}
1177 mysql_max_connections: {get_input: mysql_max_connections}
1178 mysql::server::root_password: {get_input: mysql_root_password}
1179 mysql_cluster_name: {get_input: mysql_cluster_name}
1180 mysql_bind_host: {get_input: mysql_network}
1181 mysql_virtual_ip: {get_input: mysql_virtual_ip}
1184 neutron::bind_host: {get_input: neutron_api_network}
1185 neutron::rabbit_password: {get_input: rabbit_password}
1186 neutron::rabbit_user: {get_input: rabbit_username}
1187 neutron::rabbit_use_ssl: {get_input: rabbit_client_use_ssl}
1188 neutron::rabbit_port: {get_input: rabbit_client_port}
1189 neutron::debug: {get_input: debug}
1190 neutron::server::auth_uri: {get_input: keystone_auth_uri}
1191 neutron::server::identity_uri: {get_input: keystone_identity_uri}
1192 neutron::server::database_connection: {get_input: neutron_dsn}
1193 neutron::agents::l3::external_network_bridge: {get_input: neutron_external_network_bridge}
1194 neutron::agents::ml2::ovs::enable_tunneling: {get_input: neutron_enable_tunneling}
1195 neutron::agents::ml2::ovs::l2_population: {get_input: neutron_enable_l2pop}
1196 neutron::agents::dhcp::enable_isolated_metadata: {get_input: neutron_enable_isolated_metadata}
1197 neutron::agents::ml2::ovs::local_ip: {get_input: neutron_local_ip}
1198 neutron_flat_networks: {get_input: neutron_flat_networks}
1199 neutron::agents::metadata::shared_secret: {get_input: neutron_metadata_proxy_shared_secret}
1200 neutron::agents::metadata::metadata_ip: {get_input: neutron_api_network}
1201 neutron_agent_mode: {get_input: neutron_agent_mode}
1202 neutron_router_distributed: {get_input: neutron_router_distributed}
1203 neutron::core_plugin: {get_input: neutron_core_plugin}
1204 neutron::service_plugins: {get_input: neutron_service_plugins}
1205 neutron::plugins::ml2::type_drivers: {get_input: neutron_type_drivers}
1206 neutron_mechanism_drivers: {get_input: neutron_mechanism_drivers}
1207 neutron::server::allow_automatic_l3agent_failover: {get_input: neutron_allow_l3agent_failover}
1208 neutron::server::l3_ha: {get_input: neutron_l3_ha}
1209 neutron::dhcp_agents_per_network: {get_input: neutron_dhcp_agents_per_network}
1210 neutron::plugins::ml2::network_vlan_ranges: {get_input: neutron_network_vlan_ranges}
1211 neutron::plugins::ml2::tunnel_id_ranges: {get_input: neutron_tunnel_id_ranges}
1212 neutron::plugins::ml2::vni_ranges: {get_input: neutron_vni_ranges}
1213 neutron_bridge_mappings: {get_input: neutron_bridge_mappings}
1214 neutron_public_interface: {get_input: neutron_public_interface}
1215 neutron_public_interface_raw_device: {get_input: neutron_public_interface_raw_device}
1216 neutron_public_interface_default_route: {get_input: neutron_public_interface_default_route}
1217 neutron_public_interface_tag: {get_input: neutron_public_interface_tag}
1218 neutron_tenant_network_type: {get_input: neutron_tenant_network_type}
1219 neutron_tunnel_types: {get_input: neutron_tunnel_types}
1220 neutron::server::auth_password: {get_input: neutron_password}
1221 neutron::agents::metadata::auth_password: {get_input: neutron_password}
1222 neutron_dnsmasq_options: {get_input: neutron_dnsmasq_options}
1223 neutron_dsn: {get_input: neutron_dsn}
1224 neutron::agents::metadata::auth_url: {get_input: keystone_identity_uri}
1225 neutron::db::mysql::password: {get_input: neutron_password}
1226 neutron::keystone::auth::public_url: {get_input: neutron_public_url }
1227 neutron::keystone::auth::internal_url: {get_input: neutron_internal_url }
1228 neutron::keystone::auth::admin_url: {get_input: neutron_admin_url }
1229 neutron::keystone::auth::password: {get_input: neutron_password }
1230 neutron::keystone::auth::region: {get_input: keystone_region}
1231 neutron::server::notifications::nova_url: {get_input: nova_internal_url}
1232 neutron::server::notifications::auth_url: {get_input: neutron_admin_auth_url}
1233 neutron::server::notifications::tenant_name: 'service'
1234 neutron::server::notifications::password: {get_input: nova_password}
1237 ceilometer_backend: {get_input: ceilometer_backend}
1238 ceilometer_mysql_conn_string: {get_input: ceilometer_dsn}
1239 ceilometer::metering_secret: {get_input: ceilometer_metering_secret}
1240 ceilometer::rabbit_userid: {get_input: rabbit_username}
1241 ceilometer::rabbit_password: {get_input: rabbit_password}
1242 ceilometer::rabbit_use_ssl: {get_input: rabbit_client_use_ssl}
1243 ceilometer::rabbit_port: {get_input: rabbit_client_port}
1244 ceilometer::debug: {get_input: debug}
1245 ceilometer::api::host: {get_input: ceilometer_api_network}
1246 ceilometer::api::keystone_password: {get_input: ceilometer_password}
1247 ceilometer::api::keystone_auth_uri: {get_input: keystone_auth_uri}
1248 ceilometer::api::keystone_identity_uri: {get_input: keystone_identity_uri}
1249 ceilometer::agent::auth::auth_password: {get_input: ceilometer_password}
1250 ceilometer::agent::auth::auth_url: {get_input: keystone_auth_uri}
1251 ceilometer::agent::central::coordination_url: {get_input: ceilometer_coordination_url}
1252 ceilometer::db::mysql::password: {get_input: ceilometer_password}
1253 snmpd_readonly_user_name: {get_input: snmpd_readonly_user_name}
1254 snmpd_readonly_user_password: {get_input: snmpd_readonly_user_password}
1257 nova::rabbit_userid: {get_input: rabbit_username}
1258 nova::rabbit_password: {get_input: rabbit_password}
1259 nova::rabbit_use_ssl: {get_input: rabbit_client_use_ssl}
1260 nova::rabbit_port: {get_input: rabbit_client_port}
1261 nova::debug: {get_input: debug}
1262 nova::api::auth_uri: {get_input: keystone_auth_uri}
1263 nova::api::identity_uri: {get_input: keystone_identity_uri}
1264 nova::api::api_bind_address: {get_input: nova_api_network}
1265 nova::api::metadata_listen: {get_input: nova_metadata_network}
1266 nova::api::admin_password: {get_input: nova_password}
1267 nova::database_connection: {get_input: nova_dsn}
1268 nova::glance_api_servers: {get_input: glance_api_servers}
1269 nova::api::neutron_metadata_proxy_shared_secret: {get_input: neutron_metadata_proxy_shared_secret}
1270 nova::network::neutron::neutron_admin_password: {get_input: neutron_password}
1271 nova::network::neutron::neutron_url: {get_input: neutron_internal_url}
1272 nova::network::neutron::neutron_admin_auth_url: {get_input: neutron_admin_auth_url}
1273 nova::vncproxy::host: {get_input: nova_api_network}
1274 nova::db::mysql::password: {get_input: nova_password}
1277 apache::ip: {get_input: horizon_network}
1278 horizon::allowed_hosts: {get_input: horizon_allowed_hosts}
1279 horizon::django_debug: {get_input: debug}
1280 horizon::secret_key: {get_input: horizon_secret}
1281 horizon::bind_address: {get_input: horizon_network}
1282 horizon::keystone_url: {get_input: keystone_auth_uri}
1285 rabbitmq::node_ip_address: {get_input: rabbitmq_network}
1286 rabbitmq::erlang_cookie: {get_input: rabbit_cookie}
1287 rabbitmq::file_limit: {get_input: rabbit_fd_limit}
1288 rabbitmq::default_user: {get_input: rabbit_username}
1289 rabbitmq::default_pass: {get_input: rabbit_password}
1291 redis::bind: {get_input: redis_network}
1292 redis_vip: {get_input: redis_vip}
1294 tripleo::firewall::manage_firewall: {get_input: manage_firewall}
1295 tripleo::firewall::purge_firewall_rules: {get_input: purge_firewall_rules}
1297 memcached::listen_ip: {get_input: memcached_network}
1298 neutron_public_interface_ip: {get_input: neutron_public_interface_ip}
1299 ntp::servers: {get_input: ntp_servers}
1300 control_virtual_interface: {get_input: control_virtual_interface}
1301 public_virtual_interface: {get_input: public_virtual_interface}
1302 tripleo::loadbalancer::control_virtual_interface: {get_input: control_virtual_interface}
1303 tripleo::loadbalancer::public_virtual_interface: {get_input: public_virtual_interface}
1304 tripleo::loadbalancer::haproxy_log_address: {get_input: haproxy_log_address}
1305 tripleo::packages::enable_install: {get_input: enable_package_install}
1306 tripleo::packages::enable_upgrade: {get_input: enable_package_upgrade}
1308 # Hook for site-specific additional pre-deployment config, e.g extra hieradata
1309 ControllerExtraConfigPre:
1310 depends_on: ControllerDeployment
1311 type: OS::TripleO::ControllerExtraConfigPre
1313 server: {get_resource: Controller}
1315 # Hook for site-specific additional pre-deployment config,
1316 # applying to all nodes, e.g node registration/unregistration
1318 depends_on: ControllerExtraConfigPre
1319 type: OS::TripleO::NodeExtraConfig
1321 server: {get_resource: Controller}
1324 type: OS::TripleO::Tasks::PackageUpdate
1327 type: OS::Heat::SoftwareDeployment
1329 config: {get_resource: UpdateConfig}
1330 server: {get_resource: Controller}
1333 get_param: UpdateIdentifier
1337 description: IP address of the server in the ctlplane network
1338 value: {get_attr: [Controller, networks, ctlplane, 0]}
1339 external_ip_address:
1340 description: IP address of the server in the external network
1341 value: {get_attr: [ExternalPort, ip_address]}
1342 internal_api_ip_address:
1343 description: IP address of the server in the internal_api network
1344 value: {get_attr: [InternalApiPort, ip_address]}
1346 description: IP address of the server in the storage network
1347 value: {get_attr: [StoragePort, ip_address]}
1348 storage_mgmt_ip_address:
1349 description: IP address of the server in the storage_mgmt network
1350 value: {get_attr: [StorageMgmtPort, ip_address]}
1352 description: IP address of the server in the tenant network
1353 value: {get_attr: [TenantPort, ip_address]}
1355 description: Hostname of the server
1356 value: {get_attr: [Controller, name]}
1359 Node object in the format {ip: ..., name: ...} format that the corosync
1362 ip: {get_attr: [Controller, networks, ctlplane, 0]}
1363 name: {get_attr: [Controller, name]}
1366 Server's IP address and hostname in the /etc/hosts format
1369 template: IP HOST.localdomain HOST CLOUDNAME
1371 IP: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, ControllerHostnameResolveNetwork]}]}
1372 HOST: {get_attr: [Controller, name]}
1373 CLOUDNAME: {get_param: CloudName}
1374 nova_server_resource:
1375 description: Heat resource handle for the Nova compute server
1377 {get_resource: Controller}
1379 description: Swift device formatted for swift-ring-builder
1382 template: 'r1z1-IP:%PORT%/d1'
1384 IP: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, SwiftMgmtNetwork]}]}
1385 swift_proxy_memcache:
1386 description: Swift proxy-memcache value
1389 template: "IP:11211"
1391 IP: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, MemcachedNetwork]}]}
1393 description: identifier which changes if the controller configuration may need re-applying
1397 - - {get_attr: [ControllerDeployment, deploy_stdout]}
1398 - {get_attr: [ControllerExtraConfigPre, deploy_stdout]}
1399 - {get_param: UpdateIdentifier}