ubuntu12.04 安装openstack对象存储系统swift一系列问题
转眼,从最开始的安装到现在已经有一个星期了。其中出现了好多问题,这段路程算是波折重重。今天有时间做一个简单的总结,希望对后来的人有所帮助。
swift安装的说明文档可以直接参考官方的SAIO-Swift all in one,直接按照步骤来。我出现问题的第一个地方是Getting the code,执行指令
sudo python setup.py develop
时,总是报出“TypeError: dist must be a Distribution instance”的错误。
我按照网上好多说法,先是折腾着装了一个distribution的module,但是接着又报错不存在setuptools module,我检查自己的python版本,是python2.7.5,会不会是版本问题导致一些库不被包含(python版本确实存在争议)?为了证实自己的答案,又开始找降低python版本的方法,最后导致系统崩溃,只得重装系统(ps:到目前为止,还没找到一个比较好的降低python版本的方法,跪求大神指教)。
重装系统之后,将python版本设置为了python2.7.3,重新到了上面的错误“TypeError”。网上有人说是setuptools版本的问题,如果安装setuptools1.1,问题就会被解决,事实证明,这个问题和setuptools的版本没有关系。最后在某个网站上找到了一个比较好的答案,如果上面失败,可以尝试命令
sudo pip install -U d2to1 python-swift
执行命令后,出现了问题“File"/usr/lib/python2.7/dist-packages/pip/baseparser.py",line 5, in <module>
import pkg_resources importError: no module named pkg_resources”。
我尝试安装libffi:
sudo apt-get install libffi-dev
然后再执行上述sudo pip...的命令,安装成功。
个人感觉还是在安装swift时的系统版本、python库支持等环境问题。如果在这个问题上还有疑问,可以发邮件等继续讨论,上述问题我纠结了3天才解决,算是对swift的安装过程有了一个比较好的了解吧。
第一个问题的讨论在网站:https://bitbucket.org/pypa/setuptools/issue/73/typeerror-dist-must-be-a-distribution
对于第二个问题,我个人觉得答案就是此时需要重启电脑,然后运行即可成功。相关讨论网站为:https://answers.launchpad.net/swift/+question/201108