269a3bbede
Allow user to configure rbd_default_features parameter in ceph.conf / [client] section. Operators deploying newer Ceph clients that must use older Ceph servers need to be able to easily set this option for backwards compatibility. Change-Id: I685c95c47282894bb6309168c537de877dbccc66 Depends-On: I477640c5db2cc84622da7734fb54cfe7740bd137 Related-Bug: 1633552
122 lines
4.2 KiB
YAML
122 lines
4.2 KiB
YAML
heat_template_version: ocata
|
|
|
|
description: >
|
|
Ceph External service.
|
|
|
|
parameters:
|
|
CephClientKey:
|
|
description: The Ceph client key. Can be created with ceph-authtool --gen-print-key. Currently only used for external Ceph deployments to create the openstack user keyring.
|
|
type: string
|
|
hidden: true
|
|
CephClientUserName:
|
|
default: openstack
|
|
type: string
|
|
CephClusterFSID:
|
|
type: string
|
|
description: The Ceph cluster FSID. Must be a UUID.
|
|
CephExternalMonHost:
|
|
default: ''
|
|
type: string
|
|
description: List of externally managed Ceph Mon Host IPs. Only used for external Ceph deployments.
|
|
CinderRbdPoolName:
|
|
default: volumes
|
|
type: string
|
|
CinderBackupRbdPoolName:
|
|
default: backups
|
|
type: string
|
|
GlanceRbdPoolName:
|
|
default: images
|
|
type: string
|
|
GlanceBackend:
|
|
default: swift
|
|
description: The short name of the Glance backend to use. Should be one
|
|
of swift, rbd, or file
|
|
type: string
|
|
constraints:
|
|
- allowed_values: ['swift', 'file', 'rbd']
|
|
GnocchiRbdPoolName:
|
|
default: metrics
|
|
type: string
|
|
NovaEnableRbdBackend:
|
|
default: false
|
|
description: Whether to enable or not the Rbd backend for Nova
|
|
type: boolean
|
|
NovaRbdPoolName:
|
|
default: vms
|
|
type: string
|
|
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
|
|
EndpointMap:
|
|
default: {}
|
|
description: Mapping of service endpoint -> protocol. Typically set
|
|
via parameter_defaults in the resource registry.
|
|
type: json
|
|
MonitoringSubscriptionCephExternal:
|
|
default: 'overcloud-ceph-external'
|
|
type: string
|
|
RbdDefaultFeatures:
|
|
default: ''
|
|
description: The default features enabled when creating a block device
|
|
image. Only applies to format 2 images. Set to '1' for Jewel
|
|
clients using older Ceph servers.
|
|
type: string
|
|
|
|
conditions:
|
|
glance_multiple_locations:
|
|
and:
|
|
- equals:
|
|
- get_param: GlanceBackend
|
|
- rbd
|
|
- equals:
|
|
- get_param: NovaEnableRbdBackend
|
|
- true
|
|
|
|
outputs:
|
|
role_data:
|
|
description: Role data for the Ceph External service.
|
|
value:
|
|
service_name: ceph_external
|
|
monitoring_subscription: {get_param: MonitoringSubscriptionCephExternal}
|
|
config_settings:
|
|
tripleo::profile::base::ceph::ceph_mon_host: {get_param: CephExternalMonHost}
|
|
ceph::profile::params::fsid: {get_param: CephClusterFSID}
|
|
ceph::profile::params::rbd_default_features: {get_param: RbdDefaultFeatures}
|
|
ceph::profile::params::client_keys:
|
|
str_replace:
|
|
template: "{
|
|
client.CLIENT_USER: {
|
|
secret: 'CLIENT_KEY',
|
|
mode: '0644',
|
|
cap_mon: 'allow r',
|
|
cap_osd: 'allow class-read object_prefix rbd_children, allow rwx pool=CINDER_POOL, allow rwx pool=CINDERBACKUP_POOL, allow rwx pool=NOVA_POOL, allow rwx pool=GLANCE_POOL, allow rwx pool=GNOCCHI_POOL'
|
|
}
|
|
}"
|
|
params:
|
|
CLIENT_USER: {get_param: CephClientUserName}
|
|
CLIENT_KEY: {get_param: CephClientKey}
|
|
NOVA_POOL: {get_param: NovaRbdPoolName}
|
|
CINDER_POOL: {get_param: CinderRbdPoolName}
|
|
CINDERBACKUP_POOL: {get_param: CinderBackupRbdPoolName}
|
|
GLANCE_POOL: {get_param: GlanceRbdPoolName}
|
|
GNOCCHI_POOL: {get_param: GnocchiRbdPoolName}
|
|
ceph::profile::params::manage_repo: false
|
|
# FIXME(gfidente): we should not have to list the packages explicitly in
|
|
# the templates, but this should stay until the following is fixed:
|
|
# https://bugs.launchpad.net/puppet-ceph/+bug/1629933
|
|
ceph::params::packages:
|
|
- ceph-base
|
|
- ceph-mon
|
|
- ceph-osd
|
|
service_config_settings:
|
|
glance_api:
|
|
glance::api::show_multiple_locations: {if: [glance_multiple_locations, true, false]}
|
|
step_config: |
|
|
include ::tripleo::profile::base::ceph::client
|