]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-ansible.git/commitdiff
osd: remove redundant options to enable bluestore
authorSébastien Han <seb@redhat.com>
Thu, 29 Jun 2017 14:52:33 +0000 (16:52 +0200)
committerSébastien Han <seb@redhat.com>
Tue, 4 Jul 2017 16:22:03 +0000 (18:22 +0200)
There is no need for 2 variables to enable bluestore, prior to this
patch one had to do the following to activate bluestore:

osd_objectstore: bluestore
bluestore: true

Now you just need to set `osd_objectstore: bluestore`.

Fixes: https://github.com/ceph/ceph-ansible/issues/1475
Signed-off-by: Sébastien Han <seb@redhat.com>
group_vars/osds.yml.sample
roles/ceph-osd/defaults/main.yml
roles/ceph-osd/tasks/check_mandatory_vars.yml
roles/ceph-osd/tasks/scenarios/bluestore.yml

index 9e96266fcda6d91f009062d550b25c022d5209fa..7b2dcbfb007a971304c787a323b2086766b30937 100644 (file)
@@ -135,7 +135,8 @@ dummy:
 
 # IV. This will partition disks for BlueStore
 # Use 'true' to enable this scenario
-#bluestore: false
+# To enable bluestore just set:
+# osd_objectstore: bluestore
 
 
 # V. Encrypt osd data and/or journal devices with dm-crypt.
index 03e26d3bd9aae71470ccc0bb0dd9f0e1f001c1dd..4779c3db24b2053ad75c3af65abb08a8447a27b9 100644 (file)
@@ -127,7 +127,8 @@ raw_journal_devices: []
 
 # IV. This will partition disks for BlueStore
 # Use 'true' to enable this scenario
-bluestore: false
+# To enable bluestore just set:
+# osd_objectstore: bluestore
 
 
 # V. Encrypt osd data and/or journal devices with dm-crypt.
index da8b23b01439aa69b7bfb30a66068b07d97e635f..c091059230a6d7c6caa2a6a8f6c1ef0bae2c2b8a 100644 (file)
@@ -28,7 +28,7 @@
     - not containerized_deployment
     - not journal_collocation
     - not raw_multi_journal
-    - not bluestore
+    - osd_objectstore != 'bluestore'
     - not dmcrypt_journal_collocation
     - not dmcrypt_dedicated_journal
 
     - osd_group_name in group_names
     - not containerized_deployment
     - (journal_collocation and raw_multi_journal)
-      or (journal_collocation and bluestore)
-      or (raw_multi_journal and bluestore)
+      or (journal_collocation and osd_objectstore == 'bluestore')
+      or (raw_multi_journal and osd_objectstore == 'bluestore')
       or (dmcrypt_journal_collocation and journal_collocation)
       or (dmcrypt_journal_collocation and raw_multi_journal)
-      or (dmcrypt_journal_collocation and bluestore)
+      or (dmcrypt_journal_collocation and osd_objectstore == 'bluestore')
       or (dmcrypt_dedicated_journal and journal_collocation)
       or (dmcrypt_dedicated_journal and raw_multi_journal)
-      or (dmcrypt_dedicated_journal and bluestore)
+      or (dmcrypt_dedicated_journal and osd_objectstore == 'bluestore')
       or (dmcrypt_dedicated_journal and dmcrypt_journal_collocation)
 
 - name: verify devices have been provided
     - raw_journal_devices|length == 0
       or devices|length == 0
 
+- name: check if bluestore is supported by the selection ceph version
+  fail:
+    msg: "Bluestore is not supported with the selected Ceph version, use Luminous and above."
+  when:
+    - osd_objectstore != 'bluestore'
+    - osd_group_name in group_names
+    - ( ceph_release_num.{{ ceph_release }} < ceph_release_num.luminous ) }} )
index 78897e2887df9cfca87830f567640991509060f4..4cb1b3f5ad47046226884c7a18a878bde0f6896f 100644 (file)
@@ -18,7 +18,7 @@
     - item.value.removable == "0"
     - item.value.partitions|count == 0
     - item.value.holders|count == 0
-    - bluestore
+    - osd_objectstore == 'bluestore'
     - osd_auto_discovery
 
 - name: manually prepare bluestore osd disk(s)
@@ -32,7 +32,7 @@
     - not item.1.get("skipped")
     - item.0.get("rc", 0) != 0
     - item.1.get("rc", 0) != 0
-    - bluestore
+    - osd_objectstore == 'bluestore'
     - not osd_auto_discovery
 
 - include: ../activate_osds.yml