1d49e6c136a7028bbc9b330b1127e4dd0cf4996b
[stor4nfv.git] / ci / ansible / group_vars / ceph / all.yml
1 ---
2 # Variables here are applicable to all host groups NOT roles
3
4 # This sample file generated by generate_group_vars_sample.sh
5
6 # Dummy variable to avoid error because ansible does not recognize the
7 # file as a good configuration file when no variable in it.
8 dummy:
9
10 # You can override vars by using host or group vars
11
12 ###########
13 # GENERAL #
14 ###########
15
16 ######################################
17 # Releases name to number dictionary #
18 ######################################
19 #ceph_release_num:
20 #  dumpling: 0.67
21 #  emperor: 0.72
22 #  firefly: 0.80
23 #  giant: 0.87
24 #  hammer: 0.94
25 #  infernalis: 9
26 #  jewel: 10
27 #  kraken: 11
28 #  luminous: 12
29 #  mimic: 13
30
31 # Directory to fetch cluster fsid, keys etc...
32 #fetch_directory: fetch/
33
34 # The 'cluster' variable determines the name of the cluster.
35 # Changing the default value to something else means that you will
36 # need to change all the command line calls as well, for example if
37 # your cluster name is 'foo':
38 # "ceph health" will become "ceph --cluster foo health"
39 #
40 # An easier way to handle this is to use the environment variable CEPH_ARGS
41 # So run: "export CEPH_ARGS="--cluster foo"
42 # With that you will be able to run "ceph health" normally
43 #cluster: ceph
44
45 # Inventory host group variables
46 #mon_group_name: mons
47 #osd_group_name: osds
48 #rgw_group_name: rgws
49 #mds_group_name: mdss
50 #nfs_group_name: nfss
51 #restapi_group_name: restapis
52 #rbdmirror_group_name: rbdmirrors
53 #client_group_name: clients
54 #iscsi_gw_group_name: iscsi-gws
55 #mgr_group_name: mgrs
56
57 # If check_firewall is true, then ansible will try to determine if the
58 # Ceph ports are blocked by a firewall. If the machine running ansible
59 # cannot reach the Ceph ports for some other reason, you may need or
60 # want to set this to False to skip those checks.
61 #check_firewall: False
62
63
64 ############
65 # PACKAGES #
66 ############
67 #debian_package_dependencies:
68 #  - python-pycurl
69 #  - hdparm
70
71 #centos_package_dependencies:
72 #  - python-pycurl
73 #  - hdparm
74 #  - epel-release
75 #  - python-setuptools
76 #  - libselinux-python
77
78 #redhat_package_dependencies:
79 #  - python-pycurl
80 #  - hdparm
81 #  - python-setuptools
82
83 # Whether or not to install the ceph-test package.
84 #ceph_test: false
85
86 # Enable the ntp service by default to avoid clock skew on
87 # ceph nodes
88 #ntp_service_enabled: true
89
90 # Set uid/gid to default '64045' for bootstrap directories.
91 # '64045' is used for debian based distros. It must be set to 167 in case of rhel based distros.
92 # These values have to be set according to the base OS used by the container image, NOT the host.
93 #bootstrap_dirs_owner: "64045"
94 #bootstrap_dirs_group: "64045"
95
96 # This variable determines if ceph packages can be updated.  If False, the
97 # package resources will use "state=present".  If True, they will use
98 # "state=latest".
99 #upgrade_ceph_packages: False
100
101 #ceph_use_distro_backports: false # DEBIAN ONLY
102
103
104 ###########
105 # INSTALL #
106 ###########
107 #ceph_rhcs_cdn_install: False # backward compatibility with stable-2.2, will disappear in stable 3.1
108 #ceph_repository_type: "{{ 'cdn' if ceph_rhcs_cdn_install else 'iso' if ceph_rhcs_iso_install else 'dummy' }}" # backward compatibility with stable-2.2, will disappear in stable 3.1
109 #ceph_rhcs_iso_install: False # backward compatibility with stable-2.2, will disappear in stable 3.1
110 #ceph_rhcs: False # backward compatibility with stable-2.2, will disappear in stable 3.1
111 #ceph_stable: False # backward compatibility with stable-2.2, will disappear in stable 3.1
112 #ceph_dev: False # backward compatibility with stable-2.2, will disappear in stable 3.1
113 #ceph_stable_uca: False # backward compatibility with stable-2.2, will disappear in stable 3.1
114 #ceph_custom: False # backward compatibility with stable-2.2, will disappear in stable 3.1
115
116 # ORIGIN SOURCE
117 #
118 # Choose between:
119 # - 'repository' means that you will get ceph installed through a new repository. Later below choose between 'community', 'rhcs' or 'dev'
120 # - 'distro' means that no separate repo file will be added
121 #  you will get whatever version of Ceph is included in your Linux distro.
122 # 'local' means that the ceph binaries will be copied over from the local machine
123 #ceph_origin: "{{ 'repository' if ceph_rhcs or ceph_stable or ceph_dev or ceph_stable_uca or ceph_custom else 'dummy' }}" # backward compatibility with stable-2.2, will disappear in stable 3.1
124 #valid_ceph_origins:
125 #  - repository
126 #  - distro
127 #  - local
128 ceph_origin: repository
129 ceph_repository: community
130
131 #ceph_repository: "{{ 'community' if ceph_stable else 'rhcs' if ceph_rhcs else 'dev' if ceph_dev else 'uca' if ceph_stable_uca else 'custom' if ceph_custom else 'dummy' }}" # backward compatibility with stable-2.2, will disappear in stable 3.1
132 #valid_ceph_repository:
133 #  - community
134 #  - rhcs
135 #  - dev
136 #  - uca
137 #  - custom
138
139
140 # REPOSITORY: COMMUNITY VERSION
141 #
142 # Enabled when ceph_repository == 'community'
143 #
144 #ceph_mirror: http://download.ceph.com
145 #ceph_stable_key: https://download.ceph.com/keys/release.asc
146 ceph_stable_release: luminous
147 #ceph_stable_repo: "{{ ceph_mirror }}/debian-{{ ceph_stable_release }}"
148
149 #nfs_ganesha_stable: true # use stable repos for nfs-ganesha
150 #nfs_ganesha_stable_branch: V2.5-stable
151 #nfs_ganesha_stable_deb_repo: "{{ ceph_mirror }}/nfs-ganesha/deb-{{ nfs_ganesha_stable_branch }}/{{ ceph_stable_release }}"
152
153
154 # Use the option below to specify your applicable package tree, eg. when using non-LTS Ubuntu versions
155 # # for a list of available Debian distributions, visit http://download.ceph.com/debian-{{ ceph_stable_release }}/dists/
156 # for more info read: https://github.com/ceph/ceph-ansible/issues/305
157 #ceph_stable_distro_source: "{{ ansible_lsb.codename }}"
158
159 # This option is needed for _both_ stable and dev version, so please always fill the right version
160 # # for supported distros, see http://download.ceph.com/rpm-{{ ceph_stable_release }}/
161 #ceph_stable_redhat_distro: el7
162
163
164 # REPOSITORY: RHCS VERSION RED HAT STORAGE (from 1.3)
165 #
166 # Enabled when ceph_repository == 'rhcs'
167 #
168 # This version is only supported on RHEL >= 7.1
169 # As of RHEL 7.1, libceph.ko and rbd.ko are now included in Red Hat's kernel
170 # packages natively. The RHEL 7.1 kernel packages are more stable and secure than
171 # using these 3rd-party kmods with RHEL 7.0. Please update your systems to RHEL
172 # 7.1 or later if you want to use the kernel RBD client.
173 #
174 # The CephFS kernel client is undergoing rapid development upstream, and we do
175 # not recommend running the CephFS kernel module on RHEL 7's 3.10 kernel at this
176 # time. Please use ELRepo's latest upstream 4.x kernels if you want to run CephFS
177 # on RHEL 7.
178 #
179 #
180 #ceph_rhcs_version: "{{ ceph_stable_rh_storage_version | default(2) }}"
181 #valid_ceph_repository_type:
182 #  - cdn
183 #  - iso
184 #ceph_rhcs_iso_path: "{{ ceph_stable_rh_storage_iso_path | default('') }}"
185 #ceph_rhcs_mount_path: "{{ ceph_stable_rh_storage_mount_path | default('/tmp/rh-storage-mount') }}"
186 #ceph_rhcs_repository_path: "{{ ceph_stable_rh_storage_repository_path | default('/tmp/rh-storage-repo') }}" # where to copy iso's content
187
188 # RHCS installation in Debian systems
189 #ceph_rhcs_cdn_debian_repo: https://customername:customerpasswd@rhcs.download.redhat.com
190 #ceph_rhcs_cdn_debian_repo_version: "/3-release/" # for GA, later for updates use /3-updates/
191
192
193 # REPOSITORY: UBUNTU CLOUD ARCHIVE
194 #
195 # Enabled when ceph_repository == 'uca'
196 #
197 # This allows the install of Ceph from the Ubuntu Cloud Archive.  The Ubuntu Cloud Archive
198 # usually has newer Ceph releases than the normal distro repository.
199 #
200 #
201 #ceph_stable_repo_uca: "http://ubuntu-cloud.archive.canonical.com/ubuntu"
202 #ceph_stable_openstack_release_uca: liberty
203 #ceph_stable_release_uca: "{{ansible_lsb.codename}}-updates/{{ceph_stable_openstack_release_uca}}"
204
205
206 # REPOSITORY: DEV
207 #
208 # Enabled when ceph_repository == 'dev'
209 #
210 #ceph_dev_branch: master # development branch you would like to use e.g: master, wip-hack
211 #ceph_dev_sha1: latest # distinct sha1 to use, defaults to 'latest' (as in latest built)
212
213 #nfs_ganesha_dev: false # use development repos for nfs-ganesha
214
215 # Set this to choose the version of ceph dev libraries used in the nfs-ganesha packages from shaman
216 # flavors so far include: ceph_master, ceph_jewel, ceph_kraken, ceph_luminous
217 #nfs_ganesha_flavor: "ceph_master"
218
219 #ceph_iscsi_config_dev: true # special repo for deploying iSCSI gateways
220
221
222 # REPOSITORY: CUSTOM
223 #
224 # Enabled when ceph_repository == 'custom'
225 #
226 # Use a custom repository to install ceph.  For RPM, ceph_custom_repo should be
227 # a URL to the .repo file to be installed on the targets.  For deb,
228 # ceph_custom_repo should be the URL to the repo base.
229 #
230 #ceph_custom_repo: https://server.domain.com/ceph-custom-repo
231
232
233 # ORIGIN: LOCAL CEPH INSTALLATION
234 #
235 # Enabled when ceph_repository == 'local'
236 #
237 # Path to DESTDIR of the ceph install
238 #ceph_installation_dir: "/path/to/ceph_installation/"
239 # Whether or not to use installer script rundep_installer.sh
240 # This script takes in rundep and installs the packages line by line onto the machine
241 # If this is set to false then it is assumed that the machine ceph is being copied onto will already have
242 # all runtime dependencies installed
243 #use_installer: false
244 # Root directory for ceph-ansible
245 #ansible_dir: "/path/to/ceph-ansible"
246
247
248 ######################
249 # CEPH CONFIGURATION #
250 ######################
251
252 ## Ceph options
253 #
254 # Each cluster requires a unique, consistent filesystem ID. By
255 # default, the playbook generates one for you and stores it in a file
256 # in `fetch_directory`. If you want to customize how the fsid is
257 # generated, you may find it useful to disable fsid generation to
258 # avoid cluttering up your ansible repo. If you set `generate_fsid` to
259 # false, you *must* generate `fsid` in another way.
260 # ACTIVATE THE FSID VARIABLE FOR NON-VAGRANT DEPLOYMENT
261 #fsid: "{{ cluster_uuid.stdout }}"
262 #generate_fsid: true
263
264 #ceph_conf_key_directory: /etc/ceph
265
266 #cephx: true
267
268 ## Client options
269 #
270 #rbd_cache: "true"
271 #rbd_cache_writethrough_until_flush: "true"
272 #rbd_concurrent_management_ops: 20
273
274 #rbd_client_directories: true # this will create rbd_client_log_path and rbd_client_admin_socket_path directories with proper permissions
275
276 # Permissions for the rbd_client_log_path and
277 # rbd_client_admin_socket_path. Depending on your use case for Ceph
278 # you may want to change these values. The default, which is used if
279 # any of the variables are unset or set to a false value (like `null`
280 # or `false`) is to automatically determine what is appropriate for
281 # the Ceph version with non-OpenStack workloads -- ceph:ceph and 0770
282 # for infernalis releases, and root:root and 1777 for pre-infernalis
283 # releases.
284 #
285 # For other use cases, including running Ceph with OpenStack, you'll
286 # want to set these differently:
287 #
288 # For OpenStack on RHEL, you'll want:
289 #   rbd_client_directory_owner: "qemu"
290 #   rbd_client_directory_group: "libvirtd" (or "libvirt", depending on your version of libvirt)
291 #   rbd_client_directory_mode: "0755"
292 #
293 # For OpenStack on Ubuntu or Debian, set:
294 #    rbd_client_directory_owner: "libvirt-qemu"
295 #    rbd_client_directory_group: "kvm"
296 #    rbd_client_directory_mode: "0755"
297 #
298 # If you set rbd_client_directory_mode, you must use a string (e.g.,
299 # 'rbd_client_directory_mode: "0755"', *not*
300 # 'rbd_client_directory_mode: 0755', or Ansible will complain: mode
301 # must be in octal or symbolic form
302 #rbd_client_directory_owner: null
303 #rbd_client_directory_group: null
304 #rbd_client_directory_mode: null
305
306 #rbd_client_log_path: /var/log/ceph
307 #rbd_client_log_file: "{{ rbd_client_log_path }}/qemu-guest-$pid.log" # must be writable by QEMU and allowed by SELinux or AppArmor
308 #rbd_client_admin_socket_path: /var/run/ceph # must be writable by QEMU and allowed by SELinux or AppArmor
309
310 ## Monitor options
311 #
312 # You must define either monitor_interface, monitor_address or monitor_address_block.
313 # These variables must be defined at least in all.yml and overrided if needed (inventory host file or group_vars/*.yml).
314 # Eg. If you want to specify for each monitor which address the monitor will bind to you can set it in your **inventory host file** by using 'monitor_address' variable.
315 # Preference will go to monitor_address if both monitor_address and monitor_interface are defined.
316 # To use an IPv6 address, use the monitor_address setting instead (and set ip_version to ipv6)
317 monitor_interface: ens3
318 #monitor_address: 0.0.0.0
319 #monitor_address_block: subnet
320 # set to either ipv4 or ipv6, whichever your network is using
321 #ip_version: ipv4
322 #mon_use_fqdn: false # if set to true, the MON name used will be the fqdn in the ceph.conf
323
324 ## OSD options
325 #
326 journal_size: 100 # OSD journal size in MB
327 public_network: 100.64.128.40/24
328 cluster_network: "{{ public_network }}"
329 #osd_mkfs_type: xfs
330 #osd_mkfs_options_xfs: -f -i size=2048
331 #osd_mount_options_xfs: noatime,largeio,inode64,swalloc
332 #osd_objectstore: filestore
333
334 # xattrs. by default, 'filestore xattr use omap' is set to 'true' if
335 # 'osd_mkfs_type' is set to 'ext4'; otherwise it isn't set. This can
336 # be set to 'true' or 'false' to explicitly override those
337 # defaults. Leave it 'null' to use the default for your chosen mkfs
338 # type.
339 #filestore_xattr_use_omap: null
340
341 ## MDS options
342 #
343 #mds_use_fqdn: false # if set to true, the MDS name used will be the fqdn in the ceph.conf
344 #mds_allow_multimds: false
345 #mds_max_mds: 3
346
347 ## Rados Gateway options
348 #
349 #radosgw_dns_name: your.subdomain.tld # subdomains used by radosgw. See http://ceph.com/docs/master/radosgw/config/#enabling-subdomain-s3-calls
350 #radosgw_resolve_cname: false # enable for radosgw to resolve DNS CNAME based bucket names
351 #radosgw_civetweb_port: 8080
352 #radosgw_civetweb_num_threads: 100
353 # For additional civetweb configuration options available such as SSL, logging,
354 # keepalive, and timeout settings, please see the civetweb docs at
355 # https://github.com/civetweb/civetweb/blob/master/docs/UserManual.md
356 #radosgw_civetweb_options: "num_threads={{ radosgw_civetweb_num_threads }}"
357 # You must define either radosgw_interface, radosgw_address.
358 # These variables must be defined at least in all.yml and overrided if needed (inventory host file or group_vars/*.yml).
359 # Eg. If you want to specify for each radosgw node which address the radosgw will bind to you can set it in your **inventory host file** by using 'radosgw_address' variable.
360 # Preference will go to radosgw_address if both radosgw_address and radosgw_interface are defined.
361 # To use an IPv6 address, use the radosgw_address setting instead (and set ip_version to ipv6)
362 #radosgw_interface: interface
363 #radosgw_address: "{{ '0.0.0.0' if rgw_containerized_deployment else 'address' }}" # backward compatibility with stable-2.2, will disappear in stable 3.1
364 #radosgw_address_block: subnet
365 #radosgw_keystone: false # activate OpenStack Keystone options full detail here: http://ceph.com/docs/master/radosgw/keystone/
366 # Rados Gateway options
367 #email_address: foo@bar.com
368
369 ## REST API options
370 #
371 #restapi_interface: "{{ monitor_interface }}"
372 #restapi_address: "{{ monitor_address }}"
373 #restapi_port: 5000
374
375 ## Testing mode
376 # enable this mode _only_ when you have a single node
377 # if you don't want it keep the option commented
378 #common_single_host_mode: true
379
380 ## Handlers - restarting daemons after a config change
381 # if for whatever reasons the content of your ceph configuration changes
382 # ceph daemons will be restarted as well. At the moment, we can not detect
383 # which config option changed so all the daemons will be restarted. Although
384 # this restart will be serialized for each node, in between a health check
385 # will be performed so we make sure we don't move to the next node until
386 # ceph is not healthy
387 # Obviously between the checks (for monitors to be in quorum and for osd's pgs
388 # to be clean) we have to wait. These retries and delays can be configurable
389 # for both monitors and osds.
390 #
391 # Monitor handler checks
392 #handler_health_mon_check_retries: 5
393 #handler_health_mon_check_delay: 10
394 #
395 # OSD handler checks
396 #handler_health_osd_check_retries: 40
397 #handler_health_osd_check_delay: 30
398 #handler_health_osd_check: true
399 #
400 # MDS handler checks
401 #handler_health_mds_check_retries: 5
402 #handler_health_mds_check_delay: 10
403 #
404 # RGW handler checks
405 #handler_health_rgw_check_retries: 5
406 #handler_health_rgw_check_delay: 10
407
408 # NFS handler checks
409 #handler_health_nfs_check_retries: 5
410 #handler_health_nfs_check_delay: 10
411
412 # RBD MIRROR handler checks
413 #handler_health_rbd_mirror_check_retries: 5
414 #handler_health_rbd_mirror_check_delay: 10
415
416 # MGR handler checks
417 #handler_health_mgr_check_retries: 5
418 #handler_health_mgr_check_delay: 10
419
420 ###############
421 # NFS-GANESHA #
422 ###############
423
424 # Confiure the type of NFS gatway access.  At least one must be enabled for an
425 # NFS role to be useful
426 #
427 # Set this to true to enable File access via NFS.  Requires an MDS role.
428 #nfs_file_gw: false
429 # Set this to true to enable Object access via NFS. Requires an RGW role.
430 #nfs_obj_gw: true
431
432 ###################
433 # CONFIG OVERRIDE #
434 ###################
435
436 # Ceph configuration file override.
437 # This allows you to specify more configuration options
438 # using an INI style format.
439 # The following sections are supported: [global], [mon], [osd], [mds], [rgw]
440 #
441 # Example:
442 # ceph_conf_overrides:
443 #   global:
444 #     foo: 1234
445 #     bar: 5678
446 #
447 #ceph_conf_overrides: {}
448
449
450 #############
451 # OS TUNING #
452 #############
453
454 #disable_transparent_hugepage: true
455 #os_tuning_params:
456 #  - { name: kernel.pid_max, value: 4194303 }
457 #  - { name: fs.file-max, value: 26234859 }
458 #  - { name: vm.zone_reclaim_mode, value: 0 }
459 #  - { name: vm.swappiness, value: 10 }
460 #  - { name: vm.min_free_kbytes, value: "{{ vm_min_free_kbytes }}" }
461
462 # For Debian & Red Hat/CentOS installs set TCMALLOC_MAX_TOTAL_THREAD_CACHE_BYTES
463 # Set this to a byte value (e.g. 134217728)
464 # A value of 0 will leave the package default.
465 #ceph_tcmalloc_max_total_thread_cache: 0
466
467
468 ##########
469 # DOCKER #
470 ##########
471 #docker_exec_cmd:
472 #docker: false
473 #ceph_docker_image: "ceph/daemon"
474 #ceph_docker_image_tag: latest
475 #ceph_docker_registry: docker.io
476 #ceph_docker_enable_centos_extra_repo: false
477 #ceph_docker_on_openstack: false
478 #ceph_mon_docker_interface: "{{ monitor_interface }}" # backward compatibility with stable-2.2, will disappear in stable 3.1
479 #ceph_mon_docker_subnet: "{{ public_network }}" # backward compatibility with stable-2.2, will disappear in stable 3.1
480 #mon_containerized_deployment: False # backward compatibility with stable-2.2, will disappear in stable 3.1
481 #osd_containerized_deployment: False # backward compatibility with stable-2.2, will disappear in stable 3.1
482 #mds_containerized_deployment: False # backward compatibility with stable-2.2, will disappear in stable 3.1
483 #rgw_containerized_deployment: False # backward compatibility with stable-2.2, will disappear in stable 3.1
484 #containerized_deployment: "{{ True if mon_containerized_deployment or osd_containerized_deployment or mds_containerized_deployment or rgw_containerized_deployment else False }}" # backward compatibility with stable-2.2, will disappear in stable 3.1
485
486
487 ############
488 # KV store #
489 ############
490 #containerized_deployment_with_kv: false
491 #mon_containerized_default_ceph_conf_with_kv: false
492 #kv_type: etcd
493 #kv_endpoint: 127.0.0.1
494 #kv_port: 2379
495
496
497 # this is only here for usage with the rolling_update.yml playbook
498 # do not ever change this here
499 #rolling_update: false
500
501