centos7 BeeGFS 文件系统搭建
  • mds 192.168.28.180
  • oss1 192.168.28.179
  • oss2 192.168.28.178
  • client 192.168.28.177

角色介绍

mds:元数据服务器。元数据服务管理,元数据存放位置。
oss1:对象数据服务器1。ost数据存放位置。
oss2:对象数据服务器2。ost数据存放位置。
client:测试BeeGFS挂载服务器。模拟客户端挂载。

模拟配置准备

  • mds 20G SSD
  • oss1 300G
  • oss2 300G

准备前置

配置好主机名,配置好双机互信。验证后,发现可以不用配置双机互信。

MDS元数据服务器

mds格式化磁盘

我这里的mds 20G ssd的设备号为sdb,格式化官方建议使用ext4,文件系统。

mkfs.ext4 /dev/sdb
vim /etc/fstab    #加入如下内容
----------------
/dev/sdb /mdt ext4 defaults 0 0
----------------
mkdir /mdt
mount -av

上面我将sdb,挂载到 /mdt下,用于存放元数据,元数据服务。最终如下图。

安装mds管理服务和元数据服务

  • 下载beeGFS的软件仓库
wget wget https://www.beegfs.io/release/beegfs_7.2.9/dists/beegfs-rhel7.repo -O /etc/yum.repos.d/beegfs-rhel7.repo
  • 安装管理服务和元数据服务
yum install beegfs-mgmtd beegfs-meta libbeegfs-ib -y
#libbeegfs-ib is only required for RDMA
  • 初始化管理服务和元数据服务
/opt/beegfs/sbin/beegfs-setup-meta -p /mdt/beegfs/beegfs_meta -s 2 -m mds
#说明:您还可以选择定义一个定制的数字元数据服务ID(范围1..65535)。此处选择数字“2”作为元数据服务ID
/opt/beegfs/sbin/beegfs-setup-mgmtd -p /mdt/beegfs/beegfs_mgmtd
  • 启动服务
systemctl start beegfs-mgmtd beegfs-meta
#你会发现,服务启动异常。是因为没有配置auth方式的原因。
  • 创建auth文件
dd if=/dev/random of=/etc/beegfs/connauthfile bs=128 count=1
chown root:root /etc/beegfs/connauthfile
chmod 400 /etc/beegfs/connauthfile

#记住这个auth文件,到时候需要拷贝到其他节点上面去。oss节点和所有客户端。
  • 修改beegfs-meta.conf,beegfs-mgmtd.conf
vim /etc/beegfs/beegfs-meta.conf
vim /etc/beegfs/beegfs-mgmtd.conf

#将connAuthFile选项设置为: /etc/beegfs/connauthfile
connAuthFile = /etc/beegfs/connauthfile
  • 再次启动服务
systemctl start beegfs-mgmtd beegfs-meta
systemctl enable beegfs-mgmtd beegfs-meta
systemctl status beegfs-mgmtd beegfs-meta

OSS对象数据服务器

我们有两台对象服务器,安装软件的操作都差不多,这里我会说明差异部分。

oss格式化磁盘

我这里的oss 300G设备号为sdb,格式化官方建议使用ext4,文件系统。

mkfs.ext4 /dev/sdb
vim /etc/fstab    #加入如下内容
----------------
/dev/sdb /ost1 ext4 defaults 0 0
----------------
mkdir /ost1
mount -av

** 注意:oss1挂载分区为ost1,oss2挂载分区为ost2,格式化时记得注意 **


安装oss对象数据存储服务

** oss1和oss2都执行 **

  • 下载beeGFS的软件仓库
wget wget https://www.beegfs.io/release/beegfs_7.2.9/dists/beegfs-rhel7.repo -O /etc/yum.repos.d/beegfs-rhel7.repo
  • 安装对象存储软件
yum install beegfs-storage libbeegfs-ib -y 
#libbeegfs-ib is only required for RDMA
#如果是RDMA,貌似需要编译一下,可以去找官方文档,这里我用的以太网,就不详细展开了。
  • 初始化
oss1:
/opt/beegfs/sbin/beegfs-setup-storage -p /ost1/beegfs_storage -s 3 -i 301 -m mds

#说明:您还可以选择定义一个定制的数字存储服务ID和数字存储目标ID(都在范围1..65535中)。此处将选择数字“3”作为存储服务的ID,并使用“301”作为存储目标ID。mds为mds服务的主机名。
#所以oss1和oss2的存储ID不一样,oss1为3,301。oss2为4,401。

oss2:
/opt/beegfs/sbin/beegfs-setup-storage -p /ost2/beegfs_storage -s 4 -i 401 -m mds
  • 修改配置文件beegfs-storage.conf
#mds scp 过来connauthfile到/etc/beegfs/connauthfile

vim /etc/beegfs/beegfs-storage.conf

#将connAuthFile选项设置为: /etc/beegfs/connauthfile
connAuthFile = /etc/beegfs/connauthfile

  • 启动服务
systemctl start beegfs-storage
systemctl status beegfs-storage
systemctl enable beegfs-storage

客户端

安装客户端服务和命令行服务

  • 下载beeGFS的软件仓库
wget wget https://www.beegfs.io/release/beegfs_7.2.9/dists/beegfs-rhel7.repo -O /etc/yum.repos.d/beegfs-rhel7.repo
  • 安装客户端服务,命令行服务,帮助服务
yum install beegfs-client beegfs-helperd beegfs-utils -y  
yum install kernel-devel -y

#说明:关于helperd和utils的注意:额外的beegfs-helperd包含客户机的userspace助手守护程序,它为客户机模块提供日志记录和DNS查找功能。beegfs-utils包包含例如beegfs-ctl命令行工具,它可以显示统计信息和执行管理任务。
  • 初始化配置服务
/opt/beegfs/sbin/beegfs-setup-client -m mds

#说明:mds为元数据服务器主机名
  • 修改配置文件
#mds scp 过来connauthfile到/etc/beegfs/connauthfile

vim /etc/beegfs/beegfs-helperd.conf
vim /etc/beegfs/beegfs-client.conf

#将connAuthFile选项设置为: /etc/beegfs/connauthfile
connAuthFile = /etc/beegfs/connauthfile

默认的挂载位置为:/mnt/beegfs 可以在配置文件中修改

vim /etc/beegfs/beegfs-client.conf
  • 启动服务
systemctl restart beegfs-helperd beegfs-client
  • 检查挂载

一些命令行工具

更多的命令行操作方式,去查找官方文档。

beegfs-ctl --listnodes --nodetype=meta --nicdetails     //客户端查看元数据节点信息
beegfs-ctl --listnodes --nodetype=storage --nicdetails  //客户端查看存储节点信息
beegfs-ctl --listnodes --nodetype=client --nicdetails    //客户端查看客户端节点信息
beegfs-ctl --getentryinfo /beegfs  查看文件系统信息

完成安装

自此,BeeGFS文件系统已经完成安装了。但是更多的存储设置,还需要去参考官方文档,个人觉得这个文件系统安装没那么复杂。目前的状态也是一个笼统的安装过程。有问题欢迎指点。

性能测试

sysbench

yum install -y sysbench
cd /beegfs
sysbench --test=fileio --threads=2 --file-total-size=512M --file-test-mode=rndrw prepare
sysbench --test=fileio --threads=2 --file-total-size=512M --file-test-mode=rndrw run
sysbench --test=fileio --threads=2 --file-total-size=512M --file-test-mode=rndrw cleanup

fio

yum install -y fio
cd /beegfs
rm -rf test_file*

顺序读:

fio -filename=test_file -direct=1 -iodepth 1 -thread -rw=read -ioengine=psync -bs=16k -size=1G -numjobs=30 -runtime=1000 -group_reporting -name=mytest

顺序写:

fio -filename=test_file -direct=1 -iodepth 1 -thread -rw=write -ioengine=psync -bs=16k -size=1G -numjobs=30 -runtime=1000 -group_reporting -name=mytest

混合随机读写

fio -filename=test_file -direct=1 -iodepth 1 -thread -rw=randrw -rwmixread=70 -ioengine=psync -bs=16k -size=1G -numjobs=30 -runtime=100 -group_reporting -name=mytest -ioscheduler=noop

随机读

fio -filename=test_file -direct=1 -iodepth 1 -thread -rw=randread -ioengine=psync -bs=16k -size=1G -numjobs=30 -runtime=1000 -group_reporting -name=mytest

随机写

 fio -filename=test_file -direct=1 -iodepth 1 -thread -rw=randwrite -ioengine=psync -bs=16k -size=1G -numjobs=30 -runtime=1000 -group_reporting -name=mytest

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇
WordPress Appliance - Powered by TurnKey Linux