[Openstack] [Swift][Cinder] Installing Swift breaks Cinder ipv6

Mark Kirkwood mark.kirkwood at catalyst.net.nz
Wed Jul 1 01:10:31 UTC 2015


I ran into this a few days ago. The context is we are running a node 
that performs several api functions and it is going to be a swift proxy 
too (at a later date when usage ramps up many of these functions may 
move to individual machines, but for now we'd like to keep them together).

The machines are running Ubuntu Trusty, and we are installing Icehouse 
packages.

So currently the cinder api service runs and listens on a wide ipv6 
range (::). After I install the python-swift package the cinder api 
refuses to start with:

2015-07-01 00:50:25.327 12159 CRITICAL cinder [-] gaierror: [Errno -9] 
Address family for hostname not supported
2015-07-01 00:50:25.327 12159 TRACE cinder Traceback (most recent call 
last):
2015-07-01 00:50:25.327 12159 TRACE cinder   File "/usr/bin/cinder-api", 
line 57, in <module>
2015-07-01 00:50:25.327 12159 TRACE cinder     server = 
service.WSGIService('osapi_volume')
2015-07-01 00:50:25.327 12159 TRACE cinder   File 
"/usr/lib/python2.7/dist-packages/cinder/service.py", line 301, in __init__
2015-07-01 00:50:25.327 12159 TRACE cinder     port=self.port)
2015-07-01 00:50:25.327 12159 TRACE cinder   File 
"/usr/lib/python2.7/dist-packages/cinder/wsgi.py", line 118, in __init__
2015-07-01 00:50:25.327 12159 TRACE cinder     backlog=backlog)
2015-07-01 00:50:25.327 12159 TRACE cinder   File 
"/usr/lib/python2.7/dist-packages/cinder/wsgi.py", line 174, in _get_socket
2015-07-01 00:50:25.327 12159 TRACE cinder     family=family)
2015-07-01 00:50:25.327 12159 TRACE cinder   File 
"/usr/lib/python2.7/dist-packages/eventlet/convenience.py", line 38, in 
listen
2015-07-01 00:50:25.327 12159 TRACE cinder     sock.bind(addr)
2015-07-01 00:50:25.327 12159 TRACE cinder   File 
"/usr/lib/python2.7/socket.py", line 224, in meth
2015-07-01 00:50:25.327 12159 TRACE cinder     return 
getattr(self._sock,name)(*args)
2015-07-01 00:50:25.327 12159 TRACE cinder gaierror: [Errno -9] Address 
family for hostname not supported

The culprit appears to be the python-dnspython package that is a dep for 
python-swift.

Now it appears that there is some monkey patching going on in the 
various wsgi eventlet modules to do ipv6 - somehow python-dnspython is 
changing the way that works - any thoughts welcome, as it would be cool 
to have things working again!

Regards

Mark




More information about the Openstack mailing list