Add CephConfigOverrides to allow arbitrary configs in ceph.conf

We need to reuse the ceph_conf_overrides structure provided by
ceph-ansible for both user provided configs and TripleO managed
configs. This change merges the special user facing parameter
with the TripleO generated configs.

Also adds osd_scenario and osd_objectstore params for compatibility
with newer ceph-ansible versions.

Change-Id: I29c689c6c689590da5b6a3f581fdbec98a52e207
Closes-Bug: #1715321
This commit is contained in:
Giulio Fidente 2017-09-06 09:39:12 +02:00
parent 5b3cd1dcac
commit 32bc2abf14
3 changed files with 20 additions and 11 deletions

View File

@ -105,6 +105,7 @@ parameter_defaults:
- /dev/loop3
journal_size: 512
journal_collocation: true
osd_scenario: collocated
CephAnsibleExtraConfig:
ceph_conf_overrides:
global:

View File

@ -58,6 +58,10 @@ parameters:
type: string
description: List of ceph-ansible tags to skip
default: 'package-install,with_pkg'
CephConfigOverrides:
type: json
description: Extra config settings to dump into ceph.conf
default: {}
CephClusterFSID:
type: string
description: The Ceph cluster FSID. Must be a UUID.
@ -268,17 +272,19 @@ outputs:
keys: *openstack_keys
pools: []
ceph_conf_overrides:
global:
osd_pool_default_size: {get_param: CephPoolDefaultSize}
osd_pool_default_pg_num: {get_param: CephPoolDefaultPgNum}
rgw_keystone_api_version: 3
rgw_keystone_url: {get_param: [EndpointMap, KeystoneInternal, uri_no_suffix]}
rgw_keystone_accepted_roles: 'Member, _member_, admin'
rgw_keystone_admin_domain: default
rgw_keystone_admin_project: service
rgw_keystone_admin_user: swift
rgw_keystone_admin_password: {get_param: SwiftPassword}
rgw_s3_auth_use_keystone: 'true'
map_merge:
- global:
osd_pool_default_size: {get_param: CephPoolDefaultSize}
osd_pool_default_pg_num: {get_param: CephPoolDefaultPgNum}
rgw_keystone_api_version: 3
rgw_keystone_url: {get_param: [EndpointMap, KeystoneInternal, uri_no_suffix]}
rgw_keystone_accepted_roles: 'Member, _member_, admin'
rgw_keystone_admin_domain: default
rgw_keystone_admin_project: service
rgw_keystone_admin_user: swift
rgw_keystone_admin_password: {get_param: SwiftPassword}
rgw_s3_auth_use_keystone: 'true'
- {get_param: CephConfigOverrides}
ntp_service_enabled: false
generate_fsid: false
ip_version:

View File

@ -38,6 +38,7 @@ parameters:
- /dev/vdb
journal_size: 512
journal_collocation: true
osd_scenario: collocated
resources:
CephBase:
@ -72,4 +73,5 @@ outputs:
- ceph_osd_ansible_vars:
map_merge:
- {get_attr: [CephBase, role_data, config_settings, ceph_common_ansible_vars]}
- osd_objectstore: filestore
- {get_param: CephAnsibleDisksConfig}