利用 CurveAdm 快速部署一个单机集群 CurveBS.
Curve 是云原生计算基金会 (CNCF) Sandbox 项目,是网易自研和开源的高性能、易运维、云原生的分布式存储系统,由块存储 CurveBS 和文件系统 CurveFS 两部分组成。
# 软硬件准备
操作系统:Ubuntu22.04
# 环境准备
CurveBS 客户端依赖内核 nbd 模块
需要加载 nbd 模块
modprobe nbd
并且检测一下
sudo lsmod | grep nbd
nbd 是什么?Network Block Device,让用户通过网络访问到某个块设备,或者镜像设备。nfs (Network File System) 可以实现通过网络挂在各种文件系统并进行访问,nbd 可以进行分区,管理到块设备层。
# 安装依赖
CurveBS/CurveFS 所有服务都运行在 Docker 容器内,运行以下命令来检测,确保 Docker Daemon 已经运行:
sudo docker run --rm hello-world
这个命令会下载一个测试映像,并在容器中运行它。当容器运行时,它打印一条消息并退出。
# 安装 CurveAdm
安装在用户主目录下的 .curveadm 目录,即~/.curveadm
# 启动 playground 集群
操作容器并且有挂卸载的操作需要 root 权限,否则命令将一直在等待权限认证,通过运行以下命令来验证当前用户是否有 sudo 权限:
sudo ls
在这里执行原教程指令
curveadm playground run --kind curvebs
遇到了 630001 的问题,原因是访问了私有库,需要重新定向公开仓库。
curveadm playground run --kind curvebs -i opencurvedocker/curvebs:playground
执行以下命令可一键启动一个 CurveBS 的 playground,该命令可能需要几十秒的耗时,可以通过换源 docker 等加快速度
lsblk | grep nbd
sudo mkfs.ext4 /dev/nbd0
# 使用 playground
可以像使用本地磁盘一样去使用它,在这里我们将它格式化成 ext4 文件系统,并挂载到指定目录:
sudo mkfs.ext4 /dev/nbd0 # 这里我们假定映射的是 nbd0 设备sudo mount /dev/nbd0 /path/to/mount