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
281 MysqlClusterUniquePart:
282 description: A unique identifier of the MySQL cluster the controller is in.
284 default: 'unset' # Has to be here because of the ignored empty value bug
285 # Drop the validation: https://bugs.launchpad.net/tripleo/+bug/1405446
287 # - length: {min: 4, max: 10}
288 MysqlInnodbBufferPoolSize:
290 Specifies the size of the buffer pool in megabytes. Setting to
291 zero should be interpreted as "no value" and will defer to the
296 description: Configures MySQL max_connections config setting
302 default: '' # Has to be here because of the ignored empty value bug
303 NeutronExternalNetworkBridge:
304 description: Name of bridge used for external network traffic.
307 NeutronBridgeMappings:
309 The OVS logical->physical bridge mappings to use. See the Neutron
310 documentation for details. Defaults to mapping br-ex - the external
311 bridge on hosts - to a physical name 'datacentre' which can be used
312 to create provider networks (and we use this for the default floating
313 network) - if changing this either use different post-install network
314 scripts or be sure to keep 'datacentre' as a mapping network name.
316 default: "datacentre:br-ex"
317 NeutronDnsmasqOptions:
318 default: 'dhcp-option-force=26,1400'
319 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.
323 description: Agent mode for the neutron-l3-agent on the controller hosts
327 description: Whether to enable l3-agent HA
329 NeutronDhcpAgentsPerNetwork:
332 description: The number of neutron dhcp agents to schedule per network
335 description: Whether to configure Neutron Distributed Virtual Routers
337 NeutronMetadataProxySharedSecret:
339 description: Shared secret to prevent spoofing
345 The core plugin for Neutron. The value should be the entrypoint to be loaded
346 from neutron.core_plugins namespace.
348 NeutronServicePlugins:
351 Comma-separated list of service plugin entrypoints to be loaded from the
352 neutron.service_plugins namespace.
353 type: comma_delimited_list
355 default: "vxlan,vlan,flat,gre"
357 Comma-separated list of network type driver entrypoints to be loaded.
358 type: comma_delimited_list
359 NeutronMechanismDrivers:
360 default: 'openvswitch'
362 The mechanism drivers for the Neutron tenant network. To specify multiple
363 values, use a comma separated string, like so: 'openvswitch,l2_population'
365 NeutronAllowL3AgentFailover:
367 description: Allow automatic l3-agent failover
369 NeutronEnableIsolatedMetadata:
371 description: If True, DHCP provide metadata route to VM.
373 NeutronEnableTunnelling:
379 Enable/disable the L2 population feature in the Neutron agents.
383 default: 'datacentre'
384 description: If set, flat networks to configure in neutron plugins.
387 description: Whether to enable l3-agent HA
391 description: The tenant network type for Neutron, either gre or vxlan.
393 NeutronNetworkVLANRanges:
394 default: 'datacentre'
396 The Neutron ML2 and OpenVSwitch vlan mapping range to support. See the
397 Neutron documentation for permitted values. Defaults to permitting any
398 VLAN on the 'datacentre' physical network (See NeutronBridgeMappings).
399 type: comma_delimited_list
402 description: The password for the neutron service and db account, used by neutron agents.
405 NeutronPublicInterface:
407 description: What interface to bridge onto br-ex for network nodes.
409 NeutronPublicInterfaceTag:
412 VLAN tag for creating a public VLAN. The tag will be used to
413 create an access port on the exterior bridge for each control plane node,
414 and that port will be given the IP address returned by neutron from the
415 public network. Set CONTROLEXTRA=overcloud-vlan-port.yaml when compiling
416 overcloud.yaml to include the deployment of VLAN ports to the control
419 NeutronPublicInterfaceDefaultRoute:
421 description: A custom default route for the NeutronPublicInterface.
423 NeutronPublicInterfaceIP:
425 description: A custom IP address to put onto the NeutronPublicInterface.
427 NeutronPublicInterfaceRawDevice:
429 description: If set, the public interface is a vlan with this device as the raw device.
434 The tunnel types for the Neutron tenant network. To specify multiple
435 values, use a comma separated string, like so: 'gre,vxlan'
437 NeutronTunnelIdRanges:
439 Comma-separated list of <tun_min>:<tun_max> tuples enumerating ranges
440 of GRE tunnel IDs that are available for tenant network allocation
441 default: ["1:1000", ]
442 type: comma_delimited_list
445 Comma-separated list of <vni_min>:<vni_max> tuples enumerating ranges
446 of VXLAN VNI IDs that are available for tenant network allocation
447 default: ["1:1000", ]
448 type: comma_delimited_list
454 description: The password for the nova service and db account, used by nova-api.
459 description: Should MongoDb journaling be disabled
463 description: Comma-separated list of ntp servers
464 type: comma_delimited_list
467 description: The password for the 'pcsd' user.
469 PublicVirtualInterface:
472 Specifies the interface where the public-facing virtual ip will be assigned.
473 This should be int_public when a VLAN is being used.
477 default: '' # Has to be here because of the ignored empty value bug
480 default: '' # Has to be here because of the ignored empty value bug
484 description: The password for RabbitMQ
489 description: The username for RabbitMQ
494 Rabbit client subscriber parameter to specify
495 an SSL connection to the RabbitMQ host.
499 description: Set rabbit subscriber port, change this if using SSL
503 description: Configures RabbitMQ FD limit
507 default: '' # Has to be here because of the ignored empty value bug
508 SnmpdReadonlyUserName:
509 default: ro_snmp_user
510 description: The user name for SNMPd with readonly rights running on all Overcloud nodes
512 SnmpdReadonlyUserPassword:
514 description: The user password for SNMPd with readonly rights running on all Overcloud nodes
519 description: A random string to be used as a salt when hashing to determine mappings
525 description: Value of mount_check in Swift account/container/object -server.conf
530 description: The minimum time (in hours) before a partition in a ring can be moved following a rebalance.
533 description: Partition Power to use when building Swift rings
537 description: The password for the swift service account, used by the swift proxy
547 description: How many replicas to use in the swift rings.
548 VirtualIP: # DEPRECATED: use per service settings instead
550 default: '' # Has to be here because of the ignored empty value bug
557 GlanceRegistryVirtualIP:
563 KeystoneAdminApiVirtualIP:
566 KeystonePublicApiVirtualIP:
572 EnablePackageInstall:
574 description: Set to true to enable package installation via Puppet
578 description: Mapping of service_name -> network name. Typically set
579 via parameter_defaults in the resource registry.
583 description: Mapping of service endpoint -> protocol. Typically set
584 via parameter_defaults in the resource registry.
590 Setting to a previously unused value during stack-update will trigger
591 package update on all nodes
594 default: '' # Defaults to Heat created hostname
595 NetworkDeploymentActions:
596 type: comma_delimited_list
598 Heat action when to apply network configuration changes
607 type: OS::Nova::Server
609 image: {get_param: Image}
610 image_update_policy: {get_param: ImageUpdatePolicy}
611 flavor: {get_param: Flavor}
612 key_name: {get_param: KeyName}
615 user_data_format: SOFTWARE_CONFIG
616 user_data: {get_resource: UserData}
617 name: {get_param: Hostname}
619 # Combine the NodeAdminUserData and NodeUserData mime archives
621 type: OS::Heat::MultipartMime
624 - config: {get_resource: NodeAdminUserData}
626 - config: {get_resource: NodeUserData}
629 # Creates the "heat-admin" user if configured via the environment
630 # Should return a OS::Heat::MultipartMime reference via OS::stack_id
632 type: OS::TripleO::NodeAdminUserData
634 # For optional operator additional userdata
635 # Should return a OS::Heat::MultipartMime reference via OS::stack_id
637 type: OS::TripleO::NodeUserData
640 type: OS::TripleO::Controller::Ports::ExternalPort
642 ControlPlaneIP: {get_attr: [Controller, networks, ctlplane, 0]}
645 type: OS::TripleO::Controller::Ports::InternalApiPort
647 ControlPlaneIP: {get_attr: [Controller, networks, ctlplane, 0]}
650 type: OS::TripleO::Controller::Ports::StoragePort
652 ControlPlaneIP: {get_attr: [Controller, networks, ctlplane, 0]}
655 type: OS::TripleO::Controller::Ports::StorageMgmtPort
657 ControlPlaneIP: {get_attr: [Controller, networks, ctlplane, 0]}
660 type: OS::TripleO::Controller::Ports::TenantPort
662 ControlPlaneIP: {get_attr: [Controller, networks, ctlplane, 0]}
665 type: OS::TripleO::Network::Ports::NetIpMap
667 ControlPlaneIp: {get_attr: [Controller, networks, ctlplane, 0]}
668 ExternalIp: {get_attr: [ExternalPort, ip_address]}
669 InternalApiIp: {get_attr: [InternalApiPort, ip_address]}
670 StorageIp: {get_attr: [StoragePort, ip_address]}
671 StorageMgmtIp: {get_attr: [StorageMgmtPort, ip_address]}
672 TenantIp: {get_attr: [TenantPort, ip_address]}
675 type: OS::TripleO::Network::Ports::NetIpSubnetMap
677 ControlPlaneIp: {get_attr: [Controller, networks, ctlplane, 0]}
678 ExternalIpSubnet: {get_attr: [ExternalPort, ip_subnet]}
679 InternalApiIpSubnet: {get_attr: [InternalApiPort, ip_subnet]}
680 StorageIpSubnet: {get_attr: [StoragePort, ip_subnet]}
681 StorageMgmtIpSubnet: {get_attr: [StorageMgmtPort, ip_subnet]}
682 TenantIpSubnet: {get_attr: [TenantPort, ip_subnet]}
685 type: OS::TripleO::Controller::Net::SoftwareConfig
687 ControlPlaneIp: {get_attr: [Controller, networks, ctlplane, 0]}
688 ExternalIpSubnet: {get_attr: [ExternalPort, ip_subnet]}
689 InternalApiIpSubnet: {get_attr: [InternalApiPort, ip_subnet]}
690 StorageIpSubnet: {get_attr: [StoragePort, ip_subnet]}
691 StorageMgmtIpSubnet: {get_attr: [StorageMgmtPort, ip_subnet]}
692 TenantIpSubnet: {get_attr: [TenantPort, ip_subnet]}
695 type: OS::TripleO::SoftwareDeployment
697 config: {get_resource: NetworkConfig}
698 server: {get_resource: Controller}
699 actions: {get_param: NetworkDeploymentActions}
702 interface_name: {get_param: NeutronPublicInterface}
704 # Resource for site-specific injection of root certificate
706 depends_on: NetworkDeployment
707 type: OS::TripleO::NodeTLSCAData
709 server: {get_resource: Controller}
711 # Hook for site-specific passing of private keys/certificates
713 depends_on: NodeTLSCAData
714 type: OS::TripleO::NodeTLSData
716 server: {get_resource: Controller}
717 NodeIndex: {get_param: NodeIndex}
719 ControllerDeployment:
720 type: OS::TripleO::SoftwareDeployment
721 depends_on: NetworkDeployment
723 config: {get_resource: ControllerConfig}
724 server: {get_resource: Controller}
726 bootstack_nodeid: {get_attr: [Controller, name]}
727 neutron_enable_tunneling: {get_param: NeutronEnableTunnelling}
728 neutron_enable_l2pop: {get_param: NeutronEnableL2Pop}
729 neutron_enable_isolated_metadata: {get_param: NeutronEnableIsolatedMetadata}
730 haproxy_log_address: {get_param: HAProxySyslogAddress}
731 heat.watch_server_url:
735 - {get_param: HeatApiVirtualIP}
737 heat.metadata_server_url:
741 - {get_param: HeatApiVirtualIP}
743 heat.waitcondition_server_url:
747 - {get_param: HeatApiVirtualIP}
748 - ':8000/v1/waitcondition'
749 heat_auth_encryption_key: {get_param: HeatAuthEncryptionKey}
750 horizon_allowed_hosts: {get_param: HorizonAllowedHosts}
751 horizon_secret: {get_param: HorizonSecret}
752 admin_email: {get_param: AdminEmail}
753 admin_password: {get_param: AdminPassword}
754 admin_token: {get_param: AdminToken}
755 neutron_public_interface_ip: {get_param: NeutronPublicInterfaceIP}
756 debug: {get_param: Debug}
757 cinder_enable_nfs_backend: {get_param: CinderEnableNfsBackend}
758 cinder_enable_rbd_backend: {get_param: CinderEnableRbdBackend}
759 cinder_nfs_mount_options: {get_param: CinderNfsMountOptions}
762 template: "['SERVERS']"
767 - {get_param: CinderNfsServers}
768 cinder_lvm_loop_device_size: {get_param: CinderLVMLoopDeviceSize}
769 cinder_password: {get_param: CinderPassword}
770 cinder_enable_iscsi_backend: {get_param: CinderEnableIscsiBackend}
771 cinder_iscsi_helper: {get_param: CinderISCSIHelper}
772 cinder_backend_config: {get_param: CinderBackendConfig}
776 - - 'mysql://cinder:'
777 - {get_param: CinderPassword}
779 - {get_param: MysqlVirtualIP}
781 glance_port: {get_param: [EndpointMap, GlanceInternal, port]}
782 glance_password: {get_param: GlancePassword}
783 glance_backend: {get_param: GlanceBackend}
784 glance_file_pcmk_device: {get_param: GlanceFilePcmkDevice}
785 glance_file_pcmk_fstype: {get_param: GlanceFilePcmkFstype}
786 glance_file_pcmk_manage: {get_param: GlanceFilePcmkManage}
787 glance_file_pcmk_options: {get_param: GlanceFilePcmkOptions}
788 glance_notifier_strategy: {get_param: GlanceNotifierStrategy}
789 glance_log_file: {get_param: GlanceLogFile}
793 - - 'mysql://glance:'
794 - {get_param: GlancePassword}
796 - {get_param: MysqlVirtualIP}
798 heat_password: {get_param: HeatPassword}
799 heat_stack_domain_admin_password: {get_param: HeatStackDomainAdminPassword}
804 - {get_param: HeatPassword}
806 - {get_param: MysqlVirtualIP}
808 keystone_ca_certificate: {get_param: KeystoneCACertificate}
809 keystone_signing_key: {get_param: KeystoneSigningKey}
810 keystone_signing_certificate: {get_param: KeystoneSigningCertificate}
811 keystone_ssl_certificate: {get_param: KeystoneSSLCertificate}
812 keystone_ssl_certificate_key: {get_param: KeystoneSSLCertificateKey}
813 keystone_notification_driver: {get_param: KeystoneNotificationDriver}
814 keystone_notification_format: {get_param: KeystoneNotificationFormat}
818 - - 'mysql://keystone:'
819 - {get_param: AdminToken}
821 - {get_param: MysqlVirtualIP}
823 keystone_identity_uri: { get_param: [EndpointMap, KeystoneAdmin, uri_no_suffix] }
824 keystone_auth_uri: {get_param: [EndpointMap, KeystoneInternal, uri] }
825 keystone_public_url: { get_param: [EndpointMap, KeystonePublic, uri_no_suffix] }
826 keystone_internal_url: { get_param: [EndpointMap, KeystoneInternal, uri_no_suffix] }
827 keystone_ec2_uri: { get_param: [EndpointMap, KeystoneEC2, uri] }
828 enable_fencing: {get_param: EnableFencing}
829 enable_galera: {get_param: EnableGalera}
830 enable_ceph_storage: {get_param: EnableCephStorage}
831 enable_swift_storage: {get_param: EnableSwiftStorage}
832 mysql_innodb_buffer_pool_size: {get_param: MysqlInnodbBufferPoolSize}
833 mysql_max_connections: {get_param: MysqlMaxConnections}
834 mysql_root_password: {get_param: MysqlRootPassword}
837 template: tripleo-CLUSTER
839 CLUSTER: {get_param: MysqlClusterUniquePart}
840 neutron_flat_networks: {get_param: NeutronFlatNetworks}
841 neutron_metadata_proxy_shared_secret: {get_param: NeutronMetadataProxySharedSecret}
842 neutron_agent_mode: {get_param: NeutronAgentMode}
843 neutron_router_distributed: {get_param: NeutronDVR}
844 neutron_core_plugin: {get_param: NeutronCorePlugin}
845 neutron_service_plugins:
847 template: "['PLUGINS']"
852 - {get_param: NeutronServicePlugins}
853 neutron_type_drivers:
855 template: "['DRIVERS']"
860 - {get_param: NeutronTypeDrivers}
861 neutron_mechanism_drivers: {get_param: NeutronMechanismDrivers}
862 neutron_allow_l3agent_failover: {get_param: NeutronAllowL3AgentFailover}
863 neutron_l3_ha: {get_param: NeutronL3HA}
864 neutron_dhcp_agents_per_network: {get_param: NeutronDhcpAgentsPerNetwork}
865 neutron_network_vlan_ranges:
867 template: "['RANGES']"
872 - {get_param: NeutronNetworkVLANRanges}
873 neutron_bridge_mappings: {get_param: NeutronBridgeMappings}
874 neutron_external_network_bridge: {get_param: NeutronExternalNetworkBridge}
875 neutron_public_interface: {get_param: NeutronPublicInterface}
876 neutron_public_interface_raw_device: {get_param: NeutronPublicInterfaceRawDevice}
877 neutron_public_interface_default_route: {get_param: NeutronPublicInterfaceDefaultRoute}
878 neutron_public_interface_tag: {get_param: NeutronPublicInterfaceTag}
879 neutron_tenant_network_type: {get_param: NeutronNetworkType}
880 neutron_tunnel_types: {get_param: NeutronTunnelTypes}
881 neutron_tunnel_id_ranges:
883 template: "['RANGES']"
888 - {get_param: NeutronTunnelIdRanges}
891 template: "['RANGES']"
896 - {get_param: NeutronVniRanges}
897 neutron_password: {get_param: NeutronPassword}
898 neutron_dnsmasq_options: {get_param: NeutronDnsmasqOptions}
902 - - 'mysql://neutron:'
903 - {get_param: NeutronPassword}
905 - {get_param: MysqlVirtualIP}
906 - '/ovs_neutron?charset=utf8'
907 neutron_internal_url: { get_param: [ EndpointMap, NeutronInternal, uri ] }
908 neutron_public_url: { get_param: [ EndpointMap, NeutronPublic, uri ] }
909 neutron_admin_url: { get_param: [ EndpointMap, NeutronAdmin, uri ] }
910 neutron_admin_auth_url: { get_param: [ EndpointMap, KeystoneAdmin, uri ] }
911 nova_internal_url: { get_param: [ EndpointMap, NovaInternal, uri ] }
912 ceilometer_backend: {get_param: CeilometerBackend}
913 ceilometer_metering_secret: {get_param: CeilometerMeteringSecret}
914 ceilometer_password: {get_param: CeilometerPassword}
915 ceilometer_coordination_url:
919 - {get_param: RedisVirtualIP}
924 - - 'mysql://ceilometer:'
925 - {get_param: CeilometerPassword}
927 - {get_param: MysqlVirtualIP}
929 snmpd_readonly_user_name: {get_param: SnmpdReadonlyUserName}
930 snmpd_readonly_user_password: {get_param: SnmpdReadonlyUserPassword}
931 nova_password: {get_param: NovaPassword}
936 - {get_param: NovaPassword}
938 - {get_param: MysqlVirtualIP}
940 fencing_config: {get_param: FencingConfig}
941 pcsd_password: {get_param: PcsdPassword}
942 rabbit_username: {get_param: RabbitUserName}
943 rabbit_password: {get_param: RabbitPassword}
944 rabbit_cookie: {get_param: RabbitCookie}
945 rabbit_client_use_ssl: {get_param: RabbitClientUseSSL}
946 rabbit_client_port: {get_param: RabbitClientPort}
947 mongodb_no_journal: {get_param: MongoDbNoJournal}
948 # We need to force this into quotes or hiera will return integer causing
949 # the puppet module validation regexp to fail.
950 # Remove when: https://github.com/puppetlabs/puppetlabs-rabbitmq/pull/401
955 LIMIT: {get_param: RabbitFDLimit}
956 ntp_servers: {get_param: NtpServer}
957 control_virtual_interface: {get_param: ControlVirtualInterface}
958 public_virtual_interface: {get_param: PublicVirtualInterface}
959 swift_hash_suffix: {get_param: SwiftHashSuffix}
960 swift_password: {get_param: SwiftPassword}
961 swift_part_power: {get_param: SwiftPartPower}
962 swift_replicas: {get_param: SwiftReplicas}
963 swift_min_part_hours: {get_param: SwiftMinPartHours}
964 swift_mount_check: {get_param: SwiftMountCheck}
965 enable_package_install: {get_param: EnablePackageInstall}
966 enable_package_upgrade: {get_attr: [UpdateDeployment, update_managed_packages]}
967 swift_proxy_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, SwiftProxyNetwork]}]}
968 swift_management_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, SwiftMgmtNetwork]}]}
969 cinder_iscsi_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, CinderIscsiNetwork]}]}
970 cinder_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, CinderApiNetwork]}]}
971 glance_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, GlanceApiNetwork]}]}
972 glance_registry_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, GlanceRegistryNetwork]}]}
973 glance_api_servers: { get_param: [EndpointMap, GlanceInternal, uri]}
974 glance_registry_host: {get_param: GlanceRegistryVirtualIP}
975 heat_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, HeatApiNetwork]}]}
976 keystone_public_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, KeystonePublicApiNetwork]}]}
977 keystone_admin_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, KeystoneAdminApiNetwork]}]}
978 keystone_region: {get_param: KeystoneRegion}
979 mongo_db_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, MongoDbNetwork]}]}
980 neutron_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, NeutronApiNetwork]}]}
981 neutron_local_ip: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, NeutronTenantNetwork]}]}
982 ceilometer_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, CeilometerApiNetwork]}]}
983 nova_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, NovaApiNetwork]}]}
984 nova_metadata_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, NovaMetadataNetwork]}]}
985 horizon_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, HorizonNetwork]}]}
986 rabbitmq_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, RabbitMqNetwork]}]}
987 redis_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, RedisNetwork]}]}
988 redis_vip: {get_param: RedisVirtualIP}
989 memcached_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, MemcachedNetwork]}]}
990 mysql_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, MysqlNetwork]}]}
991 mysql_virtual_ip: {get_param: MysqlVirtualIP}
992 ceph_cluster_network: {get_attr: [NetIpSubnetMap, net_ip_subnet_map, {get_param: [ServiceNetMap, CephClusterNetwork]}]}
993 ceph_public_network: {get_attr: [NetIpSubnetMap, net_ip_subnet_map, {get_param: [ServiceNetMap, CephPublicNetwork]}]}
994 ceph_public_ip: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, CephPublicNetwork]}]}
996 # Map heat metadata into hiera datafiles
998 type: OS::Heat::StructuredConfig
1000 group: os-apply-config
1005 - heat_config_%{::deploy_config_name}
1006 - controller_extraconfig
1011 - swift_devices_and_proxy # provided by SwiftDevicesAndProxyConfig
1012 - ceph_cluster # provided by CephClusterConfig
1014 - bootstrap_node # provided by BootstrapNodeConfig
1015 - all_nodes # provided by allNodesConfig
1016 - vip_data # provided by vip-config
1019 - cinder_netapp_data # Optionally provided by ControllerExtraConfigPre
1020 - neutron_bigswitch_data # Optionally provided by ControllerExtraConfigPre
1021 - neutron_cisco_data # Optionally provided by ControllerExtraConfigPre
1022 - cisco_n1kv_data # Optionally provided by ControllerExtraConfigPre
1024 controller_extraconfig:
1025 mapped_data: {get_param: ControllerExtraConfig}
1027 mapped_data: {get_param: ExtraConfig}
1029 raw_data: {get_file: hieradata/common.yaml}
1031 raw_data: {get_file: hieradata/ceph.yaml}
1033 ceph::profile::params::cluster_network: {get_input: ceph_cluster_network}
1034 ceph::profile::params::public_network: {get_input: ceph_public_network}
1035 ceph::mon::public_addr: {get_input: ceph_public_ip}
1037 raw_data: {get_file: hieradata/database.yaml}
1039 raw_data: {get_file: hieradata/object.yaml}
1041 raw_data: {get_file: hieradata/controller.yaml}
1042 mapped_data: # data supplied directly to this deployment configuration, etc
1043 bootstack_nodeid: {get_input: bootstack_nodeid}
1046 enable_fencing: {get_input: enable_fencing}
1047 hacluster_pwd: {get_input: pcsd_password}
1048 tripleo::fencing::config: {get_input: fencing_config}
1051 swift::proxy::proxy_local_net_ip: {get_input: swift_proxy_network}
1052 swift::proxy::authtoken::auth_uri: {get_input: keystone_auth_uri}
1053 swift::proxy::authtoken::identity_uri: {get_input: keystone_identity_uri}
1054 swift::storage::all::storage_local_net_ip: {get_input: swift_management_network}
1055 swift::swift_hash_suffix: {get_input: swift_hash_suffix}
1056 swift::proxy::authtoken::admin_password: {get_input: swift_password}
1057 tripleo::ringbuilder::part_power: {get_input: swift_part_power}
1058 tripleo::ringbuilder::replicas: {get_input: swift_replicas}
1059 tripleo::ringbuilder::min_part_hours: {get_input: swift_min_part_hours}
1060 swift_mount_check: {get_input: swift_mount_check}
1062 # NOTE(dprince): build_ring support is currently not wired in.
1063 # See: https://review.openstack.org/#/c/109225/
1064 tripleo::ringbuilder::build_ring: True
1067 cinder_enable_nfs_backend: {get_input: cinder_enable_nfs_backend}
1068 cinder_enable_rbd_backend: {get_input: cinder_enable_rbd_backend}
1069 cinder_nfs_mount_options: {get_input: cinder_nfs_mount_options}
1070 cinder_nfs_servers: {get_input: cinder_nfs_servers}
1071 cinder_lvm_loop_device_size: {get_input: cinder_lvm_loop_device_size}
1072 cinder_iscsi_helper: {get_input: cinder_iscsi_helper}
1073 cinder_iscsi_ip_address: {get_input: cinder_iscsi_network}
1074 cinder::database_connection: {get_input: cinder_dsn}
1075 cinder::api::keystone_password: {get_input: cinder_password}
1076 cinder::api::auth_uri: {get_input: keystone_auth_uri}
1077 cinder::api::identity_uri: {get_input: keystone_identity_uri}
1078 cinder::api::bind_host: {get_input: cinder_api_network}
1079 cinder::rabbit_userid: {get_input: rabbit_username}
1080 cinder::rabbit_password: {get_input: rabbit_password}
1081 cinder::rabbit_use_ssl: {get_input: rabbit_client_use_ssl}
1082 cinder::rabbit_port: {get_input: rabbit_client_port}
1083 cinder::debug: {get_input: debug}
1084 cinder_enable_iscsi_backend: {get_input: cinder_enable_iscsi_backend}
1085 cinder::glance::glance_api_servers: {get_input: glance_api_servers}
1086 cinder_backend_config: {get_input: CinderBackendConfig}
1087 cinder::db::mysql::password: {get_input: cinder_password}
1090 glance::api::bind_port: {get_input: glance_port}
1091 glance::api::bind_host: {get_input: glance_api_network}
1092 glance::api::auth_uri: {get_input: keystone_auth_uri}
1093 glance::api::identity_uri: {get_input: keystone_identity_uri}
1094 glance::api::registry_host: {get_input: glance_registry_host}
1095 glance::api::keystone_password: {get_input: glance_password}
1096 glance::api::debug: {get_input: debug}
1097 glance_notifier_strategy: {get_input: glance_notifier_strategy}
1098 glance_log_file: {get_input: glance_log_file}
1099 glance_log_file: {get_input: glance_log_file}
1100 glance::api::database_connection: {get_input: glance_dsn}
1101 glance::registry::keystone_password: {get_input: glance_password}
1102 glance::registry::database_connection: {get_input: glance_dsn}
1103 glance::registry::bind_host: {get_input: glance_registry_network}
1104 glance::registry::auth_uri: {get_input: keystone_auth_uri}
1105 glance::registry::identity_uri: {get_input: keystone_identity_uri}
1106 glance::registry::debug: {get_input: debug}
1107 glance::backend::swift::swift_store_auth_address: {get_input: keystone_auth_uri}
1108 glance::backend::swift::swift_store_user: service:glance
1109 glance::backend::swift::swift_store_key: {get_input: glance_password}
1110 glance_backend: {get_input: glance_backend}
1111 glance::db::mysql::password: {get_input: glance_password}
1112 glance_file_pcmk_device: {get_input: glance_file_pcmk_device}
1113 glance_file_pcmk_fstype: {get_input: glance_file_pcmk_fstype}
1114 glance_file_pcmk_manage: {get_input: glance_file_pcmk_manage}
1115 glance_file_pcmk_options: {get_input: glance_file_pcmk_options}
1118 heat_stack_domain_admin_password: {get_input: heat_stack_domain_admin_password}
1119 heat::engine::heat_watch_server_url: {get_input: heat.watch_server_url}
1120 heat::engine::heat_metadata_server_url: {get_input: heat.metadata_server_url}
1121 heat::engine::heat_waitcondition_server_url: {get_input: heat.waitcondition_server_url}
1122 heat::engine::auth_encryption_key: {get_input: heat_auth_encryption_key}
1123 heat::rabbit_userid: {get_input: rabbit_username}
1124 heat::rabbit_password: {get_input: rabbit_password}
1125 heat::rabbit_use_ssl: {get_input: rabbit_client_use_ssl}
1126 heat::rabbit_port: {get_input: rabbit_client_port}
1127 heat::auth_uri: {get_input: keystone_auth_uri}
1128 heat::keystone_ec2_uri: {get_input: keystone_ec2_uri}
1129 heat::identity_uri: {get_input: keystone_identity_uri}
1130 heat::keystone_password: {get_input: heat_password}
1131 heat::api::bind_host: {get_input: heat_api_network}
1132 heat::api_cloudwatch::bind_host: {get_input: heat_api_network}
1133 heat::api_cfn::bind_host: {get_input: heat_api_network}
1134 heat::database_connection: {get_input: heat_dsn}
1135 heat::debug: {get_input: debug}
1136 heat::db::mysql::password: {get_input: heat_password}
1139 keystone::admin_token: {get_input: admin_token}
1140 keystone_ca_certificate: {get_input: keystone_ca_certificate}
1141 keystone_signing_key: {get_input: keystone_signing_key}
1142 keystone_signing_certificate: {get_input: keystone_signing_certificate}
1143 keystone_ssl_certificate: {get_input: keystone_ssl_certificate}
1144 keystone_ssl_certificate_key: {get_input: keystone_ssl_certificate_key}
1145 keystone::database_connection: {get_input: keystone_dsn}
1146 keystone::public_bind_host: {get_input: keystone_public_api_network}
1147 keystone::admin_bind_host: {get_input: keystone_admin_api_network}
1148 keystone::debug: {get_input: debug}
1149 keystone::db::mysql::password: {get_input: admin_token}
1150 keystone::rabbit_userid: {get_input: rabbit_username}
1151 keystone::rabbit_password: {get_input: rabbit_password}
1152 keystone::rabbit_use_ssl: {get_input: rabbit_client_use_ssl}
1153 keystone::rabbit_port: {get_input: rabbit_client_port}
1154 keystone::notification_driver: {get_input: keystone_notification_driver}
1155 keystone::notification_format: {get_input: keystone_notification_format}
1156 keystone::roles::admin::email: {get_input: admin_email}
1157 keystone::roles::admin::password: {get_input: admin_password}
1158 keystone::endpoint::public_url: {get_input: keystone_public_url}
1159 keystone::endpoint::internal_url: {get_input: keystone_internal_url}
1160 keystone::endpoint::admin_url: {get_input: keystone_identity_uri}
1161 keystone::endpoint::region: {get_input: keystone_region}
1163 mongodb::server::bind_ip: {get_input: mongo_db_network}
1164 mongodb::server::nojournal: {get_input: mongodb_no_journal}
1166 admin_password: {get_input: admin_password}
1167 enable_galera: {get_input: enable_galera}
1168 enable_ceph_storage: {get_input: enable_ceph_storage}
1169 enable_swift_storage: {get_input: enable_swift_storage}
1170 mysql_innodb_buffer_pool_size: {get_input: mysql_innodb_buffer_pool_size}
1171 mysql_max_connections: {get_input: mysql_max_connections}
1172 mysql::server::root_password: {get_input: mysql_root_password}
1173 mysql_cluster_name: {get_input: mysql_cluster_name}
1174 mysql_bind_host: {get_input: mysql_network}
1175 mysql_virtual_ip: {get_input: mysql_virtual_ip}
1178 neutron::bind_host: {get_input: neutron_api_network}
1179 neutron::rabbit_password: {get_input: rabbit_password}
1180 neutron::rabbit_user: {get_input: rabbit_username}
1181 neutron::rabbit_use_ssl: {get_input: rabbit_client_use_ssl}
1182 neutron::rabbit_port: {get_input: rabbit_client_port}
1183 neutron::debug: {get_input: debug}
1184 neutron::server::auth_uri: {get_input: keystone_auth_uri}
1185 neutron::server::identity_uri: {get_input: keystone_identity_uri}
1186 neutron::server::database_connection: {get_input: neutron_dsn}
1187 neutron::agents::l3::external_network_bridge: {get_input: neutron_external_network_bridge}
1188 neutron::agents::ml2::ovs::enable_tunneling: {get_input: neutron_enable_tunneling}
1189 neutron::agents::ml2::ovs::l2_population: {get_input: neutron_enable_l2pop}
1190 neutron::agents::dhcp::enable_isolated_metadata: {get_input: neutron_enable_isolated_metadata}
1191 neutron::agents::ml2::ovs::local_ip: {get_input: neutron_local_ip}
1192 neutron_flat_networks: {get_input: neutron_flat_networks}
1193 neutron::agents::metadata::shared_secret: {get_input: neutron_metadata_proxy_shared_secret}
1194 neutron::agents::metadata::metadata_ip: {get_input: neutron_api_network}
1195 neutron_agent_mode: {get_input: neutron_agent_mode}
1196 neutron_router_distributed: {get_input: neutron_router_distributed}
1197 neutron::core_plugin: {get_input: neutron_core_plugin}
1198 neutron::service_plugins: {get_input: neutron_service_plugins}
1199 neutron::plugins::ml2::type_drivers: {get_input: neutron_type_drivers}
1200 neutron_mechanism_drivers: {get_input: neutron_mechanism_drivers}
1201 neutron::server::allow_automatic_l3agent_failover: {get_input: neutron_allow_l3agent_failover}
1202 neutron::server::l3_ha: {get_input: neutron_l3_ha}
1203 neutron::dhcp_agents_per_network: {get_input: neutron_dhcp_agents_per_network}
1204 neutron::plugins::ml2::network_vlan_ranges: {get_input: neutron_network_vlan_ranges}
1205 neutron::plugins::ml2::tunnel_id_ranges: {get_input: neutron_tunnel_id_ranges}
1206 neutron::plugins::ml2::vni_ranges: {get_input: neutron_vni_ranges}
1207 neutron_bridge_mappings: {get_input: neutron_bridge_mappings}
1208 neutron_public_interface: {get_input: neutron_public_interface}
1209 neutron_public_interface_raw_device: {get_input: neutron_public_interface_raw_device}
1210 neutron_public_interface_default_route: {get_input: neutron_public_interface_default_route}
1211 neutron_public_interface_tag: {get_input: neutron_public_interface_tag}
1212 neutron_tenant_network_type: {get_input: neutron_tenant_network_type}
1213 neutron_tunnel_types: {get_input: neutron_tunnel_types}
1214 neutron::server::auth_password: {get_input: neutron_password}
1215 neutron::agents::metadata::auth_password: {get_input: neutron_password}
1216 neutron_dnsmasq_options: {get_input: neutron_dnsmasq_options}
1217 neutron_dsn: {get_input: neutron_dsn}
1218 neutron::agents::metadata::auth_url: {get_input: keystone_identity_uri}
1219 neutron::db::mysql::password: {get_input: neutron_password}
1220 neutron::keystone::auth::public_url: {get_input: neutron_public_url }
1221 neutron::keystone::auth::internal_url: {get_input: neutron_internal_url }
1222 neutron::keystone::auth::admin_url: {get_input: neutron_admin_url }
1223 neutron::keystone::auth::password: {get_input: neutron_password }
1224 neutron::keystone::auth::region: {get_input: keystone_region}
1225 neutron::server::notifications::nova_url: {get_input: nova_internal_url}
1226 neutron::server::notifications::auth_url: {get_input: neutron_admin_auth_url}
1227 neutron::server::notifications::tenant_name: 'service'
1228 neutron::server::notifications::password: {get_input: nova_password}
1231 ceilometer_backend: {get_input: ceilometer_backend}
1232 ceilometer_mysql_conn_string: {get_input: ceilometer_dsn}
1233 ceilometer::metering_secret: {get_input: ceilometer_metering_secret}
1234 ceilometer::rabbit_userid: {get_input: rabbit_username}
1235 ceilometer::rabbit_password: {get_input: rabbit_password}
1236 ceilometer::rabbit_use_ssl: {get_input: rabbit_client_use_ssl}
1237 ceilometer::rabbit_port: {get_input: rabbit_client_port}
1238 ceilometer::debug: {get_input: debug}
1239 ceilometer::api::host: {get_input: ceilometer_api_network}
1240 ceilometer::api::keystone_password: {get_input: ceilometer_password}
1241 ceilometer::api::keystone_auth_uri: {get_input: keystone_auth_uri}
1242 ceilometer::api::keystone_identity_uri: {get_input: keystone_identity_uri}
1243 ceilometer::agent::auth::auth_password: {get_input: ceilometer_password}
1244 ceilometer::agent::auth::auth_url: {get_input: keystone_auth_uri}
1245 ceilometer::agent::central::coordination_url: {get_input: ceilometer_coordination_url}
1246 ceilometer::db::mysql::password: {get_input: ceilometer_password}
1247 snmpd_readonly_user_name: {get_input: snmpd_readonly_user_name}
1248 snmpd_readonly_user_password: {get_input: snmpd_readonly_user_password}
1251 nova::rabbit_userid: {get_input: rabbit_username}
1252 nova::rabbit_password: {get_input: rabbit_password}
1253 nova::rabbit_use_ssl: {get_input: rabbit_client_use_ssl}
1254 nova::rabbit_port: {get_input: rabbit_client_port}
1255 nova::debug: {get_input: debug}
1256 nova::api::auth_uri: {get_input: keystone_auth_uri}
1257 nova::api::identity_uri: {get_input: keystone_identity_uri}
1258 nova::api::api_bind_address: {get_input: nova_api_network}
1259 nova::api::metadata_listen: {get_input: nova_metadata_network}
1260 nova::api::admin_password: {get_input: nova_password}
1261 nova::database_connection: {get_input: nova_dsn}
1262 nova::glance_api_servers: {get_input: glance_api_servers}
1263 nova::api::neutron_metadata_proxy_shared_secret: {get_input: neutron_metadata_proxy_shared_secret}
1264 nova::network::neutron::neutron_admin_password: {get_input: neutron_password}
1265 nova::network::neutron::neutron_url: {get_input: neutron_internal_url}
1266 nova::network::neutron::neutron_admin_auth_url: {get_input: neutron_admin_auth_url}
1267 nova::vncproxy::host: {get_input: nova_api_network}
1268 nova::db::mysql::password: {get_input: nova_password}
1271 apache::ip: {get_input: horizon_network}
1272 horizon::allowed_hosts: {get_input: horizon_allowed_hosts}
1273 horizon::django_debug: {get_input: debug}
1274 horizon::secret_key: {get_input: horizon_secret}
1275 horizon::bind_address: {get_input: horizon_network}
1276 horizon::keystone_url: {get_input: keystone_auth_uri}
1279 rabbitmq::node_ip_address: {get_input: rabbitmq_network}
1280 rabbitmq::erlang_cookie: {get_input: rabbit_cookie}
1281 rabbitmq::file_limit: {get_input: rabbit_fd_limit}
1282 rabbitmq::default_user: {get_input: rabbit_username}
1283 rabbitmq::default_pass: {get_input: rabbit_password}
1285 redis::bind: {get_input: redis_network}
1286 redis_vip: {get_input: redis_vip}
1288 memcached::listen_ip: {get_input: memcached_network}
1289 neutron_public_interface_ip: {get_input: neutron_public_interface_ip}
1290 ntp::servers: {get_input: ntp_servers}
1291 control_virtual_interface: {get_input: control_virtual_interface}
1292 public_virtual_interface: {get_input: public_virtual_interface}
1293 tripleo::loadbalancer::control_virtual_interface: {get_input: control_virtual_interface}
1294 tripleo::loadbalancer::public_virtual_interface: {get_input: public_virtual_interface}
1295 tripleo::loadbalancer::haproxy_log_address: {get_input: haproxy_log_address}
1296 # NOTE(jaosorior): The service certificate configuration for
1297 # HAProxy was left commented because to properly use this, we
1298 # need to be able to set up the keystone endpoints. And
1299 # currently that is not possible, but is being addressed by
1300 # other commits. A subsequent commit will uncomment this.
1301 #tripleo::loadbalancer::service_certificate: {get_attr: [NodeTLSData, deployed_ssl_certificate_path]}
1302 tripleo::packages::enable_install: {get_input: enable_package_install}
1303 tripleo::packages::enable_upgrade: {get_input: enable_package_upgrade}
1305 # Hook for site-specific additional pre-deployment config, e.g extra hieradata
1306 ControllerExtraConfigPre:
1307 depends_on: ControllerDeployment
1308 type: OS::TripleO::ControllerExtraConfigPre
1310 server: {get_resource: Controller}
1312 # Hook for site-specific additional pre-deployment config,
1313 # applying to all nodes, e.g node registration/unregistration
1315 depends_on: [ControllerExtraConfigPre, NodeTLSData]
1316 type: OS::TripleO::NodeExtraConfig
1318 server: {get_resource: Controller}
1321 type: OS::TripleO::Tasks::PackageUpdate
1324 type: OS::Heat::SoftwareDeployment
1326 config: {get_resource: UpdateConfig}
1327 server: {get_resource: Controller}
1330 get_param: UpdateIdentifier
1334 description: IP address of the server in the ctlplane network
1335 value: {get_attr: [Controller, networks, ctlplane, 0]}
1336 external_ip_address:
1337 description: IP address of the server in the external network
1338 value: {get_attr: [ExternalPort, ip_address]}
1339 internal_api_ip_address:
1340 description: IP address of the server in the internal_api network
1341 value: {get_attr: [InternalApiPort, ip_address]}
1343 description: IP address of the server in the storage network
1344 value: {get_attr: [StoragePort, ip_address]}
1345 storage_mgmt_ip_address:
1346 description: IP address of the server in the storage_mgmt network
1347 value: {get_attr: [StorageMgmtPort, ip_address]}
1349 description: IP address of the server in the tenant network
1350 value: {get_attr: [TenantPort, ip_address]}
1352 description: Hostname of the server
1353 value: {get_attr: [Controller, name]}
1356 Node object in the format {ip: ..., name: ...} format that the corosync
1359 ip: {get_attr: [Controller, networks, ctlplane, 0]}
1360 name: {get_attr: [Controller, name]}
1363 Server's IP address and hostname in the /etc/hosts format
1366 template: IP HOST.localdomain HOST CLOUDNAME
1368 IP: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, ControllerHostnameResolveNetwork]}]}
1369 HOST: {get_attr: [Controller, name]}
1370 CLOUDNAME: {get_param: CloudName}
1371 nova_server_resource:
1372 description: Heat resource handle for the Nova compute server
1374 {get_resource: Controller}
1376 description: Swift device formatted for swift-ring-builder
1379 template: 'r1z1-IP:%PORT%/d1'
1381 IP: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, SwiftMgmtNetwork]}]}
1382 swift_proxy_memcache:
1383 description: Swift proxy-memcache value
1386 template: "IP:11211"
1388 IP: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, MemcachedNetwork]}]}
1390 description: identifier which changes if the controller configuration may need re-applying
1394 - - {get_attr: [ControllerDeployment, deploy_stdout]}
1395 - {get_attr: [NodeTLSCAData, deploy_stdout]}
1396 - {get_attr: [NodeTLSData, deploy_stdout]}
1397 - {get_attr: [ControllerExtraConfigPre, deploy_stdout]}
1398 - {get_param: UpdateIdentifier}
1399 tls_key_modulus_md5:
1400 description: MD5 checksum of the TLS Key Modulus
1401 value: {get_attr: [NodeTLSData, key_modulus_md5]}
1402 tls_cert_modulus_md5:
1403 description: MD5 checksum of the TLS Certificate Modulus
1404 value: {get_attr: [NodeTLSData, cert_modulus_md5]}