From 32bac6b491bee48144fc83424978b742b0a2a3eb Mon Sep 17 00:00:00 2001 From: Andrew Schoen Date: Thu, 26 Apr 2018 10:09:47 -0500 Subject: [PATCH] ceph-validate: move var checks from ceph-osd into this role Signed-off-by: Andrew Schoen --- roles/ceph-osd/tasks/check_mandatory_vars.yml | 116 ------------------ roles/ceph-osd/tasks/main.yml | 3 - roles/ceph-validate/tasks/main.yml | 27 ++++ 3 files changed, 27 insertions(+), 119 deletions(-) delete mode 100644 roles/ceph-osd/tasks/check_mandatory_vars.yml diff --git a/roles/ceph-osd/tasks/check_mandatory_vars.yml b/roles/ceph-osd/tasks/check_mandatory_vars.yml deleted file mode 100644 index 4f193abd7..000000000 --- a/roles/ceph-osd/tasks/check_mandatory_vars.yml +++ /dev/null @@ -1,116 +0,0 @@ ---- -- name: make sure public_network configured - fail: - msg: "public_network must be configured. Ceph public network" - when: - - public_network == '0.0.0.0/0' - -- name: make sure cluster_network configured - fail: - msg: "cluster_network must be configured. Ceph replication network" - when: - - cluster_network == '0.0.0.0/0' - - not containerized_deployment - -- name: make sure journal_size configured - debug: - msg: "WARNING: journal_size is configured to {{ journal_size }}, which is less than 5GB. This is not recommended and can lead to severe issues." - when: - - journal_size|int < 5120 - - osd_objectstore == 'filestore' - - osd_group_name in group_names - -- name: make sure an osd scenario was chosen - fail: - msg: "please choose an osd scenario" - when: - - osd_group_name is defined - - osd_group_name in group_names - - osd_scenario == 'dummy' - -- name: make sure a valid osd scenario was chosen - fail: - msg: "please choose an osd scenario, valid scenarios are {{ valid_osd_scenarios }}" - when: - - osd_group_name is defined - - osd_group_name in group_names - - not osd_scenario in valid_osd_scenarios - -- name: verify devices have been provided - fail: - msg: "please provide devices to your osd scenario" - when: - - osd_group_name is defined - - osd_group_name in group_names - - not osd_auto_discovery - - not osd_scenario == "lvm" - - devices|length == 0 - -- name: check if osd_scenario lvm is supported by the selected ceph version - fail: - msg: "osd_scenario lvm is not supported by the selected Ceph version, use Luminous or newer." - when: - - osd_group_name is defined - - osd_group_name in group_names - - not containerized_deployment - - osd_scenario == "lvm" - - ceph_release_num[ceph_release] < ceph_release_num.luminous - -- name: verify lvm_volumes have been provided - fail: - msg: "please provide lvm_volumes to your osd scenario" - when: - - osd_group_name is defined - - osd_group_name in group_names - - osd_scenario == "lvm" - - not osd_auto_discovery - - lvm_volumes|length == 0 - -- name: make sure the lvm_volumes variable is a list - fail: - msg: "lvm_volumes: must be a list" - when: - - osd_group_name is defined - - osd_group_name in group_names - - not osd_auto_discovery - - osd_scenario == "lvm" - - lvm_volumes is string - -- name: make sure the devices variable is a list - fail: - msg: "devices: must be a list, not a string, i.e. [ \"/dev/sda\" ]" - when: - - osd_group_name is defined - - osd_group_name in group_names - - not osd_auto_discovery - - devices is string - -- name: verify dedicated devices have been provided - fail: - msg: "please provide devices and dedicated_devices to your osd scenario" - when: - - osd_group_name is defined - - osd_group_name in group_names - - osd_scenario == 'non-collocated' - - dedicated_devices|length == 0 - or devices|length == 0 - -- name: make sure the dedicated_devices variable is a list - fail: - msg: "dedicated_devices: must be a list, not a string, i.e. [ \"/dev/sda\" ]" - when: - - osd_group_name is defined - - osd_group_name in group_names - - osd_scenario == 'non-collocated' - - dedicated_devices is string - - dedicated_devices|length == 0 - or devices|length == 0 - -- name: check if bluestore is supported by the selected ceph version - fail: - msg: "bluestore is not supported by the selected Ceph version, use Luminous or above." - when: - - osd_group_name is defined - - osd_group_name in group_names - - osd_objectstore == 'bluestore' - - ceph_release_num[ceph_release] < ceph_release_num.luminous diff --git a/roles/ceph-osd/tasks/main.yml b/roles/ceph-osd/tasks/main.yml index 65c96bf42..b61cfcbed 100644 --- a/roles/ceph-osd/tasks/main.yml +++ b/roles/ceph-osd/tasks/main.yml @@ -5,9 +5,6 @@ when: - containerized_deployment -- name: include check_mandatory_vars.yml - include: check_mandatory_vars.yml - - name: include system_tuning.yml include: system_tuning.yml # Hard code this so we will skip the entire file instead of individual tasks (Default isn't Consistent) diff --git a/roles/ceph-validate/tasks/main.yml b/roles/ceph-validate/tasks/main.yml index 922b1b887..88bf7e9cf 100644 --- a/roles/ceph-validate/tasks/main.yml +++ b/roles/ceph-validate/tasks/main.yml @@ -11,3 +11,30 @@ when: - groups.get(mds_group_name, []) | length > 0 - item.pgs == '' + +- name: make sure journal_size configured + debug: + msg: "WARNING: journal_size is configured to {{ journal_size }}, which is less than 5GB. This is not recommended and can lead to severe issues." + when: + - journal_size|int < 5120 + - osd_objectstore == 'filestore' + - osd_group_name in group_names + +- name: check if osd_scenario lvm is supported by the selected ceph version + fail: + msg: "osd_scenario lvm is not supported by the selected Ceph version, use Luminous or newer." + when: + - osd_group_name is defined + - osd_group_name in group_names + - not containerized_deployment + - osd_scenario == "lvm" + - ceph_release_num[ceph_release] < ceph_release_num.luminous + +- name: check if bluestore is supported by the selected ceph version + fail: + msg: "bluestore is not supported by the selected Ceph version, use Luminous or above." + when: + - osd_group_name is defined + - osd_group_name in group_names + - osd_objectstore == 'bluestore' + - ceph_release_num[ceph_release] < ceph_release_num.luminous -- 2.39.5