I did some more digging yesterday but concluded that this is beyond my ability to debug in a reasonable timeframe. I no longer think os-brick is the problem though - it looks like the data passed in to os-brick is already bad, so I think it's something in Cinder or Nova that is not correctly handling the ipv6 iscsi address. I'm going to add both projects to this bug and let them determine who needs to fix what.
To recap, if we bracket iscsi_ip_address then oslo.config fails to validate the value, if we remove the brackets then cinder-volume starts correctly and is able to create the volume, but it can't be attached to the Nova instance. This appears to be because the iscsi port is being appended to the ipv6 address without first bracketing the address to separate the address and port portions (see the attached nova-compute logs). Here are the RDO package versions I was testing with: $ rpm -qa | egrep "nova|cinder" puppet-cinder-11.1.0-0.20170605202131.257519d.el7.centos.noarch openstack-nova-conductor-16.0.0-0.20170521033533.99bd334.el7.centos.noarch python2-cinderclient-2.0.1-0.20170320163530.d0790e3.el7.centos.noarch puppet-nova-11.1.0-0.20170605232112.27baec7.el7.centos.noarch python-cinder-11.0.0-0.20170521083557.cedf99f.el7.centos.noarch openstack-nova-common-16.0.0-0.20170521033533.99bd334.el7.centos.noarch openstack-nova-api-16.0.0-0.20170521033533.99bd334.el7.centos.noarch openstack-nova-placement-api-16.0.0-0.20170521033533.99bd334.el7.centos.noarch openstack-cinder-11.0.0-0.20170521083557.cedf99f.el7.centos.noarch python-nova-16.0.0-0.20170521033533.99bd334.el7.centos.noarch openstack-nova-migration-16.0.0-0.20170521033533.99bd334.el7.centos.noarch openstack-nova-scheduler-16.0.0-0.20170521033533.99bd334.el7.centos.noarch openstack-nova-console-16.0.0-0.20170521033533.99bd334.el7.centos.noarch python2-novaclient-8.0.0-0.20170517113627.e1b9e76.el7.centos.noarch openstack-nova-compute-16.0.0-0.20170521033533.99bd334.el7.centos.noarch openstack-nova-novncproxy-16.0.0-0.20170521033533.99bd334.el7.centos.noarch ** No longer affects: os-brick ** Also affects: nova Importance: Undecided Status: New ** Also affects: cinder Importance: Undecided Status: New -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to OpenStack Compute (nova). https://bugs.launchpad.net/bugs/1696866 Title: Cinder LVM driver and ipv6 broken Status in Cinder: New Status in OpenStack Compute (nova): New Status in tripleo: In Progress Bug description: The following traceback is seen in the cinder volume logs if you deploy with the default LVM driver and ipv6: 2017-06-08 21:50:40.665 38554 CRITICAL cinder [req-a7aff57e-2042-48f2-b1eb-962f79ccda01 - - - - -] ConfigFileValueError: Value for option iscsi_ip_address is not valid: [fd00:fd00:fd00:3000::12] is not a valid host address 2017-06-08 21:50:40.665 38554 ERROR cinder Traceback (most recent call last): 2017-06-08 21:50:40.665 38554 ERROR cinder File "/usr/bin/cinder-volume", line 10, in <module> 2017-06-08 21:50:40.665 38554 ERROR cinder sys.exit(main()) 2017-06-08 21:50:40.665 38554 ERROR cinder File "/usr/lib/python2.7/site-packages/cinder/cmd/volume.py", line 120, in main 2017-06-08 21:50:40.665 38554 ERROR cinder launcher.wait() 2017-06-08 21:50:40.665 38554 ERROR cinder File "/usr/lib/python2.7/site-packages/oslo_service/service.py", line 581, in wait 2017-06-08 21:50:40.665 38554 ERROR cinder self.conf.log_opt_values(LOG, logging.DEBUG) 2017-06-08 21:50:40.665 38554 ERROR cinder File "/usr/lib/python2.7/site-packages/oslo_config/cfg.py", line 2799, in log_opt_values 2017-06-08 21:50:40.665 38554 ERROR cinder _sanitize(opt, getattr(group_attr, opt_name))) 2017-06-08 21:50:40.665 38554 ERROR cinder File "/usr/lib/python2.7/site-packages/oslo_config/cfg.py", line 3277, in __getattr__ 2017-06-08 21:50:40.665 38554 ERROR cinder return self._conf._get(name, self._group) 2017-06-08 21:50:40.665 38554 ERROR cinder File "/usr/lib/python2.7/site-packages/oslo_config/cfg.py", line 2841, in _get 2017-06-08 21:50:40.665 38554 ERROR cinder value = self._do_get(name, group, namespace) 2017-06-08 21:50:40.665 38554 ERROR cinder File "/usr/lib/python2.7/site-packages/oslo_config/cfg.py", line 2884, in _do_get 2017-06-08 21:50:40.665 38554 ERROR cinder % (opt.name, str(ve))) 2017-06-08 21:50:40.665 38554 ERROR cinder ConfigFileValueError: Value for option iscsi_ip_address is not valid: [fd00:fd00:fd00:3000::12] is not a valid host address The problem appears to be that we bracket the value. If I remove the brackets then cinder volume works correctly. To manage notifications about this bug go to: https://bugs.launchpad.net/cinder/+bug/1696866/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : yahoo-eng-team@lists.launchpad.net Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp