From 277d885bc997cab538c933d0a395c81cecd127b0 Mon Sep 17 00:00:00 2001 From: =?utf8?q?S=C3=A9bastien=20Han?= Date: Tue, 6 Mar 2018 14:22:48 +0100 Subject: [PATCH] mon: add support for pgp, pool type and rule name MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit When creating pools, it's crucial to expose all the options available as part of the pool creation command. As explained in: http://docs.ceph.com/docs/jewel/rados/operations/pools/ Signed-off-by: Sébastien Han --- group_vars/mons.yml.sample | 20 +++++++++++++++----- roles/ceph-mon/defaults/main.yml | 20 +++++++++++++++----- roles/ceph-mon/tasks/openstack_config.yml | 9 ++++++++- 3 files changed, 38 insertions(+), 11 deletions(-) diff --git a/group_vars/mons.yml.sample b/group_vars/mons.yml.sample index 06653e49d..970879494 100644 --- a/group_vars/mons.yml.sample +++ b/group_vars/mons.yml.sample @@ -89,27 +89,37 @@ dummy: #openstack_glance_pool: # name: images # pg_num: "{{ osd_pool_default_pg_num }}" -# rule_name: "" +# pgp_num: "{{ osd_pool_default_pg_num }}" +# type: replicated +# rule_name: "0" # size: "" #openstack_cinder_pool: # name: volumes # pg_num: "{{ osd_pool_default_pg_num }}" -# rule_name: "" +# pgp_num: "{{ osd_pool_default_pg_num }}" +# type: replicated +# rule_name: "0" # size: "" #openstack_nova_pool: # name: vms # pg_num: "{{ osd_pool_default_pg_num }}" -# rule_name: "" +# pgp_num: "{{ osd_pool_default_pg_num }}" +# type: replicated +# rule_name: "0" # size: "" #openstack_cinder_backup_pool: # name: backups # pg_num: "{{ osd_pool_default_pg_num }}" -# rule_name: "" +# pgp_num: "{{ osd_pool_default_pg_num }}" +# type: replicated +# rule_name: "0" # size: "" #openstack_gnocchi_pool: # name: metrics # pg_num: "{{ osd_pool_default_pg_num }}" -# rule_name: "" +# pgp_num: "{{ osd_pool_default_pg_num }}" +# type: replicated +# rule_name: "0" # size: "" #openstack_pools: diff --git a/roles/ceph-mon/defaults/main.yml b/roles/ceph-mon/defaults/main.yml index 6bb6bfe73..271f2b8e0 100644 --- a/roles/ceph-mon/defaults/main.yml +++ b/roles/ceph-mon/defaults/main.yml @@ -81,27 +81,37 @@ openstack_config: false openstack_glance_pool: name: images pg_num: "{{ osd_pool_default_pg_num }}" - rule_name: "" + pgp_num: "{{ osd_pool_default_pg_num }}" + type: replicated + rule_name: "0" size: "" openstack_cinder_pool: name: volumes pg_num: "{{ osd_pool_default_pg_num }}" - rule_name: "" + pgp_num: "{{ osd_pool_default_pg_num }}" + type: replicated + rule_name: "0" size: "" openstack_nova_pool: name: vms pg_num: "{{ osd_pool_default_pg_num }}" - rule_name: "" + pgp_num: "{{ osd_pool_default_pg_num }}" + type: replicated + rule_name: "0" size: "" openstack_cinder_backup_pool: name: backups pg_num: "{{ osd_pool_default_pg_num }}" - rule_name: "" + pgp_num: "{{ osd_pool_default_pg_num }}" + type: replicated + rule_name: "0" size: "" openstack_gnocchi_pool: name: metrics pg_num: "{{ osd_pool_default_pg_num }}" - rule_name: "" + pgp_num: "{{ osd_pool_default_pg_num }}" + type: replicated + rule_name: "0" size: "" openstack_pools: diff --git a/roles/ceph-mon/tasks/openstack_config.yml b/roles/ceph-mon/tasks/openstack_config.yml index 42c0133dc..209670f91 100644 --- a/roles/ceph-mon/tasks/openstack_config.yml +++ b/roles/ceph-mon/tasks/openstack_config.yml @@ -1,6 +1,13 @@ --- - name: create openstack pool(s) - command: "{{ docker_exec_cmd }} ceph --cluster {{ cluster }} osd pool create {{ item.name }} {{ item.pg_num }} {{ item.rule_name|default('') }} {{ item.size|default('') }}" + command: > + "{{ docker_exec_cmd }} ceph --cluster {{ cluster }} + osd pool create {{ item.name }} + {{ item.pg_num }} + {{ item.pgp_num | default(item.pg_num) }} + {{ item.rule_name|default("0") }} + {{ item.type|default("replicated") }} + {{ item.size|default('') }}" with_items: "{{ openstack_pools | unique }}" changed_when: false -- 2.39.5