[DEFAULT] # # From instack-undercloud # # Local file path to the necessary images. The path should be a # directory readable by the current user that contains the full set of # images. (string value) {% if undercloud_image_path is defined %} image_path = {{undercloud_image_path}} {% else %} #image_path = . {% endif %} # Fully qualified hostname (including domain) to set on the # Undercloud. If left unset, the current hostname will be used, but # the user is responsible for configuring all system hostname settings # appropriately. If set, the undercloud install will configure all # system hostname settings. (string value) {% if undercloud_undercloud_hostname is defined %} undercloud_hostname = {{undercloud_undercloud_hostname}} {% else %} #undercloud_hostname = {% endif %} {% if release in ['mitaka', 'newton', 'ocata', 'pike'] %} # Network CIDR for the Neutron-managed network for Overcloud # instances. This should be the subnet used for PXE booting. (string # value) network_cidr = {{undercloud_network_cidr}} {% endif %} # IP information for the interface on the Undercloud that will be # handling the PXE boots and DHCP for Overcloud instances. The IP # portion of the value will be assigned to the network interface # defined by local_interface, with the netmask defined by the prefix # portion of the value. (string value) local_ip = {{undercloud_local_ip|default( '%s/%s' % (undercloud_network_cidr|nthhost(1), undercloud_network_cidr.split('/').1))}} {% if release in ['mitaka', 'newton', 'ocata', 'pike'] %} # Network gateway for the Neutron-managed network for Overcloud # instances. This should match the local_ip above when using # masquerading. (string value) network_gateway = {{undercloud_network_gateway|default( undercloud_network_cidr|nthhost(1))}} {% endif %} # MTU, set neutron on the undercloud to match mtu of the nics # (string value) {% if undercloud_local_mtu is defined %} local_mtu = {{ undercloud_local_mtu }} {% endif %} {% if release in ['mitaka', 'newton'] %} # Virtual IP address to use for the public endpoints of Undercloud # services. Only used if undercloud_service_certficate is set. # (string value) undercloud_public_vip = {{undercloud_undercloud_public_vip|default( undercloud_network_cidr|nthhost(2))}} # Virtual IP address to use for the admin endpoints of Undercloud # services. Only used if undercloud_service_certficate is set. # (string value) undercloud_admin_vip = {{undercloud_undercloud_admin_vip|default( undercloud_network_cidr|nthhost(3))}} {% else %} # Virtual IP or DNS address to use for the public endpoints of # Undercloud services. Only used with SSL. (string value) # Deprecated group/name - [DEFAULT]/undercloud_public_vip #undercloud_public_host = 192.168.24.2 undercloud_public_host = {{undercloud_undercloud_public_host|default( undercloud_network_cidr|nthhost(2))}} # Virtual IP or DNS address to use for the admin endpoints of # Undercloud services. Only used with SSL. (string value) # Deprecated group/name - [DEFAULT]/undercloud_admin_vip #undercloud_admin_host = 192.168.24.3 undercloud_admin_host = {{undercloud_undercloud_admin_host|default( undercloud_network_cidr|nthhost(3))}} {% endif %} # Nameserver for the Undercloud node. # (string value) {% if virthost_nameservers is string %} undercloud_nameservers = {{ virthost_nameservers }} {% elif virthost_nameservers is sequence and virthost_nameservers|length > 0 %} undercloud_nameservers = {{ virthost_nameservers|join(',') }} {% elif undercloud_undercloud_nameservers is string %} undercloud_nameservers = {{ undercloud_undercloud_nameservers }} {% elif undercloud_undercloud_nameservers is sequence %} undercloud_nameservers = {{ undercloud_undercloud_nameservers|join(',') }} {% else %} # undercloud_nameservers = {% endif %} # List of ntp servers to use. (list value) {% if undercloud_undercloud_ntp_servers is string %} undercloud_ntp_servers = {{ undercloud_undercloud_ntp_servers }} {% elif undercloud_undercloud_ntp_servers is sequence %} undercloud_ntp_servers = {{ undercloud_undercloud_ntp_servers|join(',') }} {% else %} #undercloud_ntp_servers = {% endif %} # DNS domain name to use when deploying the overcloud. The overcloud # parameter "CloudDomain" must be set to a matching value. (string # value) #overcloud_domain_name = localdomain {% if overcloud_cloud_domain is defined %} overcloud_domain_name = {{overcloud_cloud_domain}} {% endif %} # Certificate file to use for OpenStack service SSL connections. # Setting this enables SSL for the OpenStack API endpoints, leaving it # unset disables SSL. (string value) #undercloud_service_certificate = # When set to True, an SSL certificate will be generated as part of # the undercloud install and this certificate will be used in place of # the value for undercloud_service_certificate. The resulting # certificate will be written to # /etc/pki/tls/certs/undercloud-[undercloud_public_vip].pem. This # certificate is signed by CA selected by the # "certificate_generation_ca" option. (boolean value) #generate_service_certificate = true {% if undercloud_generate_service_certificate is defined %} generate_service_certificate = {{undercloud_generate_service_certificate}} {% endif %} # The certmonger nickname of the CA from which the certificate will be # requested. This is used only if the generate_service_certificate # option is set. Note that if the "local" CA is selected the # certmonger's local CA certificate will be extracted to /etc/pki/ca- # trust/source/anchors/cm-local-ca.pem and subsequently added to the # trust chain. (string value) #certificate_generation_ca = local {% if undercloud_certificate_generation_ca is defined %} certificate_generation_ca = {{undercloud_certificate_generation_ca}} {% endif %} # Network interface on the Undercloud that will be handling the PXE # boots and DHCP for Overcloud instances. (string value) {% if undercloud_local_interface is defined %} local_interface = {{undercloud_local_interface}} {% else %} #local_interface = eth1 {% endif %} {% if release in ['mitaka', 'newton', 'ocata', 'pike'] %} # Network that will be masqueraded for external access, if required. # This should be the subnet used for PXE booting. (string value) masquerade_network = {{undercloud_masquerade_network|default( undercloud_network_cidr)}} {% endif %} {% if release in ['mitaka', 'newton', 'ocata', 'pike'] %} # Start of DHCP allocation range for PXE and DHCP of Overcloud # instances. (string value) dhcp_start = {{undercloud_dhcp_start|default( undercloud_network_cidr|nthhost(5))}} # End of DHCP allocation range for PXE and DHCP of Overcloud # instances. (string value) dhcp_end = {{undercloud_dhcp_end|default( undercloud_network_cidr|nthhost(30))}} {% endif %} # Path to hieradata override file. If set, the file will be copied # under /etc/puppet/hieradata and set as the first file in the hiera # hierarchy. This can be used to to custom configure services beyond # what undercloud.conf provides (string value) hieradata_override = {{ undercloud_hieradata_override }} # Network interface on which inspection dnsmasq will listen. If in # doubt, use the default value. (string value) # Deprecated group/name - [DEFAULT]/discovery_interface {% if undercloud_inspection_interface is defined %} inspection_interface = {{undercloud_inspection_interface}} {% else %} #inspection_interface = br-ctlplane {% endif %} {% if release in ['mitaka', 'newton', 'ocata', 'pike'] %} # Temporary IP range that will be given to nodes during the inspection # process. Should not overlap with the range defined by dhcp_start # and dhcp_end, but should be in the same network. (string value) # Deprecated group/name - [DEFAULT]/discovery_iprange inspection_iprange = {{undercloud_inspection_iprange|default( '%s,%s' % (undercloud_network_cidr|nthhost(100), undercloud_network_cidr|nthhost(120)))}} {% endif %} # Whether to enable extra hardware collection during the inspection # process. {% if undercloud_inspection_extras is defined %} inspection_extras = {{undercloud_inspection_extras}} {% endif %} # Whether to run benchmarks when inspecting nodes. (boolean value) # Deprecated group/name - [DEFAULT]/discovery_runbench {% if undercloud_inspection_runbench is defined %} inspection_runbench = {{undercloud_inspection_runbench}} {% else %} #inspection_runbench = false {% endif %} # Whether to enable the debug log level for Undercloud OpenStack # services. (boolean value) undercloud_debug = {{undercloud_undercloud_debug}} {% if containerized_undercloud|bool and release != 'rocky' %} # Container CLI used for deployment; # Can be docker or podman. (string value) container_cli = {{undercloud_container_cli}} {% endif %} # Enable or disable SELinux during the deployment. (boolean value) {% if undercloud_selinux_enabled is defined %} undercloud_enable_selinux = {{undercloud_selinux_enabled}} {% else %} # undercloud_enable_selinux = true {% endif %} # Enable or disable Paunch to manage containers. (boolean value) {% if undercloud_enable_paunch is defined %} undercloud_enable_paunch = {{undercloud_enable_paunch}} {% else %} # undercloud_enable_paunch = true {% endif %} # Whether to install Tempest in the Undercloud. (boolean value) enable_tempest = {{undercloud_enable_tempest}} # Whether to install Telemetry services (ceilometer, aodh) in the # Undercloud. (boolean value) enable_telemetry = {{undercloud_enable_telemetry}} # Whether to install requirements to run the TripleO validations. # (boolean value) enable_validations = {{undercloud_enable_validations}} # Whether to install the TripleO UI. (boolean value) enable_ui = {{undercloud_enable_ui}} # Whether to install Mistral in the Undercloud. (boolean value) enable_mistral = {{undercloud_enable_mistral}} # Whether to install Ironic in the Undercloud. (boolean value) enable_ironic = {{undercloud_enable_ironic}} # Whether to install Ironic-inspector in the Undercloud. (boolean value) enable_ironic_inspector = {{undercloud_enable_ironic_inspector}} # Whether to install Zaqar in the Undercloud. (boolean value) enable_zaqar = {{undercloud_enable_zaqar}} # Whether to enable Swift encryption at-rest or not. (boolean value) enable_swift_encryption = {{undercloud_enable_swift_encryption}} # Whether to enable Nova in the Undercloud. (boolean value) enable_nova = {{ undercloud_enable_nova }} # FIXME(mandre) turn this into ansible variable heat_native=true # Whether to use iPXE for deploy by default. (boolean value) ipxe_deploy = {{undercloud_ipxe_deploy}} # Whether to install Monitoring services in the Undercloud. (boolean # value) enable_monitoring = {{undercloud_enable_monitoring}} # Whether to install novajoin metadata service in the Undercloud. {% if undercloud_enable_novajoin or enable_tls_everywhere %} enable_novajoin = true {% else %} enable_novajoin = false {% endif %} # One Time Password to register Undercloud node with IPA server. # Required when enable_novajoin = true. {% if undercloud_ipa_otp is defined %} ipa_otp = {{undercloud_ipa_otp}} {% else %} # ipa_otp = {% endif %} {% if undercloud_docker_registry_mirror is defined and undercloud_docker_registry_mirror %} docker_registry_mirror = {{undercloud_docker_registry_mirror}} {% else %} # docker_registry_mirror = {% endif %} {% if undercloud_docker_insecure_registries is defined and undercloud_docker_insecure_registries %} docker_insecure_registries= {{undercloud_docker_insecure_registries}} {% else %} #docker_insecure_registries= {% endif %} # additional env files for undercloud, used with containers {% if undercloud_container_images_file is defined and containerized_undercloud|bool %} container_images_file = {{ undercloud_container_images_file }} {% elif containerized_undercloud|bool %} container_images_file = {{ working_dir }}/containers-prepare-parameter.yaml {% else %} #container_images_file = {% endif %} {% if undercloud_custom_env_files is defined %} custom_env_files = {{ undercloud_custom_env_files.split()|join(',') }} {% else %} #custom_env_files = {% endif %} {% if undercloud_net_config_override is defined %} net_config_override = {{ undercloud_net_config_override }} {% else %} #net_config_override = {% endif %} # Output directory for state, like downloaded ansible configs and # processed heat templates for heat installer {% if undercloud_undercloud_output_dir is defined %} output_dir = {{undercloud_undercloud_output_dir}} {% else %} #output_dir = $HOME/.undercloud-heat-installer {% endif %} # Clean up mode for the temp files for heat installer on exit {% if undercloud_undercloud_cleanup is defined %} cleanup = {{undercloud_undercloud_cleanup}} {% else %} #cleanup = True {% endif %} # Whether to clean undercloud rpms after an upgrade # to a containerized undercloud. {% if undercloud_upgrade_cleanup is defined %} upgrade_cleanup = {{undercloud_upgrade_cleanup}} {% else %} #upgrade_cleanup = False {% endif %} # Heat templates directory templates = {{ undercloud_templates_path }} # Extra config elements. {% if undercloud_conf_extra != "" %} {{ undercloud_conf_extra }} {% endif %} # Enable support for routed ctlplane networks {% if undercloud_enable_routed_networks|default(false)|bool %} enable_routed_networks = {{undercloud_enable_routed_networks}} {% endif %} {% if undercloud_roles_data is defined %} roles_file = {{undercloud_roles_data}} {% endif %} # Whether to clean overcloud nodes (wipe the hard drive) between # deployments and after the introspection. {% if undercloud_clean_nodes is defined %} clean_nodes = {{undercloud_clean_nodes}} {% endif %} {% if release in ['mitaka', 'newton', 'ocata', 'pike'] %} [auth] # # From instack-undercloud # # Password used for MySQL databases. If left unset, one will be # automatically generated. (string value) {% if undercloud_undercloud_db_password is defined %} undercloud_db_password = {{undercloud_undercloud_db_password}} {% else %} #undercloud_db_password = {% endif %} # Keystone admin token. If left unset, one will be automatically # generated. (string value) {% if undercloud_undercloud_admin_token is defined %} undercloud_admin_token = {{undercloud_undercloud_admin_token}} {% else %} #undercloud_admin_token = {% endif %} # Keystone admin password. If left unset, one will be automatically # generated. (string value) {% if undercloud_undercloud_admin_password is defined %} undercloud_admin_password = {{undercloud_undercloud_admin_password}} {% else %} #undercloud_admin_password = {% endif %} # Glance service password. If left unset, one will be automatically # generated. (string value) {% if undercloud_undercloud_glance_password is defined %} undercloud_glance_password = {{undercloud_undercloud_glance_password}} {% else %} #undercloud_glance_password = {% endif %} # Heat db encryption key(must be 16, 24, or 32 characters. If left # unset, one will be automatically generated. (string value) {% if undercloud_undercloud_heat_encryption_key is defined %} undercloud_heat_encryption_key = {{undercloud_undercloud_heat_encryption_key}} {% else %} #undercloud_heat_encryption_key = {% endif %} # Heat service password. If left unset, one will be automatically # generated. (string value) {% if undercloud_undercloud_heat_password is defined %} undercloud_heat_password = {{undercloud_undercloud_heat_password}} {% else %} #undercloud_heat_password = {% endif %} # Neutron service password. If left unset, one will be automatically # generated. (string value) {% if undercloud_undercloud_neutron_password is defined %} undercloud_neutron_password = {{undercloud_undercloud_neutron_password}} {% else %} #undercloud_neutron_password = {% endif %} # Nova service password. If left unset, one will be automatically # generated. (string value) {% if undercloud_undercloud_nova_password is defined %} undercloud_nova_password = {{undercloud_undercloud_nova_password}} {% else %} #undercloud_nova_password = {% endif %} # Ironic service password. If left unset, one will be automatically # generated. (string value) {% if undercloud_undercloud_ironic_password is defined %} undercloud_ironic_password = {{undercloud_undercloud_ironic_password}} {% else %} #undercloud_ironic_password = {% endif %} # Ceilometer service password. If left unset, one will be # automatically generated. (string value) {% if undercloud_undercloud_ceilometer_password is defined %} undercloud_ceilometer_password = {{undercloud_undercloud_ceilometer_password}} {% else %} #undercloud_ceilometer_password = {% endif %} # Aodh service password. If left unset, one will be # automatically generated. (string value) {% if undercloud_undercloud_aodh_password is defined %} undercloud_aodh_password = {{undercloud_undercloud_aodh_password}} {% else %} #undercloud_aodh_password = {% endif %} # Sensu service password. If left unset, one will be automatically # generated. (string value) {% if undercloud_undercloud_sensu_password is defined %} undercloud_sensu_password = {{undercloud_undercloud_sensu_password}} {% else %} #undercloud_sensu_password = {% endif %} # Ceilometer metering secret. If left unset, one will be automatically # generated. (string value) {% if undercloud_undercloud_ceilometer_metering_secret is defined %} undercloud_ceilometer_metering_secret = {{undercloud_undercloud_ceilometer_metering_secret}} {% else %} #undercloud_ceilometer_metering_secret = {% endif %} # Ceilometer snmpd user. If left unset, one will be automatically # generated. (string value) {% if undercloud_undercloud_ceilometer_snmpd_user is defined %} undercloud_ceilometer_snmpd_user = {{undercloud_undercloud_ceilometer_snmpd_user}} {% else %} #undercloud_ceilometer_snmpd_user = {% endif %} # Ceilometer snmpd password. If left unset, one will be automatically # generated. (string value) {% if undercloud_undercloud_ceilometer_snmpd_password is defined %} undercloud_ceilometer_snmpd_password = {{undercloud_undercloud_ceilometer_snmpd_password}} {% else %} #undercloud_ceilometer_snmpd_password = {% endif %} # Swift service password. If left unset, one will be automatically # generated. (string value) {% if undercloud_undercloud_swift_password is defined %} undercloud_swift_password = {{undercloud_undercloud_swift_password}} {% else %} #undercloud_swift_password = {% endif %} # Mistral service password. If left unset, one will be automatically # generated. (string value) {% if undercloud_undercloud_mistral_password is defined %} undercloud_mistral_password = {{undercloud_undercloud_mistral_password}} {% else %} #undercloud_mistral_password = {% endif %} # Rabbitmq cookie. If left unset, one will be automatically generated. # (string value) {% if undercloud_undercloud_rabbit_cookie is defined %} undercloud_rabbit_cookie = {{undercloud_undercloud_rabbit_cookie}} {% else %} #undercloud_rabbit_cookie = {% endif %} # Rabbitmq password. If left unset, one will be automatically # generated. (string value) {% if undercloud_undercloud_rabbit_password is defined %} undercloud_rabbit_password = {{undercloud_undercloud_rabbit_password}} {% else %} #undercloud_rabbit_password = {% endif %} # Rabbitmq username. If left unset, one will be automatically # generated. (string value) {% if undercloud_undercloud_rabbit_username is defined %} undercloud_rabbit_username = {{undercloud_undercloud_rabbit_username}} {% else %} #undercloud_rabbit_username = {% endif %} # Heat stack domain admin password. If left unset, one will be # automatically generated. (string value) {% if undercloud_undercloud_heat_stack_domain_admin_password is defined %} undercloud_heat_stack_domain_admin_password = {{undercloud_undercloud_heat_stack_domain_admin_password}} {% else %} #undercloud_heat_stack_domain_admin_password = {% endif %} # Swift hash suffix. If left unset, one will be automatically # generated. (string value) {% if undercloud_undercloud_swift_hash_suffix is defined %} undercloud_swift_hash_suffix = {{undercloud_undercloud_swift_hash_suffix}} {% else %} #undercloud_swift_hash_suffix = {% endif %} {% endif %} {% if release not in ['mitaka', 'newton', 'ocata', 'pike'] %} # List of routed network subnets for provisioning and introspection. # Comma separated list of names/tags. For each network a section/group # needs to be added to the configuration file with these parameters # set: cidr, dhcp_start, dhcp_end, inspection_iprange, gateway and # masquerade_network. Note: The section/group must be placed before or # after any other section. (See the example section [ctlplane-subnet] # in the sample configuration file.) (list value) subnets = ctlplane-subnet # Name of the local subnet, where the PXE boot and DHCP interfaces for # overcloud instances is located. The IP address of the # local_ip/local_interface should reside in this subnet. (string # value) local_subnet = ctlplane-subnet [ctlplane-subnet] # Network CIDR for the Neutron-managed subnet for Overcloud instances. # (string value) # Deprecated group/name - [DEFAULT]/network_cidr cidr = {{undercloud_network_cidr}} # Start of DHCP allocation range for PXE and DHCP of Overcloud # instances on this network. (string value) # Deprecated group/name - [DEFAULT]/dhcp_start dhcp_start = {{undercloud_dhcp_start|default( undercloud_network_cidr|nthhost(5))}} # End of DHCP allocation range for PXE and DHCP of Overcloud instances # on this network. (string value) # Deprecated group/name - [DEFAULT]/dhcp_end dhcp_end = {{undercloud_dhcp_end|default( undercloud_network_cidr|nthhost(30))}} # Network gateway for the Neutron-managed network for Overcloud # instances on this network. (string value) # Deprecated group/name - [DEFAULT]/network_gateway gateway = {{undercloud_network_gateway|default( undercloud_network_cidr|nthhost(1))}} # Temporary IP range that will be given to nodes on this network # during the inspection process. Should not overlap with the range # defined by dhcp_start and dhcp_end, but should be in the same ip # subnet. (string value) # Deprecated group/name - [DEFAULT]/inspection_iprange inspection_iprange = {{undercloud_inspection_iprange|default( '%s,%s' % (undercloud_network_cidr|nthhost(100), undercloud_network_cidr|nthhost(120)))}} # The network will be masqueraded for external access. (boolean value) masquerade={{ ctlplane_masquerade|default(false) }} {% endif %}