--- # Variables here are applicable to all host groups NOT roles # This sample file generated by generate_group_vars_sample.sh # Dummy variable to avoid error because ansible does not recognize the # file as a good configuration file when no variable in it. dummy: # You can override vars by using host or group vars ########### # GENERAL # ########### #fetch_directory: fetch/ #cluster: ceph # cluster name ########### # INSTALL # ########### #mon_group_name: mons #osd_group_name: osds #rgw_group_name: rgws #mds_group_name: mdss #restapi_group_name: restapis #rbdmirror_group_name: rbdmirrors # If check_firewall is true, then ansible will try to determine if the # Ceph ports are blocked by a firewall. If the machine running ansible # cannot reach the Ceph ports for some other reason, you may need or # want to set this to False to skip those checks. #check_firewall: True # This variable determines if ceph packages can be updated. If False, the # package resources will use "state=present". If True, they will use # "state=latest". #upgrade_ceph_packages: False # If this is false then the 'ceph' package will be installed on rpm systems, which # is not needed for versions after infernalis. #use_server_package_split: true # /!\ EITHER ACTIVE ceph_stable OR ceph_stable_ice OR ceph_stable_uca OR ceph_dev /!\ #debian_package_dependencies: # - python-pycurl # - hdparm # - ntp #centos_package_dependencies: # - python-pycurl # - hdparm # - yum-plugin-priorities.noarch # - epel-release # - ntp # - python-setuptools # - libselinux-python #redhat_package_dependencies: # - python-pycurl # - hdparm # - ntp # - python-setuptools # Whether or not to install the ceph-test package. #ceph_test: False ## Configure package origin # #ceph_origin: 'upstream' # or 'distro' # 'distro' means that no separate repo file will be added # you will get whatever version of Ceph is included in your Linux distro. # #ceph_use_distro_backports: false # DEBIAN ONLY # STABLE ######## # COMMUNITY VERSION #ceph_stable: false # use ceph stable branch #ceph_stable_key: https://download.ceph.com/keys/release.asc #ceph_stable_release: infernalis # ceph stable release #ceph_stable_repo: "http://ceph.com/debian-{{ ceph_stable_release }}" ################### # Stable Releases # ################### #ceph_stable_releases: # - dumpling # - emperor # - firefly # - giant # - hammer # - infernalis # Use the option below to specify your applicable package tree, eg. when using non-LTS Ubuntu versions # # for a list of available Debian distributions, visit http://ceph.com/debian-{{ ceph_stable_release }}/dists/ # for more info read: https://github.com/ceph/ceph-ansible/issues/305 #ceph_stable_distro_source: # This option is needed for _both_ stable and dev version, so please always fill the right version # # for supported distros, see http://ceph.com/rpm-{{ ceph_stable_release }}/ #ceph_stable_redhat_distro: el7 # ENTERPRISE VERSION ICE (old, prior to the 1.3) #ceph_stable_ice: false # use Inktank Ceph Enterprise #ceph_stable_ice_url: https://download.inktank.com/enterprise # these two variables are used in `with_items` and starting # with ansible 2.0 these need to be defined even if the tasks's # `when` clause doesn't evaluate to true #ceph_stable_ice_temp_path: /opt/ICE/ceph-repo/ #ceph_stable_ice_kmod: 3.10-0.1.20140702gitdc9ac62.el7.x86_64 #ceph_stable_ice_distro: rhel7 # Please check the download website for the supported versions. #ceph_stable_ice_version: 1.2.2 #ceph_stable_ice_kmod_version: 1.2 #ceph_stable_ice_user: # htaccess user #ceph_stable_ice_password: # htaccess password # ENTERPRISE VERSION RED HAT STORAGE (from 1.3) # This version is only supported on RHEL 7.1 # As of RHEL 7.1, libceph.ko and rbd.ko are now included in Red Hat's kernel # packages natively. The RHEL 7.1 kernel packages are more stable and secure than # using these 3rd-party kmods with RHEL 7.0. Please update your systems to RHEL # 7.1 or later if you want to use the kernel RBD client. # # The CephFS kernel client is undergoing rapid development upstream, and we do # not recommend running the CephFS kernel module on RHEL 7's 3.10 kernel at this # time. Please use ELRepo's latest upstream 4.x kernels if you want to run CephFS # on RHEL 7. # #ceph_stable_rh_storage: false #ceph_stable_rh_storage_cdn_install: false # assumes all the nodes can connect to cdn.redhat.com #ceph_stable_rh_storage_iso_install: false # usually used when nodes don't have access to cdn.redhat.com #ceph_stable_rh_storage_iso_path: #ceph_stable_rh_storage_mount_path: /tmp/rh-storage-mount #ceph_stable_rh_storage_repository_path: /tmp/rh-storage-repo # where to copy iso's content # UBUNTU CLOUD ARCHIVE # This allows the install of Ceph from the Ubuntu Cloud Archive. The Ubuntu Cloud Archive # usually has newer Ceph releases than the normal distro repository. # #ceph_stable_uca: false #ceph_stable_repo_uca: "http://ubuntu-cloud.archive.canonical.com/ubuntu" #ceph_stable_openstack_release_uca: liberty #ceph_stable_release_uca: "{{ansible_lsb.codename}}-updates/{{ceph_stable_openstack_release_uca}}" # DEV # ### #ceph_dev: false # use ceph development branch #ceph_dev_key: https://download.ceph.com/keys/autobuild.asc #ceph_dev_branch: master # development branch you would like to use e.g: master, wip-hack # supported distros are centos6, centos7, fc17, fc18, fc19, fc20, fedora17, fedora18, # fedora19, fedora20, opensuse12, sles0. (see http://gitbuilder.ceph.com/). # For rhel, please pay attention to the versions: 'rhel6 3' or 'rhel 4', the fullname is _very_ important. #ceph_dev_redhat_distro: centos7 ###################### # CEPH CONFIGURATION # ###################### ## Ceph options # # Each cluster requires a unique, consistent filesystem ID. By # default, the playbook generates one for you and stores it in a file # in `fetch_directory`. If you want to customize how the fsid is # generated, you may find it useful to disable fsid generation to # avoid cluttering up your ansible repo. If you set `generate_fsid` to # false, you *must* generate `fsid` in another way. #fsid: "{{ cluster_uuid.stdout }}" #generate_fsid: true #cephx: true #cephx_require_signatures: true # Kernel RBD does NOT support signatures for Kernels < 3.18! #cephx_cluster_require_signatures: true #cephx_service_require_signatures: false #max_open_files: 131072 #disable_in_memory_logs: true # set this to false while enabling the options below # Debug logs #enable_debug_global: false #debug_global_level: 20 #enable_debug_mon: false #debug_mon_level: 20 #enable_debug_osd: false #debug_osd_level: 20 #enable_debug_mds: false #debug_mds_level: 20 ## Client options # #rbd_cache: "true" #rbd_cache_writethrough_until_flush: "true" #rbd_concurrent_management_ops: 20 #rbd_client_directories: true # this will create rbd_client_log_path and rbd_client_admin_socket_path directories with proper permissions # Permissions for the rbd_client_log_path and # rbd_client_admin_socket_path. Depending on your use case for Ceph # you may want to change these values. The default, which is used if # any of the variables are unset or set to a false value (like `null` # or `false`) is to automatically determine what is appropriate for # the Ceph version with non-OpenStack workloads -- ceph:ceph and 0770 # for infernalis releases, and root:root and 1777 for pre-infernalis # releases. # # For other use cases, including running Ceph with OpenStack, you'll # want to set these differently: # # For OpenStack on RHEL, you'll want: # rbd_client_directory_owner: "qemu" # rbd_client_directory_group: "libvirtd" (or "libvirt", depending on your version of libvirt) # rbd_client_directory_mode: "0755" # # For OpenStack on Ubuntu or Debian, set: # rbd_client_directory_owner: "libvirt-qemu" # rbd_client_directory_group: "kvm" # rbd_client_directory_mode: "0755" # # If you set rbd_client_directory_mode, you must use a string (e.g., # 'rbd_client_directory_mode: "0755"', *not* # 'rbd_client_directory_mode: 0755', or Ansible will complain: mode # must be in octal or symbolic form #rbd_client_directory_owner: null #rbd_client_directory_group: null #rbd_client_directory_mode: null #rbd_client_log_path: /var/log/ceph #rbd_client_log_file: "{{ rbd_client_log_path }}/qemu-guest-$pid.log" # must be writable by QEMU and allowed by SELinux or AppArmor #rbd_client_admin_socket_path: /var/run/ceph # must be writable by QEMU and allowed by SELinux or AppArmor #rbd_default_features: 3 #rbd_default_map_options: rw #rbd_default_format: 2 ## Monitor options # # You must define either monitor_interface or monitor_address. Preference # will go to monitor_interface if both are defined. #monitor_interface: interface #monitor_address: 0.0.0.0 #mon_use_fqdn: false # if set to true, the MON name used will be the fqdn in the ceph.conf #mon_osd_down_out_interval: 600 #mon_osd_min_down_reporters: 7 # number of OSDs per host + 1 #mon_clock_drift_allowed: .15 #mon_clock_drift_warn_backoff: 30 #mon_osd_full_ratio: .95 #mon_osd_nearfull_ratio: .85 #mon_osd_report_timeout: 300 #mon_pg_warn_max_per_osd: 0 # disable complains about low pgs numbers per osd #mon_osd_allow_primary_affinity: "true" #mon_pg_warn_max_object_skew: 10 # set to 20 or higher to disable complaints about number of PGs being too low if some pools have very few objects bringing down the average number of objects per pool. This happens when running RadosGW. Ceph default is 10 ## OSD options # #journal_size: 0 #pool_default_pg_num: 128 #pool_default_pgp_num: 128 #pool_default_size: 3 #pool_default_min_size: 0 # 0 means no specific default; ceph will use (pool_default_size)-(pool_default_size/2) so 2 if pool_default_size=3 #public_network: 0.0.0.0/0 #cluster_network: "{{ public_network }}" #osd_mkfs_type: xfs #osd_mkfs_options_xfs: -f -i size=2048 #osd_mount_options_xfs: noatime,largeio,inode64,swalloc #osd_mon_heartbeat_interval: 30 # CRUSH #pool_default_crush_rule: 0 #osd_crush_update_on_start: "true" # Object backend #osd_objectstore: filestore # xattrs. by default, 'filestore xattr use omap' is set to 'true' if # 'osd_mkfs_type' is set to 'ext4'; otherwise it isn't set. This can # be set to 'true' or 'false' to explicitly override those # defaults. Leave it 'null' to use the default for your chosen mkfs # type. #filestore_xattr_use_omap: null # Performance tuning #filestore_merge_threshold: 40 #filestore_split_multiple: 8 #osd_op_threads: 8 #filestore_op_threads: 8 #filestore_max_sync_interval: 5 #osd_max_scrubs: 1 # The OSD scrub window can be configured starting hammer only! # Default settings will define a 24h window for the scrubbing operation # The window is predefined from 0am midnight to midnight the next day. #osd_scrub_begin_hour: 0 #osd_scrub_end_hour: 24 # Recovery tuning #osd_recovery_max_active: 5 #osd_max_backfills: 2 #osd_recovery_op_priority: 2 #osd_recovery_max_chunk: 1048576 #osd_recovery_threads: 1 # Deep scrub #osd_scrub_sleep: .1 #osd_disk_thread_ioprio_class: idle #osd_disk_thread_ioprio_priority: 0 #osd_scrub_chunk_max: 5 #osd_deep_scrub_stride: 1048576 ## MDS options # #mds_use_fqdn: false # if set to true, the MDS name used will be the fqdn in the ceph.conf ## Rados Gateway options # #radosgw_dns_name: your.subdomain.tld # subdomains used by radosgw. See http://ceph.com/docs/master/radosgw/config/#enabling-subdomain-s3-calls #radosgw_frontend: civetweb # supported options are 'apache' or 'civetweb', also edit roles/ceph-rgw/defaults/main.yml #radosgw_civetweb_port: 8080 # on Infernalis we get: "set_ports_option: cannot bind to 80: 13 (Permission denied)" #radosgw_civetweb_bind_ip: "{{ ansible_default_ipv4 }}" #radosgw_keystone: false # activate OpenStack Keystone options full detail here: http://ceph.com/docs/master/radosgw/keystone/ #radosgw_keystone_url: # url:admin_port ie: http://192.168.0.1:35357 #radosgw_keystone_admin_token: password #radosgw_keystone_accepted_roles: Member, _member_, admin #radosgw_keystone_token_cache_size: 10000 #radosgw_keystone_revocation_internal: 900 #radosgw_s3_auth_use_keystone: "true" #radosgw_nss_db_path: /var/lib/ceph/radosgw/ceph-radosgw.{{ ansible_hostname }}/nss # Toggle 100-continue support for Apache and FastCGI # WARNING: Changing this value will cause an outage of Apache while it is reinstalled on RGW nodes #http_100_continue: false # Rados Gateway options #redhat_distro_ceph_extra: centos6.4 # supported distros are centos6.3, centos6.4, centos6, fedora18, fedora19, opensuse12.2, rhel6.3, rhel6.4, rhel6.5, rhel6, sles11sp2 #email_address: foo@bar.com ## REST API options # #restapi_interface: "{{ monitor_interface }}" #restapi_address: "{{ monitor_address }}" #restapi_port: 5000 #restapi_base_url: /api/v0.1 #restapi_log_level: warning # available level are: critical, error, warning, info, debug ## Testing mode # enable this mode _only_ when you have a single node # if you don't want it keep the option commented #common_single_host_mode: true ################### # CONFIG OVERRIDE # ################### # Ceph configuration file override. # This allows you to specify more configuration options # using an INI style format. # The following sections are supported: [global], [mon], [osd], [mds], [rgw] # # Example: # ceph_conf_overrides: # global: # foo: 1234 # bar: 5678 # #ceph_conf_overrides: {} ############# # OS TUNING # ############# #disable_transparent_hugepage: true #disable_swap: true #os_tuning_params: # - { name: kernel.pid_max, value: 4194303 } # - { name: fs.file-max, value: 26234859 } # - { name: vm.zone_reclaim_mode, value: 0 } # - { name: vm.vfs_cache_pressure, value: 50 } # - { name: vm.min_free_kbytes, value: "{{ vm_min_free_kbytes }}" } ########## # DOCKER # ########## #docker: false # Do not comment the variable mon_containerized_deployment_with_kv here. This variable is being used # by ceph.conf.j2 template. so it should always be defined #mon_containerized_deployment_with_kv: false