头图

背景

Curve 是云原生计算基金会 (CNCF) Sandbox 项目,是网易主导自研和开源的高性能、易运维、云原生的分布式存储系统。

经过 25 位社区小伙伴们 9 个月的迭代开发,CurveAdm v0.3.0 版本发布了!相比于 v0.2.0,新版本主要做了一些功能支持和性能优化,以及修复了用户在使用过程中反馈的一些 bug。

支持集群版本:

  • CurveBS v1.2.7+
  • CurveFS v2.6+

首次安装

使用如下命令一键安装最新版本 CurveAdm:

$ bash -c "$(curl -fsSL https://curveadm.nos-eastchina1.126.net/script/install.sh)"

默认安装路径为当前用户主目录下的 .curevadm 目录,即 ~/.curveadm。

从旧版本升级

使用如下命令更新 Curveadm 到最新版本:

$ curveadm -u

Feature

1. 支持一键部署监控

目前 Curveadm 支持一键部署/清理对 Curve 集群的监控,同时可以查看监控服务的容器状态,启动和停止监控服务。

1 # 部署监控2 curveadm monitor deploy3 # 查看监控状态4 curveadm monitor status5 # 停止监控服务6 curveadm monitor stop7 # 启动监控服务8 curveadm monitor start9 # 清理监控服务10 curveadm monitor clean

具体的使用方式和注意事项,请查看部署 Curve 监控文档

https://github.com/opencurve/curveadm/wiki/curve-monitor-deployment

2. 支持 podman 作为 runtime

在 0.3.0 版本之前,我们使用 docker 作为运行时进行容器化部署 Curve 集群,为了满足用户需求,0.3.0 版本支持使用 podman 作为容器运行时,只需要在配置文件中指定 engine 为 podman 即可。

1 [defaults]2 ...3 engine = "podman"45 [ssh_connections]6 ...

3. 支持etcd认证访问

0.3.0 版本支持开启 etcd 服务认证,只需要在 topology.yaml 中增加如下配置项。目前支持开启认证的版本包括 CurveBS v1.5 和 CurveFS master。

1 ...2 global:3  etcd.auth.enable: true4  etcd.auth.username: authUser5  etcd.auth.password: authPassword6 etcd_services:7  config:8   enable-v2: False9 ...

4. 支持多用户共同管理Curve集群

在之前的版本,CurveAdm 的数据库(SQLite)是保存在当前用户的指定目录下,这导致其它用户无法共享这个数据库。在 0.3.0 版本中我们支持了 rqlite 数据库,只要其他用户可以访问到该数据库,就可以实现多个用户同时维护 Curve 集群。

在 .curveadm.cfg 中进行如下配置:

1 [defaults]2 ...3 4 [ssh_connections]5 ...6 7 [database]8 url = "rqlite://127.0.0.1:4001"

5. 支持指定poolset部署和挂载

Curve BS 1.2.6 版本不支持设置 poolset,请使用 Curve BS 1.2.7 版本镜像体验:

1 # 部署2 $ curveadm deploy --poolset pool1 --poolset-disktype ssd3 # 挂载nbd盘4 $ curveadm map user:/volume --host machine1 --create --poolset pool1

其他变更:

  • Feature(format): support fomat with blocksize and chunksize.
  • Feature(cluster): support import a cluster from sqlite database file.
  • Improve: use embed module to embedded static shell scripts.
  • Improve(precheck): run ss command in container.
  • Improve(config): using more meaningful name for service instances.
  • Improve(client/status): display statuses even if get status failed for some clients.
  • Improve(client/status): show client config in verbose mode.

完整的变更请查看:Release v0.3.0 · opencurve/curveadm (github.com)

特别感谢

CurveAdm v0.3.0 版本的开发吸引了众多开发者的积极参与,我们衷心感谢以下 contributor 的贡献。让我们一起期待在 CurveAdm 的下一个版本中,能看到更多小伙伴的身影~

GitHubGitHubGitHub
aspirercaoxianfei1chengyu-l
Cyber-SiKuDemoLiangfengshunli
h0hmjilixiaocuijyf111
mfordjodymontaguelhzmrdrivingduck
SeanHaiSongjf-ttktiansuo114
tsonglewwavemomoWine93
wu-hanqingwuhongsongYhhHaa
zhanghuidinahzztaki

------ END. ------

🔥 开发者活动:

三校联动 | Curve Code Camp·金秋篇

🔥 用户案例:

Curve 文件存储在 Elasticsearch 冷热数据存储中的应用实践

扬州万方:基于申威平台的 Curve 块存储在高性能和超融合场景下的实践

创云融达:基于 Curve 块存储的超融合场景实践

🔥 技术解析:

CurveBS 1.5 版本功能介绍

Curve v2.7 发布:支持 Hadoop SDK,助力大数据存储降本提效

Curve 混闪之性能优化记录

CurveBS RDMA & SPDK 部署指南

image.png

关于 Curve

Curve 是一款高性能、易运维、云原生的开源分布式存储系统。可应用于主流的云原生基础设施平台:对接 OpenStack 平台为云主机提供高性能块存储服务;对接Kubernetes 为其提供 RWO、RWX 等类型的持久化存储卷;对接PolarFS 作为云原生数据库的高性能存储底座,完美支持云原生数据库的存算分离架构。

Curve 亦可作为云存储中间件使用 S3 兼容的对象存储作为数据存储引擎,为公有云用户提供高性价比的共享文件存储。


OpenCurve
1 声望0 粉丝

CNCF sandbox 项目,分布式存储系统 Curve 社区官方账号,提供 Curve 版本更新、落地实践、关键技术解析和活动资讯,欢迎各位关注!