[Openstack] [cinder] [nova] How to provide additional options to NFS backend?

Jiri Suchomel jsuchome at suse.cz
Tue May 30 12:22:41 UTC 2017

(I've sent this to openstack-dev originally, sorry for cross-posting,
but I did not get any answers there...)

it seems to me that the way of adding extra NFS options to the cinder
backend is somewhat confusing.

1. There is  nfs_mount_options in cinder config file [1]

2. Then I can put my options to the nfs_shares_config file - that
it could contain additional options mentiones [2] or the
commit message that adds the feature [3]

Now, when I put my options to both of these places, cinder-volume
actually uses them twice and executes the command like this

mount -t nfs -o nfsvers=3 -o nfsvers=3 /var/lib/cinder/mnt/f5689da9ea41a66eff2ce0ef89b37bce

BTW, the options coming from nfs_shares_config are called 'flags' by
cinder/volume/drivers/nfs ([4]).

Now, to make it more fun, when I actually want to attach a volume to
running instance, nova uses different way of realizing which NFS
options to use:

- It reads them from _nova_ config option of libvirt.nfs_mount_options
- or it uses those it gets them from cinder when creating cinder
connection [6] But these are only the options defined in
nfs_shares_config file, NOT those nfs_mount_options specified in cinder
config file.

So. If I put my options to both places, nfs_shares_config file and
nfs_mount_options, it actually works how I want it to work, as
current mount does not complain that the option was provided twice. 

But it looks ugly. And I'm wondering - am I doing it wrong, or
is there a problem with either cinder or nova (or both)?


[1] https://docs.openstack.org/admin-guide/blockstorage-nfs-backend.html

Jiri Suchomel

SUSE LINUX, s.r.o.

More information about the Openstack mailing list