Skip to content
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

Merged
merged 1 commit into from
Apr 1, 2021

Conversation

mergify[bot]
Copy link

@mergify mergify bot commented Mar 31, 2021

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> branch

Additionally, on Mergify dashboard you can:

  • look at your merge queues
  • generate the Mergify configuration with the config editor.

Finally, you can contact us on https://mergify.io/

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)
@guits
Copy link
Collaborator

guits commented Apr 1, 2021

jenkins test centos-non_container-switch_to_containers

@guits
Copy link
Collaborator

guits commented Apr 1, 2021

jenkins test centos-non_container-collocation

@guits
Copy link
Collaborator

guits commented Apr 1, 2021

jenkins test centos-container-lvm_osds

@guits
Copy link
Collaborator

guits commented Apr 1, 2021

jenkins test centos-container-all_daemons

@guits
Copy link
Collaborator

guits commented Apr 1, 2021

jenkins test centos-container-collocation

@guits
Copy link
Collaborator

guits commented Apr 1, 2021

jenkins test centos-container-all_in_one

@guits
Copy link
Collaborator

guits commented Apr 1, 2021

jenkins test centos-container-external_clients

@guits
Copy link
Collaborator

guits commented Apr 1, 2021

jenkins test centos-container-lvm_batch

@guits
Copy link
Collaborator

guits commented Apr 1, 2021

jenkins test centos-container-lvm_osds

@guits
Copy link
Collaborator

guits commented Apr 1, 2021

jenkins test centos-container-lvm_batch

@guits
Copy link
Collaborator

guits commented Apr 1, 2021

jenkins test centos-container-external_clients

@guits
Copy link
Collaborator

guits commented Apr 1, 2021

jenkins test centos-container-all_daemons

@guits
Copy link
Collaborator

guits commented Apr 1, 2021

jenkins test centos-container-collocation

@guits
Copy link
Collaborator

guits commented Apr 1, 2021

jenkins test centos-container-all_in_one

@guits
Copy link
Collaborator

guits commented Apr 1, 2021

jenkins test centos-container-lvm_osds

@guits
Copy link
Collaborator

guits commented Apr 1, 2021

jenkins test centos-container-all_daemons

@guits
Copy link
Collaborator

guits commented Apr 1, 2021

jenkins test centos-container-all_in_one

@guits
Copy link
Collaborator

guits commented Apr 1, 2021

jenkins test centos-container-collocation

@guits guits merged commit efddbdf into stable-6.0 Apr 1, 2021
@guits guits deleted the mergify/bp/stable-6.0/pr-6338 branch April 1, 2021 12:52
openstack-mirroring pushed a commit to openstack-archive/tripleo-heat-templates that referenced this pull request Jun 7, 2021
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
openstack-mirroring pushed a commit to openstack/openstack that referenced this pull request Jun 7, 2021
* 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
openstack-mirroring pushed a commit to openstack-archive/tripleo-heat-templates that referenced this pull request Jun 8, 2021
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)
openstack-mirroring pushed a commit to openstack-archive/tripleo-heat-templates that referenced this pull request Jun 10, 2021
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)
openstack-mirroring pushed a commit to openstack-archive/tripleo-heat-templates that referenced this pull request Jun 12, 2021
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)
openstack-mirroring pushed a commit to openstack-archive/tripleo-heat-templates that referenced this pull request Jun 15, 2021
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)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant