heat_template_version: rocky description: > OpenStack Nova Scheduler service configured with Puppet parameters: ServiceData: default: {} description: Dictionary packing service data type: json ServiceNetMap: default: {} description: Mapping of service_name -> network name. Typically set via parameter_defaults in the resource registry. This mapping overrides those in ServiceNetMapDefaults. type: json DefaultPasswords: default: {} type: json RoleName: default: '' description: Role name on which the service is applied type: string RoleParameters: default: {} description: Parameters specific to the role type: json EndpointMap: default: {} description: Mapping of service endpoint -> protocol. Typically set via parameter_defaults in the resource registry. type: json NovaSchedulerAvailableFilters: default: [] description: List of scheduler available filters type: comma_delimited_list NovaSchedulerDefaultFilters: type: comma_delimited_list default: [] description: > An array of filters used by Nova to filter a node.These filters will be applied in the order they are listed, so place your most restrictive filters first to make the filtering process more efficient. NovaSchedulerMaxAttempts: type: number default: 3 description: > Maximum number of attempts the scheduler will make when deploying the instance. You should keep it greater or equal to the number of bare metal nodes you expect to deploy at once to work around potential race conditions when scheduling. MonitoringSubscriptionNovaScheduler: default: 'overcloud-nova-scheduler' type: string NovaSchedulerLoggingSource: type: json default: tag: openstack.nova.scheduler path: /var/log/nova/nova-scheduler.log NovaSchedulerDiscoverHostsInCellsInterval: type: number default: -1 description: > This value controls how often (in seconds) the scheduler should attempt to discover new hosts that have been added to cells. The default value of -1 disables the periodic task completely. It is recommended to set this parameter for deployments using Ironic. resources: NovaBase: type: ./nova-base.yaml properties: ServiceData: {get_param: ServiceData} ServiceNetMap: {get_param: ServiceNetMap} DefaultPasswords: {get_param: DefaultPasswords} EndpointMap: {get_param: EndpointMap} RoleName: {get_param: RoleName} RoleParameters: {get_param: RoleParameters} outputs: role_data: description: Role data for the Nova Scheduler service. value: service_name: nova_scheduler monitoring_subscription: {get_param: MonitoringSubscriptionNovaScheduler} config_settings: map_merge: - get_attr: [NovaBase, role_data, config_settings] - nova::ram_allocation_ratio: '1.0' nova::scheduler::filter::scheduler_available_filters: {get_param: NovaSchedulerAvailableFilters} nova::scheduler::filter::scheduler_default_filters: {get_param: NovaSchedulerDefaultFilters} nova::scheduler::filter::scheduler_max_attempts: {get_param: NovaSchedulerMaxAttempts} nova::scheduler::discover_hosts_in_cells_interval: {get_param: NovaSchedulerDiscoverHostsInCellsInterval} service_config_settings: fluentd: tripleo_fluentd_groups_nova_scheduler: - nova tripleo_fluentd_sources_nova_scheduler: - {get_param: NovaSchedulerLoggingSource} step_config: | include tripleo::profile::base::nova::scheduler upgrade_tasks: - name: Stop nova_scheduler service when: step|int == 1 service: name=openstack-nova-scheduler state=stopped