Merge pull request #315 from ceph/check-vars

Use more variable check
pull/317/head
Leseb 2015-07-04 20:51:09 +02:00
commit 0ac89101be
7 changed files with 81 additions and 31 deletions

1
Vagrantfile vendored
View File

@ -40,6 +40,7 @@ ansible_provision = proc do |ansible|
monitor_interface: 'eth1',
cluster_network: "#{SUBNET}.0/24",
public_network: "#{SUBNET}.0/24",
devices: "[ '/dev/sdb', '/dev/sdc' ]",
}
ansible.limit = 'all'
end

View File

@ -102,6 +102,7 @@ dummy:
## Monitor options
#
#monitor_interface: interface
#monitor_secret:
#mon_osd_down_out_interval: 600
#mon_osd_min_down_reporters: 7 # number of OSDs per host + 1
#mon_clock_drift_allowed: .15

View File

@ -1,16 +0,0 @@
---
- name: make sure journal_size configured
fail: msg="journal_size must be configured. See http://ceph.com/docs/master/rados/configuration/osd-config-ref/"
when: journal_size|int == 0
- name: make sure monitor_interface configured
fail: msg="monitor_interface must be configured. Interface for the monitor to listen on"
when: monitor_interface == 'interface'
- name: make sure cluster_network configured
fail: msg="cluster_network must be configured. Ceph replication network"
when: cluster_network == '0.0.0.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'

View File

@ -0,0 +1,65 @@
---
- name: make sure an installation source was chosen
fail: msg="choose an installation source or read https://github.com/ceph/ceph-ansible/wiki"
when:
not ceph_stable and
not ceph_dev and
not ceph_stable_ice and
not ceph_stable_rh_storage
- name: verify that a method was chosen for red hat storage
fail: msg="choose between ceph_stable_rh_storage_cdn_install and ceph_stable_rh_storage_iso_install"
when:
ceph_stable_rh_storage and
not ceph_stable_rh_storage_cdn_install and
not ceph_stable_rh_storage_iso_install
- name: make sure a monitor secret is defined
fail: msg"monitor_secret must be defined. Go edit group_vars/all or read https://github.com/ceph/ceph-ansible/wiki"
when: monitor_secret is not defined
- name: make sure journal_size configured
fail: msg="journal_size must be configured. See http://ceph.com/docs/master/rados/configuration/osd-config-ref/"
when: journal_size|int == 0
- name: make sure monitor_interface configured
fail: msg="monitor_interface must be configured. Interface for the monitor to listen on"
when: monitor_interface == 'interface'
- name: make sure cluster_network configured
fail: msg="cluster_network must be configured. Ceph replication network"
when: cluster_network == '0.0.0.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 an osd scenario was chosen
fail: msg="please choose an osd scenario"
when:
osd_group_name is defined and
not journal_collocation and
not raw_multi_journal and
not osd_directory
- name: verify devices have been provided
fail: msg="please provide devices to your osd scenario"
when:
osd_group_name is defined and
(journal_collocation or raw_multi_journal) and
devices is not defined
- name: verify journal devices have been provided
fail: msg="please provide devices to your osd scenario"
when:
osd_group_name is defined and
raw_multi_journal and
raw_journal_devices is not defined
- name: verify directories have been provided
fail: msg="please provide directories to your osd scenario"
when:
osd_group_name is defined and
osd_group_name in group_names and
osd_directory and
osd_directories is not defined

View File

@ -1,6 +1,8 @@
---
- include: os_check.yml
- include: check_mandatory_vars.yml
- include: os_tuning.yml
when: osd_group_name in group_names
@ -48,8 +50,6 @@
register: cluster_uuid
sudo: false
- include: check-mandatory-vars.yml
- name: generate Ceph configuration file
template: >
src=ceph.conf.j2

View File

@ -24,6 +24,7 @@
# as a safety measure we run the raw command
- name: start and add that the monitor service to the init sequence
command: service ceph start mon
changed_when: false
when: ansible_distribution != "Ubuntu"
- name: collect admin and bootstrap keys

View File

@ -48,9 +48,9 @@ zap_devices: false
# Declare devices
# All the scenarii inherit from the following device declaration
#
devices:
- /dev/sdb
- /dev/sdc
#devices:
# - /dev/sdb
# - /dev/sdc
# Device discovery is based on the Ansible fact 'ansible_devices'
# which reports all the devices on a system. If chosen all the disks
@ -86,22 +86,20 @@ journal_collocation: false
# 2. Progressively add new devices
raw_multi_journal: false
raw_journal_devices:
- /dev/sdb
- /dev/sdb
- /dev/sdc
- /dev/sdc
#raw_journal_devices:
# - /dev/sdb
# - /dev/sdb
# - /dev/sdc
# - /dev/sdc
# IV. Fourth scenario: use directory instead of disk for OSDs
# Use 'true' to enable this scenario
osd_directory: false
osd_directories:
- /var/lib/ceph/osd/mydir1
- /var/lib/ceph/osd/mydir2
- /var/lib/ceph/osd/mydir3
- /var/lib/ceph/osd/mydir4
#osd_directories:
# - /var/lib/ceph/osd/mydir1
# - /var/lib/ceph/osd/mydir2
##########