Spec repos do not have code to unit test. The gate job definition for the py27 and py35 jobs skip if there doc only changes, which is all we will ever have in the specs repo. Therefore the one "test" we had will never be run. We were using this unit test as a check for formatting issues with the rst files. This was done before doc8 was available. Now that we can use doc8, we should just switch to running that as part of the pep8 jobs. Also fixes all the errors caught by doc8 that were not caught by our unit test check. Change-Id: Ida20764edde3a07c89703d82b41958c96548b239
3.7 KiB
Extending IBMNAS driver to support NAS based GPFS storage deployments
https://blueprints.launchpad.net/cinder/+spec/add-gpfs-nas-to-ibmnas
Currently, the ibmnas driver works for an nfs export from Storwize V7000 Unified and SONAS products. It does not have the capability to work with nfs exports provided from a gpfs server.
Problem description
Currently, the ibmnas driver does not have the capability to work with nfs exports provided from a gpfs server.
- Lacking this capability will limit the end users from using remote gpfs NAS servers as a backend in OpenStack environment.
Use Cases
Proposed change
- Add/Reuse functions in ibmnas.py to support all minimum features listed (github.com/openstack/cinder/blob/master/doc/source/devref/drivers.rst) for NAS based GPFS server backends.
Alternatives
The existing gpfs driver can be extended to support NAS based gpfs storage deployments. But this implementation requires many other new funtions to be introduced, which are already existing and can be reused in ibmnas driver. Apart from this in future, we have planned to support all NFS/GPFS related IBM products via ibmnas driver. Hence extending ibmnas driver is more advantageous than extending gpfs driver.
Data model impact
None
REST API impact
None
Security impact
No specific security issues needs to be considered. Insecure file permissions (OSSN-0014) is fixed in the driver and is addressed by https://review.openstack.org/#/c/101919/
Notifications impact
None
Other end user impact
None
Performance Impact
None
Other deployer impact
This requires an additional option to be configured while deploying OpenStack with IBMNAS products (sonas, v7ku, gpfs-nas).
- New configuration option needs to be filled in cinder.conf ibmnas_platform_type = <sonas> | <v7ku> | <gpfs-nas>
- This change needs to be explicitly enabled on IBMNAS driver CI certification
Developer impact
None
Implementation
Assignee(s)
- Primary assignee:
-
sasikanth <sasikanth.eda@in.ibm.com>
- Other contributors:
-
nilesh-bhosale <nilesh.bhosale@in.ibm.com>
Work Items
- Add/Reuse functions in ibmnas.py to support NAS based GPFS storage deployments.
Dependencies
None
Testing
- Unit tests - Existing test_ibmnas.py will be improved to handle the new code changes/functions.
- Tempest tests - No additional testcases needs to be written, this feature can be tested with the existing tempest.
- Cinder driver certification tests - Driver certification tests will be executed and results will be submitted to the community (as the changes will altogether enable a new storage platform).
- CI tests - We are working towards 3rd party CI environment and will continuously run tests across the respective hardware platform.
Documentation Impact
ibmnas driver documentation needs to updated with this new configuration option.
ibmnas_platform_type = <sonas> | <v7ku> | <gpfs-nas>
This option is used for selecting the appropriate backend storage. Valid values are v7ku for using IBM Storwize V7000 Unified sonas for using IBM Scale Out NAS and gpfs-nas for using NAS based GPFS server deployment
References
None