1 heat_template_version: 2016-04-08
4 OpenStack controller node configured by Puppet.
8 description: The password for the keystone admin account, used for monitoring, querying neutron etc.
12 description: The password for the aodh services.
15 controllerExtraConfig:
18 Deprecated. Use ControllerExtraConfig via parameter_defaults instead.
20 ControllerExtraConfig:
23 Controller specific hiera configuration data to inject into the cluster.
28 A network mapped list of IPs to assign to Controllers in the following form:
30 "internal_api": ["a.b.c.d", "e.f.g.h"],
34 ControlVirtualInterface:
36 description: Interface where virtual ip will be assigned.
40 description: Enable IPv6 in Corosync
44 description: Set to True to enable debugging on all services.
48 description: Whether to enable fencing in Pacemaker or not.
52 description: Whether to use Galera instead of regular MariaDB.
56 description: Whether to deploy a LoadBalancer on the Controller
61 Additional hieradata to inject into the cluster, note that
62 ControllerExtraConfig takes precedence over ExtraConfig.
67 Pacemaker fencing configuration. The JSON should have
68 the following structure:
72 "agent": "AGENT_NAME",
73 "host_mac": "HOST_MAC_ADDRESS",
74 "params": {"PARAM_NAME": "PARAM_VALUE"}
83 "host_mac": "52:54:00:aa:bb:cc",
85 "multicast_address": "225.0.0.12",
86 "port": "baremetal_0",
88 "manage_key_file": true,
89 "key_file": "/etc/fence_xvm.key",
90 "key_file_password": "abcdef"
97 description: Flavor for control nodes to request when deploying.
100 - custom_constraint: nova.flavor
101 HAProxyStatsPassword:
102 description: Password for HAProxy stats endpoint
105 description: User for HAProxy stats endpoint
108 HAProxySyslogAddress:
110 description: Syslog address where HAproxy will send its log
112 HeatAuthEncryptionKey:
113 description: Auth encryption key for heat-engine
117 description: Secret key for Django
122 default: overcloud-control
124 - custom_constraint: glance.image
126 default: 'REBUILD_PRESERVE_EPHEMERAL'
127 description: What policy to use when reconstructing instances. REBUILD for rebuilds, REBUILD_PRESERVE_EPHEMERAL to preserve /mnt.
129 InstanceNameTemplate:
130 default: 'instance-%08x'
131 description: Template string to be used to generate instance names
135 description: Name of an existing Nova key pair to enable SSH access to the instances
138 - custom_constraint: nova.keypair
142 description: Keystone region for endpoint
145 description: Whether to manage IPtables rules.
149 description: Enable IPv6 features in Memcached.
153 description: Whether IPtables rules should be purged before setting up the new ones.
155 MysqlClusterUniquePart:
156 description: A unique identifier of the MySQL cluster the controller is in.
158 default: 'unset' # Has to be here because of the ignored empty value bug
159 # Drop the validation: https://bugs.launchpad.net/tripleo/+bug/1405446
161 # - length: {min: 4, max: 10}
162 MysqlInnodbBufferPoolSize:
164 Specifies the size of the buffer pool in megabytes. Setting to
165 zero should be interpreted as "no value" and will defer to the
170 description: Configures MySQL max_connections config setting
173 MysqlClustercheckPassword:
179 default: '' # Has to be here because of the ignored empty value bug
180 NeutronMetadataProxySharedSecret:
181 description: Shared secret to prevent spoofing
185 description: The password for the neutron service and db account, used by neutron agents.
188 NeutronPublicInterface:
190 description: What interface to bridge onto br-ex for network nodes.
195 Whether to create cron job for purging soft deleted rows in Nova database.
199 description: Enable IPv6 features in Nova
202 description: The password for the nova service and db account, used by nova-api.
207 description: The password for the 'pcsd' user.
209 PublicVirtualInterface:
212 Specifies the interface where the public-facing virtual ip will be assigned.
213 This should be int_public when a VLAN is being used.
217 default: '' # Has to be here because of the ignored empty value bug
220 description: The password for RabbitMQ
225 description: The username for RabbitMQ
230 Rabbit client subscriber parameter to specify
231 an SSL connection to the RabbitMQ host.
235 description: Set rabbit subscriber port, change this if using SSL
238 description: The password for Redis
243 default: '' # Has to be here because of the ignored empty value bug
246 default: '' # Has to be here because of the ignored empty value bug
247 description: An IP address which is wrapped in brackets in case of IPv6
249 description: A random string to be used as a salt when hashing to determine mappings
256 description: The minimum time (in hours) before a partition in a ring can be moved following a rebalance.
259 description: Partition Power to use when building Swift rings
263 description: Whether to manage Swift rings or not
268 description: How many replicas to use in the swift rings.
269 UpgradeLevelNovaCompute:
271 description: Nova Compute upgrade level
276 EnablePackageInstall:
278 description: Set to true to enable package installation via Puppet
282 description: Mapping of service_name -> network name. Typically set
283 via parameter_defaults in the resource registry.
287 description: Mapping of service endpoint -> protocol. Typically set
288 via parameter_defaults in the resource registry.
294 Setting to a previously unused value during stack-update will trigger
295 package update on all nodes
298 default: '' # Defaults to Heat created hostname
302 description: Optional mapping to override hostnames
303 NetworkDeploymentActions:
304 type: comma_delimited_list
306 Heat action when to apply network configuration changes
311 SoftwareConfigTransport:
312 default: POLL_SERVER_CFN
314 How the server should receive the metadata required for software configuration.
317 - allowed_values: [POLL_SERVER_CFN, POLL_SERVER_HEAT, POLL_TEMP_URL, ZAQAR_MESSAGE]
322 The DNS domain used for the hosts. This should match the dhcp_domain
323 configured in the Undercloud neutron. Defaults to localdomain.
327 Extra properties or metadata passed to Nova for the created nodes in
328 the overcloud. It's accessible via the Nova metadata API.
332 description: Optional scheduler hints to pass to nova
334 ServiceConfigSettings:
339 description: Command which will be run whenever configuration data changes
340 default: os-refresh-config --timeout 14400
344 description: Do not use deprecated params, they will be removed.
346 - controllerExtraConfig
351 type: OS::TripleO::Server
354 command: {get_param: ConfigCommand}
356 image: {get_param: Image}
357 image_update_policy: {get_param: ImageUpdatePolicy}
358 flavor: {get_param: Flavor}
359 key_name: {get_param: KeyName}
362 user_data_format: SOFTWARE_CONFIG
363 user_data: {get_resource: UserData}
366 template: {get_param: Hostname}
367 params: {get_param: HostnameMap}
368 software_config_transport: {get_param: SoftwareConfigTransport}
369 metadata: {get_param: ServerMetadata}
370 scheduler_hints: {get_param: SchedulerHints}
372 # Combine the NodeAdminUserData and NodeUserData mime archives
374 type: OS::Heat::MultipartMime
377 - config: {get_resource: NodeAdminUserData}
379 - config: {get_resource: NodeUserData}
382 # Creates the "heat-admin" user if configured via the environment
383 # Should return a OS::Heat::MultipartMime reference via OS::stack_id
385 type: OS::TripleO::NodeAdminUserData
387 # For optional operator additional userdata
388 # Should return a OS::Heat::MultipartMime reference via OS::stack_id
390 type: OS::TripleO::NodeUserData
393 type: OS::TripleO::Controller::Ports::ExternalPort
395 IPPool: {get_param: ControllerIPs}
396 NodeIndex: {get_param: NodeIndex}
397 ControlPlaneIP: {get_attr: [Controller, networks, ctlplane, 0]}
400 type: OS::TripleO::Controller::Ports::InternalApiPort
402 IPPool: {get_param: ControllerIPs}
403 NodeIndex: {get_param: NodeIndex}
404 ControlPlaneIP: {get_attr: [Controller, networks, ctlplane, 0]}
407 type: OS::TripleO::Controller::Ports::StoragePort
409 IPPool: {get_param: ControllerIPs}
410 NodeIndex: {get_param: NodeIndex}
411 ControlPlaneIP: {get_attr: [Controller, networks, ctlplane, 0]}
414 type: OS::TripleO::Controller::Ports::StorageMgmtPort
416 IPPool: {get_param: ControllerIPs}
417 NodeIndex: {get_param: NodeIndex}
418 ControlPlaneIP: {get_attr: [Controller, networks, ctlplane, 0]}
421 type: OS::TripleO::Controller::Ports::TenantPort
423 IPPool: {get_param: ControllerIPs}
424 NodeIndex: {get_param: NodeIndex}
425 ControlPlaneIP: {get_attr: [Controller, networks, ctlplane, 0]}
428 type: OS::TripleO::Controller::Ports::ManagementPort
430 IPPool: {get_param: ControllerIPs}
431 NodeIndex: {get_param: NodeIndex}
432 ControlPlaneIP: {get_attr: [Controller, networks, ctlplane, 0]}
435 type: OS::TripleO::Network::Ports::NetIpMap
437 ControlPlaneIp: {get_attr: [Controller, networks, ctlplane, 0]}
438 ExternalIp: {get_attr: [ExternalPort, ip_address]}
439 ExternalIpSubnet: {get_attr: [ExternalPort, ip_subnet]}
440 ExternalIpUri: {get_attr: [ExternalPort, ip_address_uri]}
441 InternalApiIp: {get_attr: [InternalApiPort, ip_address]}
442 InternalApiIpSubnet: {get_attr: [InternalApiPort, ip_subnet]}
443 InternalApiIpUri: {get_attr: [InternalApiPort, ip_address_uri]}
444 StorageIp: {get_attr: [StoragePort, ip_address]}
445 StorageIpSubnet: {get_attr: [StoragePort, ip_subnet]}
446 StorageIpUri: {get_attr: [StoragePort, ip_address_uri]}
447 StorageMgmtIp: {get_attr: [StorageMgmtPort, ip_address]}
448 StorageMgmtIpSubnet: {get_attr: [StorageMgmtPort, ip_subnet]}
449 StorageMgmtIpUri: {get_attr: [StorageMgmtPort, ip_address_uri]}
450 TenantIp: {get_attr: [TenantPort, ip_address]}
451 TenantIpSubnet: {get_attr: [TenantPort, ip_subnet]}
452 TenantIpUri: {get_attr: [TenantPort, ip_address_uri]}
453 ManagementIp: {get_attr: [ManagementPort, ip_address]}
454 ManagementIpSubnet: {get_attr: [ManagementPort, ip_subnet]}
455 ManagementIpUri: {get_attr: [ManagementPort, ip_address_uri]}
458 type: OS::TripleO::Controller::Net::SoftwareConfig
460 ControlPlaneIp: {get_attr: [Controller, networks, ctlplane, 0]}
461 ExternalIpSubnet: {get_attr: [ExternalPort, ip_subnet]}
462 InternalApiIpSubnet: {get_attr: [InternalApiPort, ip_subnet]}
463 StorageIpSubnet: {get_attr: [StoragePort, ip_subnet]}
464 StorageMgmtIpSubnet: {get_attr: [StorageMgmtPort, ip_subnet]}
465 TenantIpSubnet: {get_attr: [TenantPort, ip_subnet]}
466 ManagementIpSubnet: {get_attr: [ManagementPort, ip_subnet]}
469 type: OS::TripleO::SoftwareDeployment
471 name: NetworkDeployment
472 config: {get_resource: NetworkConfig}
473 server: {get_resource: Controller}
474 actions: {get_param: NetworkDeploymentActions}
477 interface_name: {get_param: NeutronPublicInterface}
479 # Resource for site-specific injection of root certificate
481 depends_on: NetworkDeployment
482 type: OS::TripleO::NodeTLSCAData
484 server: {get_resource: Controller}
486 # Resource for site-specific passing of private keys/certificates
488 depends_on: NodeTLSCAData
489 type: OS::TripleO::NodeTLSData
491 server: {get_resource: Controller}
492 NodeIndex: {get_param: NodeIndex}
495 ControllerDeployment:
496 type: OS::TripleO::SoftwareDeployment
497 depends_on: NetworkDeployment
499 name: ControllerDeployment
500 config: {get_resource: ControllerConfig}
501 server: {get_resource: Controller}
503 bootstack_nodeid: {get_attr: [Controller, name]}
504 haproxy_log_address: {get_param: HAProxySyslogAddress}
505 haproxy_stats_password: {get_param: HAProxyStatsPassword}
506 haproxy_stats_user: {get_param: HAProxyStatsUser}
507 heat_auth_encryption_key: {get_param: HeatAuthEncryptionKey}
508 horizon_secret: {get_param: HorizonSecret}
509 admin_password: {get_param: AdminPassword}
510 debug: {get_param: Debug}
511 cinder_public_url: {get_param: [EndpointMap, CinderPublic, uri]}
512 cinder_internal_url: {get_param: [EndpointMap, CinderInternal, uri]}
513 cinder_admin_url: {get_param: [EndpointMap, CinderAdmin, uri]}
514 cinder_public_url_v2: {get_param: [EndpointMap, CinderV2Public, uri]}
515 cinder_internal_url_v2: {get_param: [EndpointMap, CinderV2Internal, uri]}
516 cinder_admin_url_v2: {get_param: [EndpointMap, CinderV2Admin, uri]}
517 keystone_identity_uri: { get_param: [EndpointMap, KeystoneAdmin, uri_no_suffix] }
518 keystone_auth_uri: {get_param: [EndpointMap, KeystoneInternal, uri] }
519 keystone_ec2_uri: { get_param: [EndpointMap, KeystoneEC2, uri] }
520 enable_fencing: {get_param: EnableFencing}
521 enable_galera: {get_param: EnableGalera}
522 enable_load_balancer: {get_param: EnableLoadBalancer}
523 manage_firewall: {get_param: ManageFirewall}
524 purge_firewall_rules: {get_param: PurgeFirewallRules}
525 mysql_innodb_buffer_pool_size: {get_param: MysqlInnodbBufferPoolSize}
526 mysql_max_connections: {get_param: MysqlMaxConnections}
527 mysql_root_password: {get_param: MysqlRootPassword}
528 mysql_clustercheck_password: {get_param: MysqlClustercheckPassword}
531 template: tripleo-CLUSTER
533 CLUSTER: {get_param: MysqlClusterUniquePart}
534 neutron_metadata_proxy_shared_secret: {get_param: NeutronMetadataProxySharedSecret}
535 neutron_password: {get_param: NeutronPassword}
536 neutron_internal_url: { get_param: [ EndpointMap, NeutronInternal, uri ] }
537 neutron_public_url: { get_param: [ EndpointMap, NeutronPublic, uri ] }
538 neutron_admin_url: { get_param: [ EndpointMap, NeutronAdmin, uri ] }
539 neutron_auth_url: { get_param: [ EndpointMap, KeystoneV3Admin, uri ] }
540 nova_internal_url: { get_param: [ EndpointMap, NovaInternal, uri ] }
541 aodh_password: {get_param: AodhPassword}
542 aodh_internal_url: { get_param: [ EndpointMap, AodhInternal, uri ] }
543 aodh_public_url: { get_param: [ EndpointMap, AodhPublic, uri ] }
544 aodh_admin_url: { get_param: [ EndpointMap, AodhAdmin, uri ] }
545 ceilometer_coordination_url:
549 - {get_param: RedisPassword}
551 - {get_param: RedisVirtualIPUri}
556 - - {get_param: [EndpointMap, MysqlInternal, protocol]}
558 - {get_param: AodhPassword}
560 - {get_param: [EndpointMap, MysqlInternal, host]}
562 gnocchi_internal_url: {get_param: [EndpointMap, GnocchiInternal, uri]}
563 gnocchi_public_url: { get_param: [ EndpointMap, GnocchiPublic, uri ] }
564 gnocchi_admin_url: { get_param: [ EndpointMap, GnocchiAdmin, uri ] }
565 nova_enable_db_purge: {get_param: NovaEnableDBPurge}
566 nova_ipv6: {get_param: NovaIPv6}
567 corosync_ipv6: {get_param: CorosyncIPv6}
568 memcached_ipv6: {get_param: MemcachedIPv6}
569 nova_password: {get_param: NovaPassword}
573 - - {get_param: [EndpointMap, MysqlInternal, protocol]}
575 - {get_param: NovaPassword}
577 - {get_param: [EndpointMap, MysqlInternal, host]}
582 - - {get_param: [EndpointMap, MysqlInternal, protocol]}
584 - {get_param: NovaPassword}
586 - {get_param: [EndpointMap, MysqlInternal, host]}
588 upgrade_level_nova_compute: {get_param: UpgradeLevelNovaCompute}
589 instance_name_template: {get_param: InstanceNameTemplate}
590 nova_public_url: {get_param: [EndpointMap, NovaPublic, uri]}
591 nova_internal_url: {get_param: [EndpointMap, NovaInternal, uri]}
592 nova_admin_url: {get_param: [EndpointMap, NovaAdmin, uri]}
593 fencing_config: {get_param: FencingConfig}
594 pcsd_password: {get_param: PcsdPassword}
595 rabbit_username: {get_param: RabbitUserName}
596 rabbit_password: {get_param: RabbitPassword}
597 rabbit_cookie: {get_param: RabbitCookie}
598 rabbit_client_use_ssl: {get_param: RabbitClientUseSSL}
599 rabbit_client_port: {get_param: RabbitClientPort}
600 control_virtual_interface: {get_param: ControlVirtualInterface}
601 public_virtual_interface: {get_param: PublicVirtualInterface}
602 swift_hash_suffix: {get_param: SwiftHashSuffix}
603 swift_part_power: {get_param: SwiftPartPower}
604 swift_ring_build: {get_param: SwiftRingBuild}
605 swift_replicas: {get_param: SwiftReplicas}
606 swift_min_part_hours: {get_param: SwiftMinPartHours}
607 enable_package_install: {get_param: EnablePackageInstall}
608 enable_package_upgrade: {get_attr: [UpdateDeployment, update_managed_packages]}
609 swift_proxy_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, SwiftProxyNetwork]}]}
610 swift_management_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, SwiftMgmtNetwork]}]}
611 cinder_iscsi_network:
615 IP: {get_attr: [NetIpMap, net_ip_uri_map, {get_param: [ServiceNetMap, CinderIscsiNetwork]}]}
616 cinder_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, CinderApiNetwork]}]}
617 glance_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, GlanceApiNetwork]}]}
618 glance_registry_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, GlanceRegistryNetwork]}]}
619 glance_api_servers: { get_param: [EndpointMap, GlanceInternal, uri]}
620 heat_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, HeatApiNetwork]}]}
621 keystone_public_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, KeystonePublicApiNetwork]}]}
622 keystone_admin_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, KeystoneAdminApiNetwork]}]}
623 keystone_region: {get_param: KeystoneRegion}
624 mongo_db_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, MongoDbNetwork]}]}
625 neutron_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, NeutronApiNetwork]}]}
626 neutron_local_ip: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, NeutronTenantNetwork]}]}
627 ceilometer_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, CeilometerApiNetwork]}]}
628 aodh_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, AodhApiNetwork]}]}
629 gnocchi_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, GnocchiApiNetwork]}]}
630 nova_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, NovaApiNetwork]}]}
631 nova_metadata_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, NovaMetadataNetwork]}]}
632 horizon_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, HorizonNetwork]}]}
635 template: "['SUBNET']"
637 SUBNET: {get_attr: [NetIpMap, net_ip_subnet_map, {get_param: [ServiceNetMap, HorizonNetwork]}]}
638 rabbitmq_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, RabbitMqNetwork]}]}
639 redis_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, RedisNetwork]}]}
640 redis_vip: {get_param: RedisVirtualIP}
641 sahara_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, SaharaApiNetwork]}]}
642 memcached_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, MemcachedNetwork]}]}
643 mysql_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, MysqlNetwork]}]}
644 mysql_virtual_ip: {get_param: MysqlVirtualIP}
645 ceph_cluster_network: {get_attr: [NetIpMap, net_ip_subnet_map, {get_param: [ServiceNetMap, CephClusterNetwork]}]}
646 ceph_public_network: {get_attr: [NetIpMap, net_ip_subnet_map, {get_param: [ServiceNetMap, CephPublicNetwork]}]}
647 ceph_public_ip: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, CephPublicNetwork]}]}
648 ironic_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, IronicApiNetwork]}]}
650 # Map heat metadata into hiera datafiles
652 type: OS::Heat::StructuredConfig
654 group: os-apply-config
659 - heat_config_%{::deploy_config_name}
660 - controller_extraconfig
666 - swift_devices_and_proxy # provided by SwiftDevicesAndProxyConfig
667 - ceph_cluster # provided by CephClusterConfig
669 - bootstrap_node # provided by BootstrapNodeConfig
670 - all_nodes # provided by allNodesConfig
671 - vip_data # provided by vip-config
675 - cinder_dellsc_data # Optionally provided by ControllerExtraConfigPre
676 - cinder_netapp_data # Optionally provided by ControllerExtraConfigPre
677 - cinder_eqlx_data # Optionally provided by ControllerExtraConfigPre
678 - neutron_bigswitch_data # Optionally provided by ControllerExtraConfigPre
679 - neutron_cisco_data # Optionally provided by ControllerExtraConfigPre
680 - cisco_n1kv_data # Optionally provided by ControllerExtraConfigPre
681 - midonet_data #Optionally provided by AllNodesExtraConfig
682 merge_behavior: deeper
685 mapped_data: {get_param: ServiceConfigSettings}
686 controller_extraconfig:
689 - {get_param: controllerExtraConfig}
690 - {get_param: ControllerExtraConfig}
692 mapped_data: {get_param: ExtraConfig}
694 raw_data: {get_file: hieradata/common.yaml}
697 net_ip_map: {get_attr: [NetIpMap, net_ip_map]}
698 net_ip_subnet_map: {get_attr: [NetIpMap, net_ip_subnet_map]}
699 net_ip_uri_map: {get_attr: [NetIpMap, net_ip_uri_map]}
701 raw_data: {get_file: hieradata/ceph.yaml}
703 ceph::profile::params::cluster_network: {get_input: ceph_cluster_network}
704 ceph::profile::params::public_network: {get_input: ceph_public_network}
705 ceph::profile::params::public_addr: {get_input: ceph_public_ip}
707 raw_data: {get_file: hieradata/database.yaml}
709 raw_data: {get_file: hieradata/object.yaml}
711 raw_data: {get_file: hieradata/controller.yaml}
712 mapped_data: # data supplied directly to this deployment configuration, etc
713 bootstack_nodeid: {get_input: bootstack_nodeid}
716 enable_fencing: {get_input: enable_fencing}
717 enable_load_balancer: {get_input: enable_load_balancer}
718 hacluster_pwd: {get_input: pcsd_password}
719 corosync_ipv6: {get_input: corosync_ipv6}
720 tripleo::fencing::config: {get_input: fencing_config}
723 # FIXME: need to move proxy_local_net_ip into swift-proxy.yaml
724 swift::proxy::proxy_local_net_ip: {get_input: swift_proxy_network}
725 swift::storage::all::storage_local_net_ip: {get_input: swift_management_network}
726 swift::swift_hash_path_suffix: {get_input: swift_hash_suffix}
727 tripleo::ringbuilder::build_ring: { get_input: swift_ring_build }
728 tripleo::ringbuilder::part_power: {get_input: swift_part_power}
729 tripleo::ringbuilder::replicas: {get_input: swift_replicas}
730 tripleo::ringbuilder::min_part_hours: {get_input: swift_min_part_hours}
733 tripleo::profile::base::cinder::volume::iscsi::cinder_iscsi_address: {get_input: cinder_iscsi_network}
734 cinder::api::bind_host: {get_input: cinder_api_network}
735 cinder::keystone::auth::public_url: {get_input: cinder_public_url }
736 cinder::keystone::auth::internal_url: {get_input: cinder_internal_url }
737 cinder::keystone::auth::admin_url: {get_input: cinder_admin_url }
738 cinder::keystone::auth::public_url_v2: {get_input: cinder_public_url_v2 }
739 cinder::keystone::auth::internal_url_v2: {get_input: cinder_internal_url_v2 }
740 cinder::keystone::auth::admin_url_v2: {get_input: cinder_admin_url_v2 }
741 cinder::keystone::auth::password: {get_input: cinder_password }
742 cinder::keystone::auth::region: {get_input: keystone_region}
745 glance::api::bind_host: {get_input: glance_api_network}
746 glance::registry::bind_host: {get_input: glance_registry_network}
747 glance::keystone::auth::region: {get_input: keystone_region}
750 heat::api::bind_host: {get_input: heat_api_network}
751 heat::api_cloudwatch::bind_host: {get_input: heat_api_network}
752 heat::api_cfn::bind_host: {get_input: heat_api_network}
753 heat::engine::auth_encryption_key: {get_input: heat_auth_encryption_key}
756 keystone::admin_bind_host: {get_input: keystone_admin_api_network}
757 keystone::public_bind_host: {get_input: keystone_public_api_network}
758 keystone::wsgi::apache::bind_host: {get_input: keystone_public_api_network}
759 keystone::wsgi::apache::admin_bind_host: {get_input: keystone_admin_api_network}
762 mongodb::server::bind_ip: {get_input: mongo_db_network}
765 admin_password: {get_input: admin_password}
766 enable_galera: {get_input: enable_galera}
767 mysql_innodb_buffer_pool_size: {get_input: mysql_innodb_buffer_pool_size}
768 mysql_max_connections: {get_input: mysql_max_connections}
769 mysql::server::root_password: {get_input: mysql_root_password}
770 mysql_clustercheck_password: {get_input: mysql_clustercheck_password}
771 mysql_cluster_name: {get_input: mysql_cluster_name}
772 mysql_bind_host: {get_input: mysql_network}
773 mysql_virtual_ip: {get_input: mysql_virtual_ip}
776 neutron::bind_host: {get_input: neutron_api_network}
777 neutron::agents::ml2::ovs::local_ip: {get_input: neutron_local_ip}
778 neutron::agents::metadata::metadata_ip: {get_input: neutron_api_network}
779 neutron::keystone::auth::public_url: {get_input: neutron_public_url }
780 neutron::keystone::auth::internal_url: {get_input: neutron_internal_url }
781 neutron::keystone::auth::admin_url: {get_input: neutron_admin_url }
782 neutron::keystone::auth::password: {get_input: neutron_password }
783 neutron::keystone::auth::region: {get_input: keystone_region}
786 ceilometer::api::host: {get_input: ceilometer_api_network}
787 snmpd_readonly_user_name: {get_input: snmpd_readonly_user_name}
788 snmpd_readonly_user_password: {get_input: snmpd_readonly_user_password}
791 aodh_mysql_conn_string: {get_input: aodh_dsn}
792 aodh::rabbit_userid: {get_input: rabbit_username}
793 aodh::rabbit_password: {get_input: rabbit_password}
794 aodh::rabbit_use_ssl: {get_input: rabbit_client_use_ssl}
795 aodh::rabbit_port: {get_input: rabbit_client_port}
796 aodh::debug: {get_input: debug}
797 aodh::wsgi::apache::ssl: false
798 aodh::wsgi::apache::bind_host: {get_input: aodh_api_network}
799 aodh::api::service_name: 'httpd'
800 aodh::api::host: {get_input: aodh_api_network}
801 aodh::api::keystone_password: {get_input: aodh_password}
802 aodh::api::keystone_auth_uri: {get_input: keystone_auth_uri}
803 aodh::api::keystone_identity_uri: {get_input: keystone_identity_uri}
804 aodh::auth::auth_url: {get_input: keystone_auth_uri}
805 aodh::auth::auth_password: {get_input: aodh_password}
806 aodh::db::mysql::password: {get_input: aodh_password}
807 # for a migration path from ceilometer-alarm to aodh, we use the same database & coordination
808 aodh::evaluator::coordination_url: {get_input: ceilometer_coordination_url}
809 aodh::keystone::auth::public_url: {get_input: aodh_public_url }
810 aodh::keystone::auth::internal_url: {get_input: aodh_internal_url }
811 aodh::keystone::auth::admin_url: {get_input: aodh_admin_url }
812 aodh::keystone::auth::password: {get_input: aodh_password }
813 aodh::keystone::auth::region: {get_input: keystone_region}
816 gnocchi::wsgi::apache::bind_host: {get_input: gnocchi_api_network}
817 gnocchi::api::host: {get_input: gnocchi_api_network}
818 gnocchi::api::keystone_auth_uri: {get_input: keystone_auth_uri}
819 gnocchi::api::keystone_identity_uri: {get_input: keystone_identity_uri}
820 gnocchi::storage::swift::swift_authurl: {get_input: keystone_auth_uri}
821 gnocchi::keystone::auth::public_url: {get_input: gnocchi_public_url }
822 gnocchi::keystone::auth::internal_url: {get_input: gnocchi_internal_url }
823 gnocchi::keystone::auth::admin_url: {get_input: gnocchi_admin_url }
824 gnocchi::keystone::auth::region: {get_input: keystone_region}
827 nova::upgrade_level_compute: {get_input: upgrade_level_nova_compute}
828 nova::use_ipv6: {get_input: nova_ipv6}
829 nova::api::auth_uri: {get_input: keystone_auth_uri}
830 nova::api::identity_uri: {get_input: keystone_identity_uri}
831 nova::api::api_bind_address: {get_input: nova_api_network}
832 nova::api::metadata_listen: {get_input: nova_metadata_network}
833 nova::api::admin_password: {get_input: nova_password}
834 nova::database_connection: {get_input: nova_dsn}
835 nova::api_database_connection: {get_input: nova_api_dsn}
836 nova::glance_api_servers: {get_input: glance_api_servers}
837 nova::api::neutron_metadata_proxy_shared_secret: {get_input: neutron_metadata_proxy_shared_secret}
838 nova::api::instance_name_template: {get_input: instance_name_template}
839 nova::network::neutron::neutron_password: {get_input: neutron_password}
840 nova::network::neutron::neutron_url: {get_input: neutron_internal_url}
841 nova::network::neutron::neutron_auth_url: {get_input: neutron_auth_url}
842 nova::vncproxy::host: {get_input: nova_api_network}
843 nova::db::mysql::password: {get_input: nova_password}
844 nova::db::mysql_api::password: {get_input: nova_password}
845 nova_enable_db_purge: {get_input: nova_enable_db_purge}
846 nova::keystone::auth::public_url: {get_input: nova_public_url}
847 nova::keystone::auth::internal_url: {get_input: nova_internal_url}
848 nova::keystone::auth::admin_url: {get_input: nova_admin_url}
849 nova::keystone::auth::password: {get_input: nova_password }
850 nova::keystone::auth::region: {get_input: keystone_region}
853 apache::mod::remoteip::proxy_ips: {get_input: horizon_subnet}
854 apache::ip: {get_input: horizon_network}
855 horizon::django_debug: {get_input: debug}
856 horizon::secret_key: {get_input: horizon_secret}
857 horizon::bind_address: {get_input: horizon_network}
858 horizon::keystone_url: {get_input: keystone_auth_uri}
861 rabbitmq::node_ip_address: {get_input: rabbitmq_network}
862 rabbitmq::erlang_cookie: {get_input: rabbit_cookie}
864 redis::bind: {get_input: redis_network}
865 redis_vip: {get_input: redis_vip}
867 tripleo::firewall::manage_firewall: {get_input: manage_firewall}
868 tripleo::firewall::purge_firewall_rules: {get_input: purge_firewall_rules}
870 memcached_ipv6: {get_input: memcached_ipv6}
871 memcached::listen_ip: {get_input: memcached_network}
872 control_virtual_interface: {get_input: control_virtual_interface}
873 public_virtual_interface: {get_input: public_virtual_interface}
874 tripleo::keepalived::control_virtual_interface: {get_input: control_virtual_interface}
875 tripleo::keepalived::public_virtual_interface: {get_input: public_virtual_interface}
876 tripleo::haproxy::control_virtual_interface: {get_input: control_virtual_interface}
877 tripleo::haproxy::public_virtual_interface: {get_input: public_virtual_interface}
878 tripleo::haproxy::haproxy_log_address: {get_input: haproxy_log_address}
879 tripleo::haproxy::service_certificate: {get_attr: [NodeTLSData, deployed_ssl_certificate_path]}
880 tripleo::haproxy::haproxy_stats_user: {get_input: haproxy_stats_user}
881 tripleo::haproxy::haproxy_stats_password: {get_input: haproxy_stats_password}
882 tripleo::haproxy::redis_password: {get_input: redis_password}
883 tripleo::packages::enable_install: {get_input: enable_package_install}
884 tripleo::packages::enable_upgrade: {get_input: enable_package_upgrade}
886 # Hook for site-specific additional pre-deployment config, e.g extra hieradata
887 ControllerExtraConfigPre:
888 depends_on: ControllerDeployment
889 type: OS::TripleO::ControllerExtraConfigPre
891 server: {get_resource: Controller}
893 # Hook for site-specific additional pre-deployment config,
894 # applying to all nodes, e.g node registration/unregistration
896 depends_on: [ControllerExtraConfigPre, NodeTLSData]
897 type: OS::TripleO::NodeExtraConfig
899 server: {get_resource: Controller}
902 type: OS::TripleO::Tasks::PackageUpdate
905 type: OS::Heat::SoftwareDeployment
907 name: UpdateDeployment
908 config: {get_resource: UpdateConfig}
909 server: {get_resource: Controller}
912 get_param: UpdateIdentifier
916 description: IP address of the server in the ctlplane network
917 value: {get_attr: [Controller, networks, ctlplane, 0]}
919 description: IP address of the server in the external network
920 value: {get_attr: [ExternalPort, ip_address]}
921 internal_api_ip_address:
922 description: IP address of the server in the internal_api network
923 value: {get_attr: [InternalApiPort, ip_address]}
925 description: IP address of the server in the storage network
926 value: {get_attr: [StoragePort, ip_address]}
927 storage_mgmt_ip_address:
928 description: IP address of the server in the storage_mgmt network
929 value: {get_attr: [StorageMgmtPort, ip_address]}
931 description: IP address of the server in the tenant network
932 value: {get_attr: [TenantPort, ip_address]}
933 management_ip_address:
934 description: IP address of the server in the management network
935 value: {get_attr: [ManagementPort, ip_address]}
937 description: Hostname of the server
938 value: {get_attr: [Controller, name]}
941 Server's IP address and hostname in the /etc/hosts format
945 PRIMARYIP PRIMARYHOST.DOMAIN PRIMARYHOST
946 EXTERNALIP EXTERNALHOST.DOMAIN EXTERNALHOST
947 INTERNAL_APIIP INTERNAL_APIHOST.DOMAIN INTERNAL_APIHOST
948 STORAGEIP STORAGEHOST.DOMAIN STORAGEHOST
949 STORAGE_MGMTIP STORAGE_MGMTHOST.DOMAIN STORAGE_MGMTHOST
950 TENANTIP TENANTHOST.DOMAIN TENANTHOST
951 MANAGEMENTIP MANAGEMENTHOST.DOMAIN MANAGEMENTHOST
953 PRIMARYIP: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, ControllerHostnameResolveNetwork]}]}
954 DOMAIN: {get_param: CloudDomain}
955 PRIMARYHOST: {get_attr: [Controller, name]}
956 EXTERNALIP: {get_attr: [ExternalPort, ip_address]}
960 - - {get_attr: [Controller, name]}
962 INTERNAL_APIIP: {get_attr: [InternalApiPort, ip_address]}
966 - - {get_attr: [Controller, name]}
968 STORAGEIP: {get_attr: [StoragePort, ip_address]}
972 - - {get_attr: [Controller, name]}
974 STORAGE_MGMTIP: {get_attr: [StorageMgmtPort, ip_address]}
978 - - {get_attr: [Controller, name]}
980 TENANTIP: {get_attr: [TenantPort, ip_address]}
984 - - {get_attr: [Controller, name]}
986 MANAGEMENTIP: {get_attr: [ManagementPort, ip_address]}
990 - - {get_attr: [Controller, name]}
992 nova_server_resource:
993 description: Heat resource handle for the Nova compute server
995 {get_resource: Controller}
997 description: Swift device formatted for swift-ring-builder
1000 template: 'r1z1-IP:%PORT%/d1'
1002 IP: {get_attr: [NetIpMap, net_ip_uri_map, {get_param: [ServiceNetMap, SwiftMgmtNetwork]}]}
1003 swift_proxy_memcache:
1004 description: Swift proxy-memcache value
1007 template: "IP:11211"
1009 IP: {get_attr: [NetIpMap, net_ip_uri_map, {get_param: [ServiceNetMap, MemcachedNetwork]}]}
1010 tls_key_modulus_md5:
1011 description: MD5 checksum of the TLS Key Modulus
1012 value: {get_attr: [NodeTLSData, key_modulus_md5]}
1013 tls_cert_modulus_md5:
1014 description: MD5 checksum of the TLS Certificate Modulus
1015 value: {get_attr: [NodeTLSData, cert_modulus_md5]}