2016-02-29 23:35:07 +08:00
---
# You can override vars by using host or group vars
###########
# GENERAL #
###########
mon_group_name : mons
# ACTIVATE BOTH FSID AND MONITOR_SECRET VARIABLES FOR NON-VAGRANT DEPLOYMENT
monitor_secret : "{{ monitor_keyring.stdout }}"
2017-07-05 17:07:00 +08:00
admin_secret : 'admin_secret'
2016-02-29 23:35:07 +08:00
# Secure your cluster
# This will set the following flags on all the pools:
# * nosizechange
# * nopgchange
# * nodelete
secure_cluster : false
secure_cluster_flags :
- nopgchange
- nodelete
- nosizechange
2019-02-28 00:40:36 +08:00
client_admin_ceph_authtool_cap :
mon : allow *
osd : allow *
mds : allow *
mgr : allow *
2017-06-12 16:36:29 +08:00
2017-10-12 20:55:53 +08:00
###############
# CRUSH RULES #
###############
2017-06-12 16:36:29 +08:00
crush_rule_config : false
crush_rule_hdd :
name : HDD
root : HDD
2018-02-07 02:26:54 +08:00
type : host
default : false
2017-06-12 16:36:29 +08:00
crush_rule_ssd :
name : SSD
root : SSD
type : host
default : false
crush_rules :
- "{{ crush_rule_hdd }}"
- "{{ crush_rule_ssd }}"
2017-10-12 20:55:53 +08:00
2018-02-21 22:20:24 +08:00
# Caution: this will create crush roots and racks according to hostvars {{ osd_crush_location }}
2017-11-16 22:26:27 +08:00
# and will move hosts into them which might lead to significant data movement in the cluster!
2018-02-21 22:20:24 +08:00
#
# In order for the playbook to create CRUSH hierarchy, you have to setup your Ansible inventory file like so:
#
# [osds]
# ceph-osd-01 osd_crush_location="{ 'root': 'mon-roottt', 'rack': 'mon-rackkkk', 'pod': 'monpod', 'host': 'ceph-osd-01' }"
#
# Note that 'host' is mandatory and that you need to submit at least two bucket type (including the host)
2017-11-16 22:26:27 +08:00
create_crush_tree : false
2017-10-12 20:55:53 +08:00
2016-02-29 23:35:07 +08:00
##########
# DOCKER #
##########
2017-07-07 21:48:53 +08:00
2017-09-06 16:53:30 +08:00
# Resource limitation
# For the whole list of limits you can apply see: docs.docker.com/engine/admin/resource_constraints
2019-06-03 21:27:40 +08:00
# Default values are based from: https://access.redhat.com/documentation/en-us/red_hat_ceph_storage/3/html/red_hat_ceph_storage_hardware_selection_guide/ceph-hardware-min-recommend
2017-09-06 16:53:30 +08:00
# These options can be passed using the 'ceph_mon_docker_extra_env' variable.
2018-10-29 18:46:46 +08:00
ceph_mon_docker_memory_limit : "{{ ansible_memtotal_mb }}m"
2017-09-06 16:53:30 +08:00
ceph_mon_docker_cpu_limit : 1
2017-07-07 21:48:53 +08:00
# Use this variable to add extra env configuration to run your mon container.
# If you want to set a custom admin keyring you can set this variable like following:
2017-08-31 18:04:40 +08:00
# ceph_mon_docker_extra_env: -e ADMIN_SECRET={{ admin_secret }}
ceph_mon_docker_extra_env :
2016-03-31 22:39:02 +08:00
mon_docker_privileged : false
mon_docker_net_host : true
2016-11-03 17:16:33 +08:00
ceph_config_keys : [ ] # DON'T TOUCH ME
2017-07-05 21:47:48 +08:00
###########
# SYSTEMD #
###########
# ceph_mon_systemd_overrides will override the systemd settings
# for the ceph-mon services.
# For example,to set "PrivateDevices=false" you can specify:
#ceph_mon_systemd_overrides:
# Service:
# PrivateDevices: False