背景
Curve v2.7 正式发布,该版本主要支持了 Quota 和 Hadoop SDK 以及一些性能优化,下面将简单介绍该版本的一些重点内容。
Feature:支持 Quota
在 Curve v2.7 中我们支持了 Quota 机制,让用户可以根据需要设置指定文件系统的容量上限, 用户可以使用 Curve 工具来进行相应设置:
$ curve fs update fs --fsname myfs --capacity 10GiB
Feature:支持 Hadoop SDK
为了让 Curve 更好地支持大数据场景,我们在本版本中提供 HDFS 接口兼容的 Java 客户端,让大数据生态的各组件可以平滑地使用 CurveFS 中的数据,支持 Hadoop 2.0 和 3.0。
用户只需要两步就可以轻松使用 Hadoop SDK:
- 第一步:编译 SDK
$ git clone -b release2.7 git@github.com:opencurve/curve.git
$ cd curve
$ make playground
$ make dep stor=fs
$ make sdk
Build SDK success => /curve/curvefs/sdk/output/curvefs-hadoop-1.0-SNAPSHOT.jar
一旦编译成功,将会生成一个 Jar 包,用户需将该 Jar 包拷贝至单个组件的 classpath 内。
如 Hadoop 为 ${HADOOP_HOME}/share/hadoop/common/lib/
- 第二步:修改各组件配置文件(一般为 core-site.xml)
CurveFS 所有配置项都可以填在 core-site.xml 中,只要将对应的配置项名加上 curvefs. 前缀即可,如 fs.accessLogging 在 core-site.xml 中需写成 curvefs.fs.accessLogging。特别需要注意的是以下几个配置项必须正确填写:
配置项 | 示例 | 说明 |
---|---|---|
fs.curvefs.impl | io.opencurve.curve.fs.hadoop.CurveFileSystem | 必填 |
fs.AbstractFileSystem.curvefs.impl | io.opencurve.curve.fs.hadoop.CurveFs | 必填 |
curvefs.name | myfs | fsname 名字,用户可以用 curveadm mount 随意挂载一个客户端来创建 fsname(后续会主动创建) |
curvefs.s3.ak | admin | s3 access key |
curvefs.s3.sk | admin | s3 secret key |
curvefs.s3.endpoint | 10.0.0.1:9000 | s3 地址 |
curvefs.s3.bucket_name | mybucket | 桶名 |
curvefs.mdsOpt.rpcRetryOpt.addrs | 10.0.0.1:6700,10.0.0.2:6700,10.0.0.3:6700 | CurveFS MDS 集群地址,可以用 curveadm status 获取 |
另外需要注意的是,用户的 FS 需要提前利用 Curve 工具创建好。
其他变更
-
Feature:MetaServer 支持了异步快照
-
Feature: 支持在 Openeuler 22.03-lts-sp2 平台上运行 CurveFS
-
Feature: 为 Curve 新版工具增加了更多使用命令
-
Improve:优化了读放大问题,特别是针对 memcache 缓存
-
Improve: 拆分 MetaServer Raft 读写应用队列
-
Bugfix: 修复了 diskcache LRU bug,该 BUG 可能导致写入的缓存无法转成读缓存,从而降低缓存命中率
(完整变更详见:https://docs.opencurve.io/Release/release-notes-v2.7 )
特别感谢
Curve v2.7 的开发吸引了众多开发者的积极参与,我们衷心感谢以下 contributor。大家的热爱与贡献凝聚了开源的巨大力量,为 Curve 持续迭代提供了宝贵的支持。我们期待更多的开发者加入 Curve 社区,共同书写属于我们的极客新篇章。
GitHub User ID | GitHub User ID | GitHub User ID |
---|---|---|
201341 | aspirer | baytan0720 |
caoxianfei1 | charlie0129 | Cyber-SiKu |
czm23333 | dependabot | h0hmj |
ilixiaocui | jolly-sy | ken90242 |
lianzhanbiao | lng2020 | montaguelhz |
NaturalSelect | NopeDl | peter5232 |
quas-modo | SeanHai | setcy |
Vigor-jpg | Wine93 | wu-hanqing |
wuhongsong | Xinlong-Chen | XR-stb |
Ziy1-Tan | ||
------ END. ------
🔥 开发者活动:
🔥 用户案例:
Curve 文件存储在 Elasticsearch 冷热数据存储中的应用实践
扬州万方:基于申威平台的 Curve 块存储在高性能和超融合场景下的实践
🔥 技术解析:
探索 : CurveBS 模拟 RBD 接口对接 OpenStack
关于 Curve
Curve 是一款高性能、易运维、云原生的开源分布式存储系统。可应用于主流的云原生基础设施平台:对接 OpenStack 平台为云主机提供高性能块存储服务;对接 Kubernetes 为其提供 RWO、RWX 等类型的持久化存储卷;对接 PolarFS 作为云原生数据库的高性能存储底座,完美支持云原生数据库的存算分离架构。
Curve 亦可作为云存储中间件使用 S3 兼容的对象存储作为数据存储引擎,为公有云用户提供高性价比的共享文件存储。
-
微信群:搜索群助手微信号 OpenCurve_bot