OpenStack Discussions

Openstack cinder storage on FlexGroup

TimMcIntire

Working on an openstack (Redhat OSP13) that uses netapp for the backend storage ( cinder/nova/glance ).  the netapp is a FAS2720 running the latest 9.7 image.

 

I was able to get this to work using a flexvols, but want to take advantage of both of the aggregates I have using a flexgroup.   has anyone been able to get this to work?  I have flexgroups for both nova and cinder.   they mount ok on the controller/compute.  I am able to launch VMs that use only nova,  but when I try to create a cinder volume, it fails.

 

in the controller logs I see:

 

Could not get performance base counter name. Performance-based scheduler functions may not be available.: NaApiError: NetApp API failed. Reaso
n - 13001:Object "system:constituent" was not found.
2020-02-06 19:28:27.502 56 INFO os_brick.remotefs.remotefs [req-970f7889-e55c-43aa-8d54-cc804059b1b1 - - - - -] Already mounted: /var/lib/cinder/m
nt/34b77dc747ac92bb76f959dc7f8d354b
2020-02-06 19:28:27.688 56 ERROR cinder.volume.drivers.netapp.dataontap.nfs_cmode [req-970f7889-e55c-43aa-8d54-cc804059b1b1 - - - - -] Flexvol not
 found for NFS share 172.16.200.227:/ostack6_cinder.: VolumeBackendAPIException: Bad or unexpected response from the storage volume backend API: C
ould not find unique volume None.

and

2020-02-07 16:04:08.352 56 WARNING cinder.volume.drivers.netapp.dataontap.nfs_base [-] Exception during cache cleaning 172.16.200.227:/ostack6_cinder. Message - Volume /ostack6_cinder not found.: NetAppDriverException: Volume /ostack6_cinder not found.




ostack6_cinder is the name of the flexgroup that was created on the vserver.
 
I am wondering if this is just an unsupported configuration and I will have to go back to flexvol.
 
any suggestions would be greatly appreciated.
4 REPLIES 4

Re: Openstack cinder storage on FlexGroup

Ontapforrum

Hi,

 

Don't know much about cinder or the error but is it for 'virtual workload' ?

 

TR-4571: NetApp currently does not recommend that FlexGroup volumes be used for virtual workloads.
https://www.netapp.com/us/media/tr-4571.pdf

 

Basically, if cinder requires SAN [underneath] then flexgroup cannot help.

 

Unsupported protocols: 
SAN
pNFS
NFSv4.x
SMB 1.0
SMB 3.0
SMB transparent failover


Key Limitations for virtual workload:
FlexGroup are missing functionality that is important to virtualization workloads, such as copy offload support/VAAI and FlexClone.


Thanks!

Re: Openstack cinder storage on FlexGroup

TimMcIntire

Thanks for the reply.  the storage is all NFS ( 4.0 ).  from what I can tell this is supported on ontap 9.7 ( which is what I just upgraded to this week ).    Looking at the release nodes for 9.7, it shows flexclone supported on flexgroups.

 

I actually think the issue is in the api that openstack use to interact with the netapp.  it seems to be checking for a flexvol to exist for cinder,  but I have created a flexgroup with that name.   I dont think this is a netapp issue, but an issue with the api used by openstack.

 

will keep poking at this a bit more, but may have to redo my aggregates and go back to flexvol.

 

Tim

Re: Openstack cinder storage on FlexGroup

parisi

I think the issue is how Cinder drivers look for volumes. It likely uses a unique ID like the volume MSID. Flexgroup volumes have multiple member volume MSIDs and one flexgroup MSID. Flexvols have  just a single MSID. Cinder probably is querying the wrong ID and doesn’t understand flexgroup MSID as a field.

 

As far as I know, there won’t be a NetApp Cinder driver that supports flexgroup volumes.

Re: Openstack cinder storage on FlexGroup

Ontapforrum

Thanks Parisi, makes sense. Flexgroup definition say - It is stiching together multiple constituents (flexVols:MSIDs) into single name-space, however each constituent/flexvol has it's own MSID which is unique. Probably that's why the error is saying 'Flexvol not found/system:constituent not found', bcos there are many ??

 

There is redhat official KB article (You need login) not sure if that applies to flexgroup: Take a look if you have redhat login.

OpenStack cinder 13001:Object "system:constituent" was not found."
https://access.redhat.com/solutions/3316601


At another place it mentions: cinder driver does not work with "Vserver Scoped" permissions, with "cluster scoped' it works, again it may not be for flexgroup.

Earn Rewards for Your Review!
GPI Review Banner
All Community Forums
Public