tripleo-heat-templates/deployment/tuned/tuned-baremetal-ansible.yaml

74 lines
2.3 KiB
YAML

heat_template_version: wallaby
description: >
Configure tuned
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
EndpointMap:
default: {}
description: Mapping of service endpoint -> protocol. Typically set
via parameter_defaults in the resource registry.
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
TunedCustomProfile:
default: ''
description: The definition of a new tuned profile in INI format which
will be named after the TunedProfileName and applied to the
host. E.g. if TunedProfileName is 'my_profile', it creates
the file '/etc/tuned/my_profile/tuned.conf' on host whose
content is the value of TunedCustomProfile, e.g. "[main]\n
include=throughput-performance\n[sysctl]\nvm.dirty_ratio=10"
type: string
tags:
- role_specific
TunedProfileName:
default: 'throughput-performance'
description: Tuned Profile to apply to the host
type: string
tags:
- role_specific
resources:
RoleParametersValue:
type: OS::Heat::Value
properties:
type: json
value:
map_replace:
- map_replace:
- tuned_profile: TunedProfileName
tuned_custom_profile: TunedCustomProfile
- values: {get_param: [RoleParameters]}
- values:
TunedProfileName: {get_param: TunedProfileName}
TunedCustomProfile: {get_param: TunedCustomProfile}
outputs:
role_data:
description: Role data for tuned
value:
service_name: tuned
host_prep_tasks:
- include_role:
name: tuned
ansible_group_vars:
tuned_profile: {get_attr: [RoleParametersValue, value, tuned_profile]}
tuned_custom_profile: {get_attr: [RoleParametersValue, value, tuned_custom_profile]}