Add TunedCustomProfile parameter and HCI Ceph filestore environment

Add TunedCustomProfile parameter which may contain a string in
INI format describing a custom tuned profile. Also provide a new
environment file for users of hypercoverged Ceph deployments
using the Ceph filestore storage backened. The tuned profile is
based on heavy I/O load testing. The provided environment file
creates /etc/tuned/ceph-filestore-osd-hci/tuned.conf whose
content is the following and sets this tuned profile to be active.

[main]
summary=ceph-osd Filestore tuned profile
include=throughput-performance
[sysctl]
vm.dirty_ratio = 10
vm.dirty_background_ratio = 3
[sysfs]
/sys/kernel/mm/ksm/run=0

Depends-On: Iba17d86bbdd710623ba1ba44b1ea5d4c1b99c541
Change-Id: Iaa1c82cefac5c8f2959fd7aeb57bd6860fd9096a
Closes-Bug: #1800232
This commit is contained in:
John Fulton 2018-10-26 18:06:10 -04:00
parent 03ca0e5d31
commit bc0246ff8a
3 changed files with 42 additions and 1 deletions

View File

@ -0,0 +1,13 @@
parameter_defaults:
# Reduce memory contention when collocating Nova compute and Ceph
# OSD services (HCI). For use with Ceph filestore, not bluestore.
TunedCustomProfile: |
[main]
summary=ceph-osd Filestore tuned profile
include=throughput-performance
[sysctl]
vm.dirty_ratio = 10
vm.dirty_background_ratio = 3
[sysfs]
/sys/kernel/mm/ksm/run=0
TunedProfileName: ceph-filestore-osd-hci

View File

@ -36,6 +36,17 @@ parameters:
type: string
tags:
- role_specific
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
outputs:
role_data:
@ -46,7 +57,9 @@ outputs:
map_replace:
- map_replace:
- tripleo::profile::base::tuned::profile: TunedProfileName
tripleo::profile::base::tuned::custom_profile: TunedCustomProfile
- values: {get_param: RoleParameters}
- values: {'TunedProfileName': {get_param: TunedProfileName}}
- values: {'TunedProfileName': {get_param: TunedProfileName},
'TunedCustomProfile': {get_param: TunedCustomProfile}}
step_config: |
include ::tripleo::profile::base::tuned

View File

@ -0,0 +1,15 @@
---
features:
- |
Add new TunedCustomProfile parameter which may contain a string
in INI format describing a custom tuned profile. Also provide a
new environment file for users of hypercoverged Ceph deployments
using the Ceph filestore storage backened. The tuned profile is
based on heavy I/O load testing. The provided environment file
creates /etc/tuned/ceph-filestore-osd-hci/tuned.conf and sets
this tuned profile to be active. Not intended for use with Ceph
bluestore.
fixes:
- |
CephOSD/Compute nodes crash under memory pressure unless custom tuned profile is used
(`bug 1800232 <https://bugs.launchpad.net/tripleo/+bug/1800232>`__).