yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #46740
[Bug 1414517] Re: Zookeeper servicegroup API driver is not tested and apparently not usable either
Reviewed: https://review.openstack.org/246343
Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=337a1b029a1f144f577a78712413a4182dd525f8
Submitter: Jenkins
Branch: master
commit 337a1b029a1f144f577a78712413a4182dd525f8
Author: Mark McLoughlin <markmc@xxxxxxxxxx>
Date: Tue Nov 17 10:17:44 2015 +0000
servicegroup: remove the zookeeper driver
We have had a "untested and risky to use in production" log warning
message for this driver since Kilo, it is currently broken (see below),
there are no obviously active users or contributors, and we are planning
on enabling Zookeeper usage by adopting the tooz library.
bug #1443910 shows that the driver fails to load because eventlet 0.17
broke evzookeeper by moving _SocketDuckForFd from eventlet.greenio to
eventlet.greenio.py2 in commit 449c90a. The 0.17 release was in Feb,
2015. The evzookeeper library hasn't been updated since Sep 2012 and the
sole maintainer is the original author of the zookeeper servicegroup
driver.
The tooz driver spec - Ibf70c2dbe308fc8e4dd277d8c75c4445b3dfce90 -
proposes a formal deprecation period for the zk driver, during which
existing zk driver users are encouraged to move to tooz. However, given
the state of the zk driver, we must conclude that there are no existing
users who need a graceful migration path. Removing the driver will
avoid potential confusion for new users and simplify the path to
adopting tooz.
Closes-Bug: #1443910
Closes-Bug: #1414517
Closes-Bug: #1414536
Signed-off-by: Mark McLoughlin <markmc@xxxxxxxxxx>
Change-Id: I2dba71e71b1ed7cf8476e8bfe9481e84be5df128
** Changed in: nova
Status: In Progress => Fix Released
--
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/1414517
Title:
Zookeeper servicegroup API driver is not tested and apparently not
usable either
Status in OpenStack Compute (nova):
Fix Released
Bug description:
The current UNIT tests for the Zookeeper servicegroup API driver are
never run in any of the gates, since it would require installation of
a number of Python libraries, one of which would require C headers
(zkpython).
When I tried to follow the instructions on the Zookeeper driver unit
test:
You need to install ZooKeeper locally and related dependencies
to run the test. It's unclear how to install python-zookeeper lib
in venv so you might have to run the test without it.
To set up in Ubuntu 12.04:
$ sudo apt-get install zookeeper zookeeperd python-zookeeper
$ sudo pip install evzookeeper
$ nosetests nova.tests.unit.servicegroup.test_zk_driver
The steps above did not work. The evzookeeper PIP install never
completes, due to the following error:
jaypipes@minty:~/repos/openstack/nova$ sudo pip install evzookeeper
Traceback (most recent call last):
File "/usr/bin/pip", line 9, in <module>
load_entry_point('pip==1.5.4', 'console_scripts', 'pip')()
File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 351, in load_entry_point
return get_distribution(dist).load_entry_point(group, name)
File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 2363, in load_entry_point
return ep.load()
File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 2088, in load
entry = __import__(self.module_name, globals(),globals(), ['__name__'])
File "/usr/lib/python2.7/dist-packages/pip/__init__.py", line 11, in <module>
from pip.vcs import git, mercurial, subversion, bazaar # noqa
File "/usr/lib/python2.7/dist-packages/pip/vcs/mercurial.py", line 9, in <module>
from pip.download import path_to_url
File "/usr/lib/python2.7/dist-packages/pip/download.py", line 25, in <module>
from requests.compat import IncompleteRead
ImportError: cannot import name IncompleteRead
After doing some digging, it looks like the Python + Zookeeper
community has shifted its focus to the Kazoo library:
https://kazoo.readthedocs.org/en/latest/
And our own community has switched focuses to the Tooz distributed
lock management library. So, I propose that we mark the existing ZK
driver in Nova as deprecated, with a note that we're not sure it ever
worked to begin with.
To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1414517/+subscriptions
References