首页> 软件下载>网络软件>CURVE官网版
CURVE官网版

CURVE官网版

电脑下载

软件介绍

CURVE官网版是一款实用的分布式存储系统软件,软件能够适用于不同应用场景的存储系统,例如常见的存储、对象存储、云原生数据库等等都能轻松兼容,具有高性能、高可用的优点优势,支持快照克隆和恢复 ,支持QEMU虚拟机和物理机NBD设备的两种挂载方式,甚至还能当做一个免费云盘来使用哦;CURVE官网版软件还具有非常良好的扩展性能,有需要的用户们赶紧来系统族下载站免费下载体验吧。

CURVE官网版

软件特色

1、高性能

高性能是CURVE官网版的一大特点,也是项目团队创建curve项目的初衷。RPC层面curve采用了高性能和低延迟并且已开源的brpc;在一致性层面选择了基于quorum机制并且开源的braft,从协议层面来说quorum机制在延迟方面天生优于多副本强一致的方式。实现上curve对braft快照的实现进行了优化,在状态机的实现上采用chunkfilepool的方式(初始化集群的时候格式化出指定比例的空间用作chunk)使得底层的写入放大为0;此外curve还在chunk上进行更细力度的地址空间hash以达到读写分离、减小IO碰撞等的效果,从而进一步提升IO性能。

2、高可用

高可用是curve的另一大特点。MDS、ChunkServer以及SnapShotCloneServer都支持多实例部署,部分实例异常不影响整个集群的可用性。

 2.1、MDS

MDS是无状态的,推荐至少部署两个实例。通过Etcd进行选主。多个MDS实例通过Etcd进行选主,当单个实例失效时,可以秒级切换到另外一个实例。失效实例上正在处理的请求,Client和SnapShotCloneServer都会对其进行重试,以达到不影响集群可用性的效果。

 2.2、SnapShotCloneServer

SnapShotCloneServer与MDS类似, 也是通过Etcd进行选主,不同的是,它通过负载均衡对外提供服务。失效期间的请求失败重试都是幂等的,不影响任务的正确性以及集群的可用性。

 2.3、ChunkServer

ChunkServer是一个集群,通过Raft协议保持数据一致性,并通过MDS做负载均衡。单个节点失效时,会影响到这个节点上存储的所有Copyset。对于Copyset上的Leader节点,会中断服务,等待重新选举;对于Copyset上的follower节点,服务不会受影响。当某个Chunkserver节点失效且在一段时间内无法恢复,MDS会将其上的数据迁移到其他节点上。

部署说明

CURVE官网版默认会将相关的库安装到/usr/lib下面,如果是CentOS系统,需要将client.ini和server.ini中的curve_lib_dir修改为/usr/lib64

一些外部依赖是通过源码的方式安装的,安装的过程中从github下载包可能会超时,这时可以选择重试或手动安装,jemalloc手动安装的话要保证configure的prefix与server.ini和client.ini的lib_install_prefix一致

如果机器上开启了SElinux可能会报Aborting, target uses selinux but python bindings (libselinux-python) aren't installed,可以尝试安装libselinux-python,或者强行关闭selinux

deploy_curve.yml用于部署一个全新的集群,集群成功搭建后不能重复跑,因为会扰乱集群。可以选择启动集群或者清理集群后重新部署,详细用法见curve-ansible README。

部署的过程中,在chunkserver成功启动之前都可以任意重试,chunkserver启动成功后重试要额外注意,要带上--skip-tags format,因为这一步会把启动成功的chunkserver的数据给清理掉,从而扰乱集群。

需要用到curve-nbd功能的话,对内核有两方面的要求:一是要支持nbd模块,可以modprobe nbd查看nbd模块是否存在。二是nbd设备的block size要能够被设置为4KB。经验证,通过DVD1.iso完整安装的CentOs8,内核版本是4.18.0-193.el8.x86_64,满足这个条件,可供参考。

相关版本

更多