tripleo-heat-templates/puppet/services/nova-scheduler.yaml
Lars Kellogg-Stedman b20bce1bf0 logging: use service_config_settings for fluentd
The initial fluentd client implementation predates the introduction of
service_config_settings, and necessitated some invasive changes to
what is now common/serivces.yaml. This commit modifies existing
services to use the service_config_settings based configuration
mechanism supported by more recent versions of the fluentd support in
puppet-tripleo.

Partial-bug: #1715187
Depends-On: I3149902401d68d6fd236073a73a20f982d4b952a
Depends-On: I2b057190ec0e4e75ee4ee47ebe0164c2644e5ab7
Depends-On: Ie7df4b8b94cb0ae38096ab95800f211ef1cd8455
Change-Id: I28028ffa00df2da8e0478a551d3de89c3ee46e1f
2018-02-07 16:37:00 +01:00

106 lines
3.8 KiB
YAML

heat_template_version: queens
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