# dsms-storage **Repository Path**: anolis/dsms-storage ## Basic Information - **Project Name**: dsms-storage - **Description**: No description available - **Primary Language**: Unknown - **License**: GPL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 16 - **Forks**: 7 - **Created**: 2022-11-16 - **Last Updated**: 2025-06-01 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # dsms-storage ### 介绍 dsms-storage是DSMS (Distributed Storage Management System)的数据存储组件,基于开源分布式文件系统进行二次开发,提供存储数据功能。 ### 特色 高可用:提供冗余特性,支持数据跨节点存放;支持容灾域隔离,支持跨机房、跨地域等各类负载备份规则; 优性能:摒弃了传统的集中式存储元数据寻址方式,采用CRUSH算法,数据分布均衡,并行度高;支持万兆网络,支持缓存分层,具有低时延、高吞吐的特点; 易扩展:去中心化集群,扩展灵活,支持横向和纵向的在线弹性扩展;支持上千存储节点规模,支持TB到PB级的数据量,满足增长性的数据需求; 广兼容:提供基于POSIX标准的接口,兼容Swift和S3的API,支持精简配置、快照、克隆等功能;全兼容ceph接口,便于集成到云、容器、大数据等平台中。 多存储模式:块存储、文件存储、对象存储。 ### 技术栈 - 开发语言:C++、Python - CRUSH算法 - 网络存储 ### 安装和使用 ##### 适配系统信息 ``` $ cat /etc/os-release NAME="Anolis OS" VERSION="8.6" ID="anolis" ID_LIKE="rhel fedora centos" VERSION_ID="8.6" PLATFORM_ID="platform:an8" PRETTY_NAME="Anolis OS 8.6" ANSI_COLOR="0;31" HOME_URL="https://openanolis.cn/" ``` ##### 1.添加epel源 ``` $ sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm $ sudo yum clean all $ sudo yum makecache ``` ##### 2.安装软件 ``` $ sudo yum install cups-client libuuid-devel mailx ncurses python3-defusedxml python3-isodate python3-pkgconfig python3-saml python3-xmlsec snappy spax sphinx snappy-devel fsprogs-devel ncurses-compat-libs $ wget https://vault.centos.org/centos/8/AppStream/x86_64/os/Packages/redhat-lsb-submod-security-4.1-47.el8.x86_64.rpm http://mirror.centos.org/centos/8-stream/AppStream/x86_64/os/Packages/redhat-lsb-core-4.1-47.el8.x86_64.rpm http://mirror.centos.org/centos/8-stream/AppStream/x86_64/os/Packages/xmlstarlet-1.6.1-20.el8.x86_64.rpm $ sudo rpm -ivh redhat-lsb-submod-security-4.1-47.el8.x86_64.rpm redhat-lsb-core-4.1-47.el8.x86_64.rpm xmlstarlet-1.6.1-20.el8.x86_64.rpm ``` ##### 3.部署依赖环境 ``` $ ./install-deps.sh ``` ##### 4.创建bulid ``` $ sudo cp -r dsms-storage/cmake/modules/* /usr/share/cmake/Modules/ $ sudo cp -r dsms-storage/src/seastar/cmake/* /usr/share/cmake/Modules/ $ ./do_cmake.sh ``` ##### 5.make ``` $ cd bulid $ make -j4 ``` ### 参与贡献 你可以[issue](https://gitee.com/anolis/dsms-storage/issues/new),或者提交一个 Pull Request。 **Pull Request:** 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request