Files
tripleo-heat-templates/puppet/extraconfig/ceph/ceph-external-config.yaml
Giulio Fidente e19ae9dfe0 Allow customization of the Ceph pool names
This is useful in those scenarios were we want to use an external
Ceph deployment with multiple overclouds.

Change-Id: I1749d2a6547f6ce25843709e46a1447e8d42cfff
2015-11-05 19:38:44 +01:00

84 lines
2.8 KiB
YAML

heat_template_version: 2015-04-30
description: 'Configure parameters for an external Ceph cluster via Puppet.'
parameters:
ceph_storage_count:
default: 0
type: number
description: Number of Ceph storage nodes. Used to enable/disable managed Ceph installation.
ceph_external_mon_ips:
default: ''
type: string
description: List of external Ceph Mon host IPs.
ceph_client_key:
default: ''
type: string
description: Ceph key used to create the 'openstack' user keyring.
ceph_fsid:
default: ''
type: string
# The following parameters are unused for external Ceph clusters and
# are here and exist for compatibility
ceph_admin_key:
default: ''
type: string
ceph_mon_key:
default: ''
type: string
ceph_mon_names:
type: comma_delimited_list
ceph_mon_ips:
type: comma_delimited_list
NovaRbdPoolName:
default: vms
type: string
CinderRbdPoolName:
default: volumes
type: string
GlanceRbdPoolName:
default: images
type: string
resources:
CephClusterConfigImpl:
type: OS::Heat::StructuredConfig
properties:
group: os-apply-config
config:
hiera:
datafiles:
ceph_cluster:
mapped_data:
ceph_storage_count: {get_param: ceph_storage_count}
enable_external_ceph: true
ceph::profile::params::mon_host: {get_param: ceph_external_mon_ips}
ceph::profile::params::fsid: {get_param: ceph_fsid}
ceph::profile::params::client_keys:
str_replace:
template: "{
client.openstack: {
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=NOVA_POOL, allow rwx pool=GLANCE_POOL'
}
}"
params:
CLIENT_KEY: {get_param: ceph_client_key}
NOVA_POOL: {get_param: NovaRbdPoolName}
CINDER_POOL: {get_param: CinderRbdPoolName}
GLANCE_POOL: {get_param: GlanceRbdPoolName}
nova::compute::rbd::libvirt_images_rbd_pool: {get_param: NovaRbdPoolName}
cinder_rbd_pool_name: {get_param: CinderRbdPoolName}
glance::backend::rbd::rbd_store_pool: {get_param: GlanceRbdPoolName}
ceph_pools:
- {get_param: CinderRbdPoolName}
- {get_param: NovaRbdPoolName}
- {get_param: GlanceRbdPoolName}
outputs:
config_id:
description: The ID of the CephClusterConfigImpl resource.
value:
{get_resource: CephClusterConfigImpl}