1 Star 0 Fork 60

刘展峰 / DSS

forked from openGauss / DSS 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

DSS

DSS:Distributed Storage Service,分布式存储服务,是一款提供分布式存储服务的基础组件。 支持裸设备的访问及管理,提供卷组、卷、目录、文件的创建、删除、访问等API操作及运维工具;支持多节点相同文件元数据同步,支撑数据库共享存储架构。

一、工程说明

1、编程语言:C
2、编译工具:cmake或make,建议使用cmake
3、目录说明:
  • DSS:主目录,CMakeLists.txt为主工程入口;
  • src: 源代码目录,按子目录划分通用功能函数;
  • build:工程构建脚本

二、ceph使用

1、创建ceph的块设备(存储池和image)
  • 创建存储池: ceph osd pool create dsspool 64 64
  • 创建image: rbd create dssimage --size 10240MB --pool dsspool --image-format 2 --image-feature layering
  • 挂载: rbd map dsspool/dssimage
2、在初始化dss时候需要写入ceph相关配置
  • DSSDATA=/dev/rbd0
  • DSSHOME=${DSSDATA}
  • echo "VOLUME_TYPES=${DSSDATA}=1" > ${DSSHOME}/cfg/dss_inst.ini
  • echo "POOL_NAMES=${DSSDATA}=dsspool" >> ${DSSHOME}/cfg/dss_inst.ini
  • echo "IMAGE_NAMES=${DSSDATA}=dssimage" >> ${DSSHOME}/cfg/dss_inst.ini
  • echo "CEPH_CONFIG=/etc/ceph/ceph.conf" >> ${DSSHOME}/cfg/dss_inst.ini
  • DSSDATA=/dev/rbd0 为挂载ceph块设备。
  • POOL_NAMES为存储池配置,格式为 /dev/rbd0=dsspool
  • IMAGE_NAMES为image配置,格式为 /dev/rbd0=dssimage
  • CEPH_CONFIG为ceph集群配置文件,默认是/etc/ceph/ceph.conf

三、编译指导

1、操作系统和软件依赖要求

支持以下操作系统:

  • CentOS 7.6(x86)
  • openEuler-20.03-LTS 适配其他系统,可参照openGauss数据库编译指导
2、下载DSS

可以从开源社区下载DSS。

3、代码编译

使用DSS/build/linux/opengauss/build.sh编译代码, 参数说明请见以下表格。

选项 参数 说明
-3rd [binarylibs path] 指定binarylibs路径。该路径必须是绝对路径。
-m [version_mode] 编译目标版本,Debug或者Release。默认Release
-t [build_tool] 指定编译工具,cmake或者make。默认cmake

现在只需使用如下命令即可编译:
[user@linux]$ sh build.sh -3rd [binarylibs path] -m Release -t cmake
完成编译后,动态库生成在DSS/output/lib目录中

空文件

简介

暂无描述 展开 收起
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
1
https://gitee.com/liuzhanfeng2/DSS.git
git@gitee.com:liuzhanfeng2/DSS.git
liuzhanfeng2
DSS
DSS
master

搜索帮助