{"id":306,"sha1":"77abb85a72c751314ac82b2b170557a469244880","playbook":{"id":3,"items":{"plays":37,"tasks":589,"results":576,"hosts":7,"files":222,"records":0},"arguments":{"version":null,"verbosity":0,"private_key_file":null,"remote_user":null,"connection":"openstack.osa.ssh","timeout":null,"ssh_common_args":null,"sftp_extra_args":null,"scp_extra_args":null,"ssh_extra_args":null,"ask_pass":false,"connection_password_file":null,"force_handlers":true,"flush_cache":false,"become":false,"become_method":"sudo","become_user":null,"become_ask_pass":false,"become_password_file":null,"tags":["all"],"skip_tags":[],"check":false,"diff":false,"inventory":["/home/zuul/src/opendev.org/openstack/openstack-ansible/inventory/dynamic_inventory.py","/home/zuul/src/opendev.org/openstack/openstack-ansible/inventory/inventory.ini","/etc/openstack_deploy/inventory.ini"],"listhosts":false,"subset":null,"extra_vars":"Not saved by ARA as configured by 'ignored_arguments'","vault_ids":[],"ask_vault_pass":false,"vault_password_files":[],"forks":4,"module_path":null,"syntax":false,"listtasks":false,"listtags":false,"step":false,"start_at_task":null,"args":["setup-infrastructure.yml"]},"labels":[{"id":1,"name":"check:False"},{"id":2,"name":"tags:all"}],"started":"2025-12-08T13:50:33.014895Z","ended":"2025-12-08T13:57:00.819740Z","duration":"00:06:27.804845","name":null,"ansible_version":"2.18.6","client_version":"1.7.4","python_version":"3.12.11","server_version":"1.7.4","status":"completed","path":"/home/zuul/src/opendev.org/openstack/openstack-ansible/playbooks/setup-infrastructure.yml","controller":"aio1.openstack.local","user":"root"},"content":"---\n# You can override vars by using host or group vars\n\n###########\n# GENERAL #\n###########\n\n# Even though NFS nodes should not have the admin key\n# at their disposal, some people might want to have it\n# distributed on RGW nodes. Setting 'copy_admin_key' to 'true'\n# will copy the admin key to the /etc/ceph/ directory\ncopy_admin_key: false\n\n# Whether docker container or systemd service should be enabled\n# and started, it's useful to set it to false if nfs-ganesha\n# service is managed by pacemaker\nceph_nfs_enable_service: true\n\n# ceph-nfs systemd service uses ansible's hostname as an instance id,\n# so service name is ceph-nfs@{{ ansible_facts['hostname'] }}, this is not\n# ideal when ceph-nfs is managed by pacemaker across multiple hosts - in\n# such case it's better to have constant instance id instead which\n# can be set by 'ceph_nfs_service_suffix'\n# ceph_nfs_service_suffix: \"{{ ansible_facts['hostname'] }}\"\n\n######################\n# NFS Ganesha Config #\n######################\nceph_nfs_log_file: \"/var/log/ganesha/ganesha.log\"\nceph_nfs_dynamic_exports: false\n# If set to true then rados is used to store ganesha exports\n# and client sessions information, this is useful if you\n# run multiple nfs-ganesha servers in active/passive mode and\n# want to do failover\nceph_nfs_rados_backend: false\n# Name of the rados object used to store a list of the export rados\n# object URLS\nceph_nfs_rados_export_index: \"ganesha-export-index\"\n# Address ganesha service should listen on, by default ganesha listens on all\n# addresses. (Note: ganesha ignores this parameter in current version due to\n# this bug: https://github.com/nfs-ganesha/nfs-ganesha/issues/217)\n# ceph_nfs_bind_addr: 0.0.0.0\n\n# If set to true, then ganesha's attribute and directory caching is disabled\n# as much as possible. Currently, ganesha caches by default.\n# When using ganesha as CephFS's gateway, it is recommended to turn off\n# ganesha's caching as the libcephfs clients also cache the same information.\n# Note: Irrespective of this option's setting, ganesha's caching is disabled\n# when setting 'nfs_file_gw' option as true.\nceph_nfs_disable_caching: false\n\n# This is the file ganesha will use to control NFSv4 ID mapping\nceph_nfs_idmap_conf: \"/etc/ganesha/idmap.conf\"\n\n# idmap configuration file override.\n# This allows you to specify more configuration options\n# using an INI style format.\n# Example:\n# idmap_conf_overrides:\n#   General:\n#     Domain: foo.domain.net\nidmap_conf_overrides: {}\n\n####################\n# FSAL Ceph Config #\n####################\nceph_nfs_ceph_export_id: 20133\nceph_nfs_ceph_pseudo_path: \"/cephfile\"\nceph_nfs_ceph_protocols: \"3,4\"\nceph_nfs_ceph_access_type: \"RW\"\nceph_nfs_ceph_user: \"admin\"\nceph_nfs_ceph_squash: \"Root_Squash\"\nceph_nfs_ceph_sectype: \"sys,krb5,krb5i,krb5p\"\n\n###################\n# FSAL RGW Config #\n###################\nceph_nfs_rgw_export_id: 20134\nceph_nfs_rgw_pseudo_path: \"/cephobject\"\nceph_nfs_rgw_protocols: \"3,4\"\nceph_nfs_rgw_access_type: \"RW\"\nceph_nfs_rgw_user: \"cephnfs\"\nceph_nfs_rgw_squash: \"Root_Squash\"\nceph_nfs_rgw_sectype: \"sys,krb5,krb5i,krb5p\"\n# Note: keys are optional and can be generated, but not on containerized, where\n# they must be configered.\n# ceph_nfs_rgw_access_key: \"QFAMEDSJP5DEKJO0DDXY\"\n# ceph_nfs_rgw_secret_key: \"iaSFLDVvDdQt6lkNzHyW4fPLZugBAI1g17LO0+87[MAC[M#C\"\nrgw_client_name: client.rgw.{{ ansible_facts['hostname'] }}\n\n###################\n# CONFIG OVERRIDE #\n###################\n\n# Ganesha configuration file override.\n# These multiline strings will be appended to the contents of the blocks in ganesha.conf and\n# must be in the correct ganesha.conf format seen here:\n# https://github.com/nfs-ganesha/nfs-ganesha/blob/next/src/config_samples/ganesha.conf.example\n#\n# Example:\n# CACHEINODE {\n         # Entries_HWMark = 100000;\n# }\n#\n# ganesha_core_param_overrides:\n# ganesha_ceph_export_overrides:\n# ganesha_rgw_export_overrides:\n# ganesha_rgw_section_overrides:\n# ganesha_log_overrides:\n# ganesha_conf_overrides: |\n#     CACHEINODE {\n             # Entries_HWMark = 100000;\n#     }\n\n##########\n# DOCKER #\n##########\n\nceph_docker_image: \"ceph/daemon\"\nceph_docker_image_tag: latest\nceph_nfs_docker_extra_env:\nceph_config_keys: [] # DON'T TOUCH ME\n","created":"2025-12-08T13:50:38.927832Z","updated":"2025-12-08T13:50:38.927843Z","path":"/etc/ansible/roles/ceph-ansible/roles/ceph-nfs/defaults/main.yml"}