searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

基于ceph rbd搭建lustre功能测试环境

2023-05-29 05:40:04
43
0

背景介绍

lustre 集群中,服务端有mgs/mds/ost多种角色,搭建环境需要用到多个块设备,本文件介绍基于ceph rbd分布式块设施搭建lustre测试环境的方法,基于ceph rbd灵活的块设备提供能力,可以快速灵活地满足lustre集群扩展能力,如增加mdt、增加ost、增加块设备容量等场景。下图示意lustre基本测试集群组成。

ceph部署

使用cephadmin(参考链接1)可以实现一键自动部署ceph集群,初始集群包括mon节点和mgr节点,并且后续扩展osd节点也基本能一条命令搞定。此处示例在单虚拟节点部署一个4 osd节点集群的步骤。

准备硬件环境

此处以windows平台使用hyper-V模拟一台虚拟机安装linux系统部署为例,添加4块虚拟硬盘。

初始化ceph集群

系统启动后需要安装docker或podman,再下载cephadmin程序。如下命令可以部署单节点的ceph集群,其中参数10.10.10.14为节点配置的ip,初始集群只有mon节点和mgr节点。

./cephadm --no-container-init bootstrap --mon-ip 10.10.10.14 --single-host-defaults --skip-pull --skip-dashboard --skip-monitoring-stack

 

命令执行成功后,会存在如下红框圈出的docker镜像,及docker实例。因为此步骤涉及从docker镜像源下载文件,如果网络条件不能满足,也可以预先下载并导入ceph docker镜像, 注意镜像版本与cephadmin脚本中指定的版本需要一致。

增加ceph osd

前述步骤顺利完成的话,如下命令(ceph orch device ls)会查询到预先准备的虚拟块设备,且状态为可用。

此时执行命令 ceph orch apply osd --all-available-devices,集群中会自动部署 4 个osd。

创建rbd

继续创建ceph pool:ceph osd pool create rbd

创建4个rbd,分别命名为mdt0、ost0、ost1、ost2做为lustre使用的块层设备:rbd create -s 5G mdt0

依次映射到系统中:rbd map mdt0

lustre部署

准备好rbd后,下一步就可以直接使用来部署lustre系统了。本章节主要参考 lustre manual手册,搭建一个简单集群主要参考第10章。lustre安装也请参考手册相关章节,其中社区版本原生支持redhat系统,在该系统下可以直接安装社区的rpm包。

格式化lustre文件系统

格式化mgt+mdt,共用mdt0块设备

mkfs.lustre --mgs --fsname=testfs --mdt --index 0 --servicenode=10.10.10.14@tcp /dev/rbd/rbd/mdt0

格式化ost,此示例准备了3个ost,直接使用如下命令,对应rbd指定不同的index

mkfs.lustre --ost --fsname=testfs --index 0 --mgsnode=10.10.10.14@tcp /dev/rbd/rbd/ost0
mkfs.lustre --ost --fsname=testfs --index 1 --mgsnode=10.10.10.14@tcp /dev/rbd/rbd/ost1
mkfs.lustre --ost --fsname=testfs --index 2 --mgsnode=10.10.10.14@tcp /dev/rbd/rbd/ost2

启动lustre服务端集群

完成前述步骤后,由挂载文件系统操作来启动lustre集群。

mkdir /mnt/lustre-mdt0 && mount -t lustre /dev/rbd0 /mnt/lustre-mdt0
mkdir /mnt/lustre-ost0 && mount -t lustre /dev/rbd1 /mnt/lustre-ost0
mkdir /mnt/lustre-ost1 && mount -t lustre /dev/rbd2 /mnt/lustre-ost1
mkdir /mnt/lustre-ost2 && mount -t lustre /dev/rbd3 /mnt/lustre-ost2

最终得到的lustre集群信息

客户端挂载测试

mount -t lustre 10.10.10.14:/testfs /root/test

总结

本文记录了单节点搭建ceph集群+lustre集群的步骤,基于ceph rbd管理能力,可以灵活的扩展lustre集群角色,比如增加mdt、ost等,实现多功能场景的快速功能测试验证。

参考链接

  1. cephadmin 
  2. lustre manual

 

0条评论
0 / 1000
羊****林
3文章数
1粉丝数
羊****林
3 文章 | 1 粉丝
原创

基于ceph rbd搭建lustre功能测试环境

2023-05-29 05:40:04
43
0

背景介绍

lustre 集群中,服务端有mgs/mds/ost多种角色,搭建环境需要用到多个块设备,本文件介绍基于ceph rbd分布式块设施搭建lustre测试环境的方法,基于ceph rbd灵活的块设备提供能力,可以快速灵活地满足lustre集群扩展能力,如增加mdt、增加ost、增加块设备容量等场景。下图示意lustre基本测试集群组成。

ceph部署

使用cephadmin(参考链接1)可以实现一键自动部署ceph集群,初始集群包括mon节点和mgr节点,并且后续扩展osd节点也基本能一条命令搞定。此处示例在单虚拟节点部署一个4 osd节点集群的步骤。

准备硬件环境

此处以windows平台使用hyper-V模拟一台虚拟机安装linux系统部署为例,添加4块虚拟硬盘。

初始化ceph集群

系统启动后需要安装docker或podman,再下载cephadmin程序。如下命令可以部署单节点的ceph集群,其中参数10.10.10.14为节点配置的ip,初始集群只有mon节点和mgr节点。

./cephadm --no-container-init bootstrap --mon-ip 10.10.10.14 --single-host-defaults --skip-pull --skip-dashboard --skip-monitoring-stack

 

命令执行成功后,会存在如下红框圈出的docker镜像,及docker实例。因为此步骤涉及从docker镜像源下载文件,如果网络条件不能满足,也可以预先下载并导入ceph docker镜像, 注意镜像版本与cephadmin脚本中指定的版本需要一致。

增加ceph osd

前述步骤顺利完成的话,如下命令(ceph orch device ls)会查询到预先准备的虚拟块设备,且状态为可用。

此时执行命令 ceph orch apply osd --all-available-devices,集群中会自动部署 4 个osd。

创建rbd

继续创建ceph pool:ceph osd pool create rbd

创建4个rbd,分别命名为mdt0、ost0、ost1、ost2做为lustre使用的块层设备:rbd create -s 5G mdt0

依次映射到系统中:rbd map mdt0

lustre部署

准备好rbd后,下一步就可以直接使用来部署lustre系统了。本章节主要参考 lustre manual手册,搭建一个简单集群主要参考第10章。lustre安装也请参考手册相关章节,其中社区版本原生支持redhat系统,在该系统下可以直接安装社区的rpm包。

格式化lustre文件系统

格式化mgt+mdt,共用mdt0块设备

mkfs.lustre --mgs --fsname=testfs --mdt --index 0 --servicenode=10.10.10.14@tcp /dev/rbd/rbd/mdt0

格式化ost,此示例准备了3个ost,直接使用如下命令,对应rbd指定不同的index

mkfs.lustre --ost --fsname=testfs --index 0 --mgsnode=10.10.10.14@tcp /dev/rbd/rbd/ost0
mkfs.lustre --ost --fsname=testfs --index 1 --mgsnode=10.10.10.14@tcp /dev/rbd/rbd/ost1
mkfs.lustre --ost --fsname=testfs --index 2 --mgsnode=10.10.10.14@tcp /dev/rbd/rbd/ost2

启动lustre服务端集群

完成前述步骤后,由挂载文件系统操作来启动lustre集群。

mkdir /mnt/lustre-mdt0 && mount -t lustre /dev/rbd0 /mnt/lustre-mdt0
mkdir /mnt/lustre-ost0 && mount -t lustre /dev/rbd1 /mnt/lustre-ost0
mkdir /mnt/lustre-ost1 && mount -t lustre /dev/rbd2 /mnt/lustre-ost1
mkdir /mnt/lustre-ost2 && mount -t lustre /dev/rbd3 /mnt/lustre-ost2

最终得到的lustre集群信息

客户端挂载测试

mount -t lustre 10.10.10.14:/testfs /root/test

总结

本文记录了单节点搭建ceph集群+lustre集群的步骤,基于ceph rbd管理能力,可以灵活的扩展lustre集群角色,比如增加mdt、ost等,实现多功能场景的快速功能测试验证。

参考链接

  1. cephadmin 
  2. lustre manual

 

文章来自个人专栏
文件系统
3 文章 | 1 订阅
0条评论
0 / 1000
请输入你的评论
0
0