From: Sébastien Han Date: Tue, 6 Mar 2018 13:22:48 +0000 (+0100) Subject: mon: add support for pgp, pool type and rule name X-Git-Tag: v3.1.0beta4~8 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=277d885bc997cab538c933d0a395c81cecd127b0;p=ceph-ansible.git mon: add support for pgp, pool type and rule name 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 --- 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