最近在使用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的更多相关文章

  1. 【独家】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 ...

  2. 【独家】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解读 在 ...

  3. OpenStack Object Storage(Swift)概述

    概述 OpenStack Object Storage(Swift)是OpenStack开源云计算项目的子项目之一,被称为对象存储,提供了强大的扩展性.冗余和持久性. Swift并不是文件系统或者实时 ...

  4. 【独家】K8S漏洞报告 | 近期bug fix解读

    安全漏洞CVE-2019-3874分析 Kubernetes近期重要bug fix分析 Kubernetes v1.13.5 bug fix数据分析 ——本周更新内容 安全漏洞CVE-2019-387 ...

  5. K8S漏洞报告 | 近期bug fix解读&1.13主要bug fix汇总

    K8s近期漏洞详解 Kubernetes仪表盘漏洞(CVE-2018-18264) 因为这一漏洞,用户可以“跳过”登录过程获得仪表盘所使用的自定义TLS证书.如果您已将Kubernetes仪表盘配置为 ...

  6. 【OpenStack】OpenStack系列3之Swift详解

    Swift安装部署(与keystone依赖包有冲突,需要安装不同版本eventlet) 参考:http://www.server110.com/openstack/201402/6662.html h ...

  7. MyCat不支持毫秒 bug fix

    问题描述:mysql jdbc的驱动(mysql-connector-java-5.1.34.jar)设置的服务器的版本号最低是5.6.4才不会截取时间毫秒,但是现在取的是mycat 的版本号 5.5 ...

  8. NGUI UIGrid 动态刷新布局 && BUG FIX

    /// <summary> /// "1" => 对应的一个UISpirte,"1234" => 对应四个预设 /// </sum ...

  9. oslo.messaging 1.8.0 bug fix and blueprint

    1366597 由于amqp_auto_delete可配置,但是NotifierPublisher使用的是没有在配置中获取而使用的默认的False,即非auo_delete,因而在用户配置了amqp_ ...

随机推荐

  1. SDL显示内存中的图像

    <textarea readonly="readonly" name="code" class="c++"> #include ...

  2. 【转】6.4.6 将驱动编译进Linux内核进行测试

    原文网址:http://www.apkbus.com/android-98520-1-1.html 前面几节都是将Linux驱动编译成模块,然后动态装载进行测试.动态装载驱动模块不会随着Android ...

  3. Types of Binary Tree

    Complete Binary Tree According to wiki, A complete binary tree is a binary tree in which every level ...

  4. UVA10487(二分)

    Given is a set of integers and then a sequence of queries. A query gives you a number and asks to fin ...

  5. JavaScript面向对象精要(一)

    数据类型 在JavaScript中,数据类型分为两类: 原始类型:保存一些简单数据,如true.5等.JavaScript共同拥有5中原始类型: boolean:布尔.值为true或false num ...

  6. Hyperion Essbase BusinessRule 函数学习--2

    @AVG Returns the average of all values in expList. [返回表达式列表的平均值] Syntax @AVG (SKIPNONE | SKIPMISSING ...

  7. RHEL5.8安装Sybase 15.7_x86_64

    RHEL5.8安装Sybase 15.7如果您运行的是 RHEL 5 或更高版本,请使用以下设置:kernel.exec-shield = 0kernel.randomize_va_space = 0 ...

  8. nginx错误日志级别

    在配置nginx.conf 的时候,有一项是指定错误日志的,默认情况下你不指定也没有关系,因为nginx很少有错误日志记录的.但有时出现问题时,是有必要记录一下错误日志的,方便我们排查问题.error ...

  9. Java - 泛型 ( Generic )

    Java - 泛型 ( Generic )     > 泛型的特点         > 解决元素存储的安全性问题         > 解决获取数据元素时,需要类型强转的问题     ...

  10. NET基础课--WinForm开发推荐3

    用户体验 较长时间的运算:使用进度条(progress bar) 不要阻塞界面(UI)线程:使用多线程进行长时间的运算 状态栏(status bar)提示应用程序的状态 操作开始之后,用户应当能够通过 ...