bug fix: openstack can not run swift for pyeclib and liberasurecode do not match
最近在使用devstack 安装openstack nimble项目。
nimble项目是一个专业的baremetal管理项目。
安装过程中,遇到这个问题。
/opt/stack/swift/bin/swift-object-server /etc/swift/object-server/1.conf -v
Traceback (most recent call last):
File "/opt/stack/swift/bin/swift-object-server", line 19, in <module>
from swift.common.wsgi import run_wsgi
File "/opt/stack/swift/swift/common/wsgi.py", line 41, in <module>
from swift.common.storage_policy import BindPortsCache
File "/opt/stack/swift/swift/common/storage_policy.py", line 25, in <module>
from pyeclib.ec_iface import ECDriver, ECDriverError, VALID_EC_TYPES
File "/usr/local/lib/python2.7/dist-packages/pyeclib/ec_iface.py", line 29, in <module>
from pyeclib_c import get_liberasurecode_version
ImportError: liberasurecode.so.1: cannot open shared object file: No such file or directory
s-object failed to start
这实际上是因为 pyeclib 和 liberasurecode 不匹配导致的。
具体原因不清楚。
pyeclib 是使用pip 安装的。而liberasurecode 是是用apt-get 安装的。
google 了一下,发现有人建议自己build 一下pyeclib
https://ask.openstack.org/en/question/93267/unable-to-start-swift-proxy-liberasurecode-missing-libshssso/
发现新的问题产生了。liberasurecode找不到libshss了。
libshss是一个liberasurecode的插件。并不是官方提供的。
使用的操作系统是ubuntu:
$ uname -a
Linux shhfeng-OptiPlex-9020 3.16.0-33-generic #44~14.04.1-Ubuntu SMP Fri Mar 13 10:33:29 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
反起到而行之,重新 build liberasurecode
$ git clone https://github.com/openstack/liberasurecode.git
$ cd liberasurecode
$ ./autogen.sh
$ ./configure
$ make
$ make test
$ sudo make install $ sudo ln -s /usr/local/lib/libnullcode.so.1.0.1 /usr/lib/x86_64-linux-gnu/libnullcode.so.1.0.1
$ sudo ln -s /usr/local/lib/liberasurecode_rs_vand.so.1.0.1 /usr/lib/x86_64-linux-gnu/liberasurecode_rs_vand.so.1.0.1
$ sudo ln -s /usr/local/lib/liberasurecode.so.1.1.0 /usr/lib/x86_64-linux-gnu/liberasurecode.so.1.1.0
$ sudo ln -s /usr/local/lib/libXorcode.so.1.0.1 /usr/lib/x86_64-linux-gnu/libXorcode.so.1.0.1
$ sudo ln -s /usr/local/lib/liberasurecode.so.1 /usr/lib/x86_64-linux-gnu/liberasurecode.so.1
$ sudo ln -s /usr/local/lib/liberasurecode_rs_vand.so.1 /usr/lib/x86_64-linux-gnu/liberasurecode_rs_vand.so.1
$ sudo ln -s /usr/local/lib/libnullcode.so.1 /usr/lib/x86_64-linux-gnu/libnullcode.so.1
$ sudo ln -s /usr/local/lib/libXorcode.so.1 /usr/lib/x86_64-linux-gnu/libXorcode.so.1
bug fix: openstack can not run swift for pyeclib and liberasurecode do not match的更多相关文章
- 【独家】K8S漏洞报告 | 近期bug fix解读&1.9.11主要bug fix汇总
*内容提要: 1. Kube-proxy长连接优雅断开机制及IPVS模式实现 2. 10/29--11/19 bug fix汇总分析 3. 1.9.11重要bug fix汇总 在本周的跟踪分析中,以1 ...
- 【独家】K8S漏洞报告|近期bug fix解读&1.11主要bug fix汇总
内容提要: 1. 高危漏洞CVE-2018-1002105深度解读 2. 11/19--12/11 bug fix汇总分析 3. 1.11重要bug fix解读 4. 1.9重要bug fix解读 在 ...
- OpenStack Object Storage(Swift)概述
概述 OpenStack Object Storage(Swift)是OpenStack开源云计算项目的子项目之一,被称为对象存储,提供了强大的扩展性.冗余和持久性. Swift并不是文件系统或者实时 ...
- 【独家】K8S漏洞报告 | 近期bug fix解读
安全漏洞CVE-2019-3874分析 Kubernetes近期重要bug fix分析 Kubernetes v1.13.5 bug fix数据分析 ——本周更新内容 安全漏洞CVE-2019-387 ...
- K8S漏洞报告 | 近期bug fix解读&1.13主要bug fix汇总
K8s近期漏洞详解 Kubernetes仪表盘漏洞(CVE-2018-18264) 因为这一漏洞,用户可以“跳过”登录过程获得仪表盘所使用的自定义TLS证书.如果您已将Kubernetes仪表盘配置为 ...
- 【OpenStack】OpenStack系列3之Swift详解
Swift安装部署(与keystone依赖包有冲突,需要安装不同版本eventlet) 参考:http://www.server110.com/openstack/201402/6662.html h ...
- MyCat不支持毫秒 bug fix
问题描述:mysql jdbc的驱动(mysql-connector-java-5.1.34.jar)设置的服务器的版本号最低是5.6.4才不会截取时间毫秒,但是现在取的是mycat 的版本号 5.5 ...
- NGUI UIGrid 动态刷新布局 && BUG FIX
/// <summary> /// "1" => 对应的一个UISpirte,"1234" => 对应四个预设 /// </sum ...
- oslo.messaging 1.8.0 bug fix and blueprint
1366597 由于amqp_auto_delete可配置,但是NotifierPublisher使用的是没有在配置中获取而使用的默认的False,即非auo_delete,因而在用户配置了amqp_ ...
随机推荐
- SDL显示内存中的图像
<textarea readonly="readonly" name="code" class="c++"> #include ...
- 【转】6.4.6 将驱动编译进Linux内核进行测试
原文网址:http://www.apkbus.com/android-98520-1-1.html 前面几节都是将Linux驱动编译成模块,然后动态装载进行测试.动态装载驱动模块不会随着Android ...
- Types of Binary Tree
Complete Binary Tree According to wiki, A complete binary tree is a binary tree in which every level ...
- UVA10487(二分)
Given is a set of integers and then a sequence of queries. A query gives you a number and asks to fin ...
- JavaScript面向对象精要(一)
数据类型 在JavaScript中,数据类型分为两类: 原始类型:保存一些简单数据,如true.5等.JavaScript共同拥有5中原始类型: boolean:布尔.值为true或false num ...
- Hyperion Essbase BusinessRule 函数学习--2
@AVG Returns the average of all values in expList. [返回表达式列表的平均值] Syntax @AVG (SKIPNONE | SKIPMISSING ...
- RHEL5.8安装Sybase 15.7_x86_64
RHEL5.8安装Sybase 15.7如果您运行的是 RHEL 5 或更高版本,请使用以下设置:kernel.exec-shield = 0kernel.randomize_va_space = 0 ...
- nginx错误日志级别
在配置nginx.conf 的时候,有一项是指定错误日志的,默认情况下你不指定也没有关系,因为nginx很少有错误日志记录的.但有时出现问题时,是有必要记录一下错误日志的,方便我们排查问题.error ...
- Java - 泛型 ( Generic )
Java - 泛型 ( Generic ) > 泛型的特点 > 解决元素存储的安全性问题 > 解决获取数据元素时,需要类型强转的问题 ...
- NET基础课--WinForm开发推荐3
用户体验 较长时间的运算:使用进度条(progress bar) 不要阻塞界面(UI)线程:使用多线程进行长时间的运算 状态栏(status bar)提示应用程序的状态 操作开始之后,用户应当能够通过 ...