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:
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" cinder- 11.1.0- 0.2017060520213 1.257519d. el7.centos. noarch nova-conductor- 16.0.0- 0.2017052103353 3.99bd334. el7.centos. noarch cinderclient- 2.0.1-0. 20170320163530. d0790e3. el7.centos. noarch nova-11. 1.0-0.201706052 32112.27baec7. el7.centos. noarch cinder- 11.0.0- 0.2017052108355 7.cedf99f. el7.centos. noarch nova-common- 16.0.0- 0.2017052103353 3.99bd334. el7.centos. noarch nova-api- 16.0.0- 0.2017052103353 3.99bd334. el7.centos. noarch nova-placement- api-16. 0.0-0.201705210 33533.99bd334. el7.centos. noarch cinder- 11.0.0- 0.2017052108355 7.cedf99f. el7.centos. noarch nova-16. 0.0-0.201705210 33533.99bd334. el7.centos. noarch nova-migration- 16.0.0- 0.2017052103353 3.99bd334. el7.centos. noarch nova-scheduler- 16.0.0- 0.2017052103353 3.99bd334. el7.centos. noarch nova-console- 16.0.0- 0.2017052103353 3.99bd334. el7.centos. noarch novaclient- 8.0.0-0. 20170517113627. e1b9e76. el7.centos. noarch nova-compute- 16.0.0- 0.2017052103353 3.99bd334. el7.centos. noarch nova-novncproxy -16.0.0- 0.2017052103353 3.99bd334. el7.centos. noarch
puppet-
openstack-
python2-
puppet-
python-
openstack-
openstack-
openstack-
openstack-
python-
openstack-
openstack-
openstack-
python2-
openstack-
openstack-