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_ ...
随机推荐
- bzoj1689 [Usaco2005 Open] Muddy roads 泥泞的路
Description Farmer John has a problem: the dirt road from his farm to town has suffered in the recen ...
- Word Search 解答
Question Given a 2D board and a word, find if the word exists in the grid. The word can be construct ...
- ubuntu查看硬件信息
1,外部探针probe sudo apt-get install hwinfo 执行hwinfo获取系统信息 --short
- 行变列 pivot
SELECT p.City , [临时] , [会员] , VIPFROM ( SELECT c.CustomerID , c.City , CASE WHEN COUNT(o.OrderID) &l ...
- nand烧写分析/内核在启动过程中式如何将这个文件映射成/目录及各子目录的?
我用的是ramdisk.image.gz,烧写在flash的0x10140000处 我不太明白内核在启动过程中式如何将这个文件映射成/目录及各子目录的? 如果ramdisk.image.gz在flas ...
- CATransform3D参数的意义
经常忘记CATransform3D各参数的意思,记下来好好理解下 struct CATransform3D { CGFloat m11(x缩放),m12(y切变),m13(旋转),m14(); C ...
- Linked List Cycle (java)
public boolean hasCycle(ListNode head) { ListNode slow=head; ListNode fast=head; if(head==null)retur ...
- 求一组数字序列的分布情况(java)
最近需要做一个正态分布的函数图像所以要处理一段double序列 写了这个算法 先上效果图: 核心思想: 1先根据步长计算每一个区间 2循环进行判断序列中每个数属于哪个区间 3用一个数组来保存每一个区 ...
- sql server数据同步方案-日志传送
1 功能描述 本方案采用日志传送模式,把核心数据库(主数据库)定期同步到灾备数据库(辅助服务器)及备份库(辅助服务器,便于其他系统使用,减轻主数据压力),期间,如果发生异常导致无法同步,将以电子邮件. ...
- Oracle数据库游标的类型
游标是SQL的一个内存工作区,由系统或用户以变量的形式定义.游标的作用就是用于临时存储从数据库中提取的数据块.Oracle数据库的Cursor类型包含三种: 静态游标:分为显式(explicit)游标 ...