From 72b17d248046c74c1ddd1f47be0eb6a552ba6f10 Mon Sep 17 00:00:00 2001 From: =?utf8?q?S=C3=A9bastien=20Han?= Date: Sat, 18 Feb 2017 14:48:18 +0100 Subject: [PATCH] docker: osd, clarify variable usage for scenarii MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Sébastien Han --- group_vars/osds.yml.sample | 32 +++++++++++++++++++++++--------- roles/ceph-osd/defaults/main.yml | 32 +++++++++++++++++++++++--------- 2 files changed, 46 insertions(+), 18 deletions(-) diff --git a/group_vars/osds.yml.sample b/group_vars/osds.yml.sample index 1d154f4a1..2fbae8006 100644 --- a/group_vars/osds.yml.sample +++ b/group_vars/osds.yml.sample @@ -181,17 +181,31 @@ dummy: #kv_type: etcd #kv_endpoint: 127.0.0.1 #kv_port: 4001 +#ceph_docker_image: "ceph/daemon" +#ceph_docker_image_tag: latest +#ceph_config_keys: [] # DON'T TOUCH ME +#ceph_docker_on_openstack: false -# Add -e OSD_JOURNAL={{ raw_journal_devices }} to configure a journal device to ceph_osd_docker_prepare_env variable -# make sure you only pass a single device, otherwise this will fail horribly. +# PREPARE DEVICE +# Make sure you only pass a single device to raw_journal_devices, otherwise this will fail horribly. +# This is why we use [0] in the example. # -# Add -e OSD_DMCRYPT=1 to use the collocated dmcrypt scenario to the ceph_osd_docker_prepare_env and ceph_osd_docker_extra_env variables +# WARNING /!\ DMCRYPT scenario ONLY works with Docker version 1.12.5 and above +# +# Examples: +# Journal collocated: ceph_osd_docker_prepare_env: -e CLUSTER={{ cluster }} -e OSD_JOURNAL_SIZE={{ journal_size }} -e OSD_FORCE_ZAP=1 +# Dedicated journal: ceph_osd_docker_prepare_env: -e CLUSTER={{ cluster }} -e OSD_JOURNAL_SIZE={{ journal_size }} -e OSD_FORCE_ZAP=1 -e OSD_JOURNAL={{ raw_journal_devices[0] }} +# Encrypted OSD: ceph_osd_docker_prepare_env: -e CLUSTER={{ cluster }} -e OSD_JOURNAL_SIZE={{ journal_size }} -e OSD_FORCE_ZAP=1 -e OSD_DMCRYPT=1 +# Encrypted OSD with dedicated journal: ceph_osd_docker_prepare_env: -e CLUSTER={{ cluster }} -e OSD_JOURNAL_SIZE={{ journal_size }} -e OSD_FORCE_ZAP=1 -e OSD_DMCRYPT=1 -e OSD_JOURNAL={{ raw_journal_devices[0] }} +# +#ceph_osd_docker_devices: "{{ devices }}" #ceph_osd_docker_prepare_env: -e CLUSTER={{ cluster }} -e OSD_JOURNAL_SIZE={{ journal_size }} -e OSD_FORCE_ZAP=1 -#ceph_docker_image: "ceph/daemon" -#ceph_docker_image_tag: latest + +# ACTIVATE DEVICE +# Examples: +# Journal collocated or Dedicated journal: ceph_osd_docker_extra_env: -e CLUSTER={{ cluster }} -e CEPH_DAEMON=OSD_CEPH_DISK_ACTIVATE -e OSD_JOURNAL_SIZE={{ journal_size }} +# Encrypted OSD or Encrypted OSD with dedicated journal: ceph_osd_docker_extra_env: -e CLUSTER={{ cluster }} -e CEPH_DAEMON=OSD_CEPH_DISK_ACTIVATE -e OSD_JOURNAL_SIZE={{ journal_size }} -e OSD_DMCRYPT=1 +# #ceph_osd_docker_extra_env: -e CLUSTER={{ cluster }} -e CEPH_DAEMON=OSD_CEPH_DISK_ACTIVATE -e OSD_JOURNAL_SIZE={{ journal_size }} -#ceph_osd_docker_devices: "{{ devices }}" -#ceph_docker_on_openstack: false -#ceph_config_keys: [] # DON'T TOUCH ME -#ceph_osd_docker_run_script_path: "/usr/share" +#ceph_osd_docker_run_script_path: "/usr/share" # script called by systemd to run the docker command diff --git a/roles/ceph-osd/defaults/main.yml b/roles/ceph-osd/defaults/main.yml index c2713274a..d32625113 100644 --- a/roles/ceph-osd/defaults/main.yml +++ b/roles/ceph-osd/defaults/main.yml @@ -173,16 +173,30 @@ osd_containerized_deployment_with_kv: false kv_type: etcd kv_endpoint: 127.0.0.1 kv_port: 4001 +ceph_docker_image: "ceph/daemon" +ceph_docker_image_tag: latest +ceph_config_keys: [] # DON'T TOUCH ME +ceph_docker_on_openstack: false -# Add -e OSD_JOURNAL={{ raw_journal_devices }} to configure a journal device to ceph_osd_docker_prepare_env variable -# make sure you only pass a single device, otherwise this will fail horribly. +# PREPARE DEVICE +# Make sure you only pass a single device to raw_journal_devices, otherwise this will fail horribly. +# This is why we use [0] in the example. # -# Add -e OSD_DMCRYPT=1 to use the collocated dmcrypt scenario to the ceph_osd_docker_prepare_env and ceph_osd_docker_extra_env variables +# WARNING /!\ DMCRYPT scenario ONLY works with Docker version 1.12.5 and above +# +# Examples: +# Journal collocated: ceph_osd_docker_prepare_env: -e CLUSTER={{ cluster }} -e OSD_JOURNAL_SIZE={{ journal_size }} -e OSD_FORCE_ZAP=1 +# Dedicated journal: ceph_osd_docker_prepare_env: -e CLUSTER={{ cluster }} -e OSD_JOURNAL_SIZE={{ journal_size }} -e OSD_FORCE_ZAP=1 -e OSD_JOURNAL={{ raw_journal_devices[0] }} +# Encrypted OSD: ceph_osd_docker_prepare_env: -e CLUSTER={{ cluster }} -e OSD_JOURNAL_SIZE={{ journal_size }} -e OSD_FORCE_ZAP=1 -e OSD_DMCRYPT=1 +# Encrypted OSD with dedicated journal: ceph_osd_docker_prepare_env: -e CLUSTER={{ cluster }} -e OSD_JOURNAL_SIZE={{ journal_size }} -e OSD_FORCE_ZAP=1 -e OSD_DMCRYPT=1 -e OSD_JOURNAL={{ raw_journal_devices[0] }} +# +ceph_osd_docker_devices: "{{ devices }}" ceph_osd_docker_prepare_env: -e CLUSTER={{ cluster }} -e OSD_JOURNAL_SIZE={{ journal_size }} -e OSD_FORCE_ZAP=1 -ceph_docker_image: "ceph/daemon" -ceph_docker_image_tag: latest + +# ACTIVATE DEVICE +# Examples: +# Journal collocated or Dedicated journal: ceph_osd_docker_extra_env: -e CLUSTER={{ cluster }} -e CEPH_DAEMON=OSD_CEPH_DISK_ACTIVATE -e OSD_JOURNAL_SIZE={{ journal_size }} +# Encrypted OSD or Encrypted OSD with dedicated journal: ceph_osd_docker_extra_env: -e CLUSTER={{ cluster }} -e CEPH_DAEMON=OSD_CEPH_DISK_ACTIVATE -e OSD_JOURNAL_SIZE={{ journal_size }} -e OSD_DMCRYPT=1 +# ceph_osd_docker_extra_env: -e CLUSTER={{ cluster }} -e CEPH_DAEMON=OSD_CEPH_DISK_ACTIVATE -e OSD_JOURNAL_SIZE={{ journal_size }} -ceph_osd_docker_devices: "{{ devices }}" -ceph_docker_on_openstack: false -ceph_config_keys: [] # DON'T TOUCH ME -ceph_osd_docker_run_script_path: "/usr/share" +ceph_osd_docker_run_script_path: "/usr/share" # script called by systemd to run the docker command -- 2.39.5