-
Notifications
You must be signed in to change notification settings - Fork 1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
nfs: set idmap config for Ceph-NFS (bp #6338) #6422
Conversation
Currently NFS Ganesha (ceph-nfs) consumes /etc/idmapd.conf, which controls mapping of user/owner identities under NFSv4+. With containerized service deployment, this file is an immutable part of the container image and cannot be modified. Here we provide group variables, and a taskk and templates for the ceph-nfs role, to set the path of the idmap configuration file and to make the most common adjustment to the contents of that file -- namely to set the 'Domain'. We default the path to /etc/ganesha/idmap.conf so that we will not conflict with /etc/idmapd.conf on the controller nodes where ganesha runs. NFSv4 clients, as used for example by the Cinder NFS driver, consume /etc/idmapd.conf and may require different settings than what is wanted for NFS Ganesha. Additionally, because we already bind /etc/ganesha from the host into the ceph-nfs container, the file NFS Ganesha consumes will no longer be an immutable part of the container. Closes: https://bugzilla.redhat.com/show_bug.cgi?id=1925646 Signed-off-by: Tom Barron tpb@dyncloud.net Co-Authored-by: Guillaume Abrioux <gabrioux@redhat.com> (cherry picked from commit 2db2208)
jenkins test centos-non_container-switch_to_containers |
jenkins test centos-non_container-collocation |
jenkins test centos-container-lvm_osds |
jenkins test centos-container-all_daemons |
jenkins test centos-container-collocation |
jenkins test centos-container-all_in_one |
jenkins test centos-container-external_clients |
jenkins test centos-container-lvm_batch |
jenkins test centos-container-lvm_osds |
jenkins test centos-container-lvm_batch |
jenkins test centos-container-external_clients |
jenkins test centos-container-all_daemons |
jenkins test centos-container-collocation |
jenkins test centos-container-all_in_one |
jenkins test centos-container-lvm_osds |
jenkins test centos-container-all_daemons |
jenkins test centos-container-all_in_one |
jenkins test centos-container-collocation |
Traditionally, Ganesha consumes /etc/idmapd.conf, which controls mapping of user/owner identities under NFSv4+. With containerized service deployment, this file has beenan immutable part of the container image and could not be modified. Recently ceph-ansible was modified to allow the user to set the path for idmapd.conf and to override ini settings in this file by supplying json configuration for the overrides in the same way that it can be supplied for ceph.conf overrides [1]. Also, the default path setting for the idmapd.conf file is /etc/ganesha/idmap.conf, which already is reflected into containerized ganesha under /etc/ganesha, solving the immutability issue. If no overrides are supplied, the file put in this location will match that originally frozen into the container, so there is no issue here with backwards compatibility. This change exposes parameters for idmap.conf file path and override contents in TripleO and passes them into ceph-ansible. It also sets up these parameters for cephadm. Cephadm support for OpenStack Ganesha is WIP so there will likely need to be a followup patch to make these effective when cephadm replaces ceph ansible. [1] ceph/ceph-ansible#6422 Change-Id: I422e49f0027efbbb25256d8b4718eb0aa78d90a4
* Update tripleo-heat-templates from branch 'master' to 8569ec942fa7db465e3b943e6ad1ddd5dfb2d393 - Merge "set ganesha idmap.conf file path and overrides" - set ganesha idmap.conf file path and overrides Traditionally, Ganesha consumes /etc/idmapd.conf, which controls mapping of user/owner identities under NFSv4+. With containerized service deployment, this file has beenan immutable part of the container image and could not be modified. Recently ceph-ansible was modified to allow the user to set the path for idmapd.conf and to override ini settings in this file by supplying json configuration for the overrides in the same way that it can be supplied for ceph.conf overrides [1]. Also, the default path setting for the idmapd.conf file is /etc/ganesha/idmap.conf, which already is reflected into containerized ganesha under /etc/ganesha, solving the immutability issue. If no overrides are supplied, the file put in this location will match that originally frozen into the container, so there is no issue here with backwards compatibility. This change exposes parameters for idmap.conf file path and override contents in TripleO and passes them into ceph-ansible. It also sets up these parameters for cephadm. Cephadm support for OpenStack Ganesha is WIP so there will likely need to be a followup patch to make these effective when cephadm replaces ceph ansible. [1] ceph/ceph-ansible#6422 Change-Id: I422e49f0027efbbb25256d8b4718eb0aa78d90a4
Traditionally, Ganesha consumes /etc/idmapd.conf, which controls mapping of user/owner identities under NFSv4+. With containerized service deployment, this file has beenan immutable part of the container image and could not be modified. Recently ceph-ansible was modified to allow the user to set the path for idmapd.conf and to override ini settings in this file by supplying json configuration for the overrides in the same way that it can be supplied for ceph.conf overrides [1]. Also, the default path setting for the idmapd.conf file is /etc/ganesha/idmap.conf, which already is reflected into containerized ganesha under /etc/ganesha, solving the immutability issue. If no overrides are supplied, the file put in this location will match that originally frozen into the container, so there is no issue here with backwards compatibility. This change exposes parameters for idmap.conf file path and override contents in TripleO and passes them into ceph-ansible. It also sets up these parameters for cephadm. Cephadm support for OpenStack Ganesha is WIP so there will likely need to be a followup patch to make these effective when cephadm replaces ceph ansible. [1] ceph/ceph-ansible#6422 Change-Id: I422e49f0027efbbb25256d8b4718eb0aa78d90a4 (cherry picked from commit 9a42686)
Traditionally, Ganesha consumes /etc/idmapd.conf, which controls mapping of user/owner identities under NFSv4+. With containerized service deployment, this file has beenan immutable part of the container image and could not be modified. Recently ceph-ansible was modified to allow the user to set the path for idmapd.conf and to override ini settings in this file by supplying json configuration for the overrides in the same way that it can be supplied for ceph.conf overrides [1]. Also, the default path setting for the idmapd.conf file is /etc/ganesha/idmap.conf, which already is reflected into containerized ganesha under /etc/ganesha, solving the immutability issue. If no overrides are supplied, the file put in this location will match that originally frozen into the container, so there is no issue here with backwards compatibility. This change exposes parameters for idmap.conf file path and override contents in TripleO and passes them into ceph-ansible. It also sets up these parameters for cephadm. Cephadm support for OpenStack Ganesha is WIP so there will likely need to be a followup patch to make these effective when cephadm replaces ceph ansible. [1] ceph/ceph-ansible#6422 Change-Id: I422e49f0027efbbb25256d8b4718eb0aa78d90a4 (cherry picked from commit 9a42686) (cherry picked from commit b2a8641)
Traditionally, Ganesha consumes /etc/idmapd.conf, which controls mapping of user/owner identities under NFSv4+. With containerized service deployment, this file has beenan immutable part of the container image and could not be modified. Recently ceph-ansible was modified to allow the user to set the path for idmapd.conf and to override ini settings in this file by supplying json configuration for the overrides in the same way that it can be supplied for ceph.conf overrides [1]. Also, the default path setting for the idmapd.conf file is /etc/ganesha/idmap.conf, which already is reflected into containerized ganesha under /etc/ganesha, solving the immutability issue. If no overrides are supplied, the file put in this location will match that originally frozen into the container, so there is no issue here with backwards compatibility. This change exposes parameters for idmap.conf file path and override contents in TripleO and passes them into ceph-ansible. It also sets up these parameters for cephadm. Cephadm support for OpenStack Ganesha is WIP so there will likely need to be a followup patch to make these effective when cephadm replaces ceph ansible. [1] ceph/ceph-ansible#6422 Change-Id: I422e49f0027efbbb25256d8b4718eb0aa78d90a4 (cherry picked from commit 9a42686) (cherry picked from commit b2a8641) (cherry picked from commit 823ec82)
Traditionally, Ganesha consumes /etc/idmapd.conf, which controls mapping of user/owner identities under NFSv4+. With containerized service deployment, this file has beenan immutable part of the container image and could not be modified. Recently ceph-ansible was modified to allow the user to set the path for idmapd.conf and to override ini settings in this file by supplying json configuration for the overrides in the same way that it can be supplied for ceph.conf overrides [1]. Also, the default path setting for the idmapd.conf file is /etc/ganesha/idmap.conf, which already is reflected into containerized ganesha under /etc/ganesha, solving the immutability issue. If no overrides are supplied, the file put in this location will match that originally frozen into the container, so there is no issue here with backwards compatibility. This change exposes parameters for idmap.conf file path and override contents in TripleO and passes them into ceph-ansible. It also sets up these parameters for cephadm. Cephadm support for OpenStack Ganesha is WIP so there will likely need to be a followup patch to make these effective when cephadm replaces ceph ansible. [1] ceph/ceph-ansible#6422 Change-Id: I422e49f0027efbbb25256d8b4718eb0aa78d90a4 (cherry picked from commit 9a42686) (cherry picked from commit b2a8641) (cherry picked from commit 823ec82) (cherry picked from commit e580b84)
This is an automatic backport of pull request #6338 done by Mergify.
Mergify commands and options
More conditions and actions can be found in the documentation.
You can also trigger Mergify actions by commenting on this pull request:
@Mergifyio refresh
will re-evaluate the rules@Mergifyio rebase
will rebase this PR on its base branch@Mergifyio update
will merge the base branch into this PR@Mergifyio backport <destination>
will backport this PR on<destination>
branchAdditionally, on Mergify dashboard you can:
Finally, you can contact us on https://mergify.io/