Bug 1595543 - osp13/12 cinder netapp template uses deprecated parameters
Summary: osp13/12 cinder netapp template uses deprecated parameters
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-tripleo-heat-templates
Version: 12.0 (Pike)
Hardware: Unspecified
OS: Unspecified
medium
medium
Target Milestone: Upstream M3
: 15.0 (Stein)
Assignee: Alan Bishop
QA Contact: Tzach Shefi
Kim Nylander
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2018-06-27 06:12 UTC by Cody Swanson
Modified: 2019-09-26 10:45 UTC (History)
9 users (show)

Fixed In Version: openstack-tripleo-heat-templates-10.5.1-0.20190509160423.4dac4dc.el8ost
Doc Type: Bug Fix
Doc Text:
In earlier Red Hat OpenStack Platform versions, when you deployed the Block Storage service (cinder) on a NetApp back end server, director warned you that deprecated parameters were specified. In RHOSP 15, these deprecated director parameters have been updated to align with the latest NetApp driver settings. A new parameter, CinderNetappPoolNameSearchPattern, replaces, CinderNetappStoragePools. The deprecated parameter, CinderNetappEseriesHostType, has been removed.
Clone Of:
: 1601497 (view as bug list)
Environment:
Last Closed: 2019-09-21 11:16:20 UTC
Target Upstream Version:
tshefi: automate_bug-


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
OpenStack gerrit 633055 0 None MERGED Update parameters for cinder's Netapp backend 2020-07-08 19:43:21 UTC
Red Hat Product Errata RHEA-2019:2811 0 None None None 2019-09-21 11:18:42 UTC

Description Cody Swanson 2018-06-27 06:12:20 UTC
Description of problem:

cinder-netapp-config.yaml provides parameter for CinderNetappStoragePools / cinder::backend::netapp::netapp_storage_pools which has been deprecated in favor of netapp_pool_name_search_pattern:

warning('The "netapp_storage_pools" parameter is deprecated. Use "netapp_pool_name_search_pattern" instead.')

Additionally it sets netapp_pool_name_search_pattern  = '(.+)' by default in the openstack-puppet module, which is not escaped properly, resulting in an invalid search pattern of "()" in cinder.conf. This causes driver initialization to fail


Version-Release number of selected component (if applicable):

openstack-tripleo-heat-templates-7.0.9-8.el7ost.noarch.rpm

How reproducible:

Every time

Steps to Reproduce:
Deploy a clustered netapp backend with the provided cinder-netapp-config.yaml

Actual results:
Deployment generates error. 
warning('The "netapp_storage_pools" parameter is deprecated. Use "netapp_pool_name_search_pattern" instead.')

Expected results:


Additional info:

Additionally it sets netapp_pool_name_search_pattern  = '(.+)' by default in the openstack-puppet module, which is not escaped properly, resulting in an invalid search pattern of "()" in cinder.conf. This causes driver initialization to fail:

2018-06-23 03:41:24.980 57 DEBUG cinder.volume.drivers.netapp.dataontap.block_cmode [req-67a71ecd-6539-460d-b750-094189b1c91b - - - - -] Volume 'Pool1_iSCSI' does not match ^()$ _get_flexvol_to_pool_map /usr/lib/python2.7/site-packages/cinder/volume/drivers/netapp/dataontap/block_cmode.py:373
2018-06-23 03:41:24.980 57 DEBUG cinder.volume.drivers.netapp.dataontap.block_cmode [req-67a71ecd-6539-460d-b750-094189b1c91b - - - - -] Volume 'Pool2_iSCSI' does not match ^()$ _get_flexvol_to_pool_map /usr/lib/python2.7/site-packages/cinder/volume/drivers/netapp/dataontap/block_cmode.py:373
2018-06-23 03:41:24.981 57 DEBUG cinder.volume.drivers.netapp.dataontap.block_cmode [req-67a71ecd-6539-460d-b750-094189b1c91b - - - - -] Volume 'Pool3_Glance' does not match ^()$ _get_flexvol_to_pool_map /usr/lib/python2.7/site-packages/cinder/volume/drivers/netapp/dataontap/block_cmode.py:373
2018-06-23 03:41:24.981 57 ERROR cinder.volume.manager [req-67a71ecd-6539-460d-b750-094189b1c91b - - - - -] Failed to initialize driver.: NetAppDriverException: No pools are available for provisioning volumes. Ensure that the configuration option netapp_pool_name_search_pattern is set correctly.
2018-06-23 03:41:24.981 57 ERROR cinder.volume.manager Traceback (most recent call last):
2018-06-23 03:41:24.981 57 ERROR cinder.volume.manager   File "/usr/lib/python2.7/site-packages/cinder/volume/manager.py", line 457, in init_host
2018-06-23 03:41:24.981 57 ERROR cinder.volume.manager     self.driver.check_for_setup_error()
2018-06-23 03:41:24.981 57 ERROR cinder.volume.manager   File "/usr/lib/python2.7/site-packages/cinder/volume/drivers/netapp/dataontap/iscsi_cmode.py", line 44, in check_for_setup_error
2018-06-23 03:41:24.981 57 ERROR cinder.volume.manager     self.library.check_for_setup_error()
2018-06-23 03:41:24.981 57 ERROR cinder.volume.manager   File "/usr/lib/python2.7/site-packages/cinder/utils.py", line 849, in trace_method_logging_wrapper
2018-06-23 03:41:24.981 57 ERROR cinder.volume.manager     return f(*args, **kwargs)
2018-06-23 03:41:24.981 57 ERROR cinder.volume.manager   File "/usr/lib/python2.7/site-packages/cinder/utils.py", line 849, in trace_method_logging_wrapper
2018-06-23 03:41:24.981 57 ERROR cinder.volume.manager     return f(*args, **kwargs)
2018-06-23 03:41:24.981 57 ERROR cinder.volume.manager   File "/usr/lib/python2.7/site-packages/cinder/volume/drivers/netapp/dataontap/block_cmode.py", line 109, in check_for_setup_error
2018-06-23 03:41:24.981 57 ERROR cinder.volume.manager     raise exception.NetAppDriverException(msg)
2018-06-23 03:41:24.981 57 ERROR cinder.volume.manager NetAppDriverException: No pools are available for provisioning volumes. Ensure that the configuration option netapp_pool_name_search_pattern is set correctly.

Comment 2 Alan Bishop 2018-07-10 13:34:58 UTC
This will require deprecating and adding new THT parameters, so targeting OSP-15.

Comment 12 Tzach Shefi 2019-05-23 12:29:20 UTC
Verified on:
openstack-tripleo-heat-templates-10.5.1-0.20190509160423.4dac4dc.el8ost.noarch

Installed with netapp iscsi using
openstack-tripleo-heat-templates-10.5.1-0.20190509160423.4dac4dc.el8ost.noarch

netapp backend is configured and running
| cinder-volume    | hostgroup@tripleo_netapp | nova | enabled | up    | 2019-05-23T12:27:09.000000 | -               |



[tripleo_netapp]
backend_host=hostgroup
nfs_mount_options=
volume_backend_name=tripleo_netapp
volume_driver=cinder.volume.drivers.netapp.common.NetAppDriver
...
..
netapp_pool_name_search_pattern=(.+)   <-looks good

Also old params are gone 
CinderNetappStoragePools 
CinderNetappEseriesHostType

Comment 13 Tzach Shefi 2019-07-18 08:47:42 UTC
Per close loop there is not need to automate retest.

Comment 17 errata-xmlrpc 2019-09-21 11:16:20 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHEA-2019:2811


Note You need to log in before you can comment on or make changes to this bug.