免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2336 | 回复: 0
打印 上一主题 下一主题

[GlusterFS] GlusterFS第一次实验--3个存储节点、1个client节点 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-12-15 10:07 |只看该作者 |倒序浏览
设计结构

  • RAID1:AFR
  • RAID0:unify(scheduler rr)

实验目标
  • Server和Client的安装部署
  • Client节点本地硬盘I/O能力表现
  • RAID1结构的I/O性能与单一节点的对比
  • RAID0结构的I/O性能与单一节点的对比
  • RAID1+0结构的I/O性能与单一节点的对比
  • RAID0+1结构的I/O性能与单一节点的对比

实验环境配置
  • 说明:测试用的服务器都是虚拟机,我尽量把他们分布到不同的宿主上,以减少I/O的互相干扰。但毕竟还是会有些资源使用上的交叉,所以测试数据仅供参考和比较。

  • Server端:XEN虚拟机(2*VCPU/256MB/10GB SATA)
  • Client端:XEN虚拟机(2*VCPU/256MB/10GB SATA)

Client挂载参数:
glusterfs on /mnt/glusterfs type fuse (rw,nosuid,nodev,allow_other,default_permissions,max_read=1048576)
测试软件及方法
我们使用标准的Unix命令:dd来进行基本的I/O性能测试,并使用iostat和sar来实时检查各节点的系统负载情况
用dd命令在挂载好的glusterfs分区里并行创建5个250MB大小的文件,测试其100%写入性能。
# cd /iscsi
# dd if=/dev/zero of=file1 bs=64K count=4096 &
# dd if=/dev/zero of=file2 bs=64K count=4096 &
# dd if=/dev/zero of=file3 bs=64K count=4096 &
# dd if=/dev/zero of=file4 bs=64K count=4096 &
# dd if=/dev/zero of=file5 bs=64K count=4096 &
# iostat 5
随后,在执行如下命令,测试其100%读出性能
# dd if=file1 of=/dev/null bs=64K count=4096 &
此种测试方法不使用任何其他测试软件,虽然不十分细致,但iostat的输出表明了各节点网卡和磁盘的处理速度,并且我们使用并行的5个并行的方式,也可以填补处理交互上的空白,使I/O通道能够最大化的利用
需要说明的是,这种测试方法不能代表所有类型的I/O,它只能代表有序的100%读和100%写操作,但是也代表了绝大多数Unix类操作。
实验结果
Client节点本地硬盘I/O能力表现:
写入性能测试:
  • 整体执行时间:2分30秒

iostat输出:

sar输出:

读取性能测试:
  • 整体执行时间:30秒

iostat输出:

sar输出:

两个Server节点RAID1结构I/O能力表现:
写入性能测试:
  • 整体执行时间:4分21秒
  • Client节点

iostat输出:

sar输出:

  • Server节点1

iostat输出:

sar输出:

  • Server节点2

iostat输出:

sar输出:

读取性能测试:
  • 整体执行时间:54秒
  • Client节点

iostat输出:

sar输出:

  • Server节点1

iostat输出:

sar输出:

  • Server节点2

iostat输出:

sar输出:

三个Server节点RAID1结构I/O能力表现:
写入性能测试:
  • 整体执行时间:4分40秒
  • Client节点

iostat输出:

sar输出:

  • Server节点1

iostat输出:

sar输出:

  • Server节点2

iostat输出:

sar输出:

  • Server节点3

iostat输出:

sar输出:

读取性能测试:
  • 整体执行时间:48秒
  • Client节点

iostat输出:

sar输出:

  • Server节点1

iostat输出:

sar输出:

  • Server节点2

iostat输出:

sar输出:

  • Server节点3

iostat输出:

sar输出:

两个Server节点RAID0结构I/O能力表现:
写入性能测试:
  • 整体执行时间:2分6秒
  • Client节点

iostat输出:

sar输出:

  • Server节点1

iostat输出:

sar输出:

  • Server节点2

iostat输出:

sar输出:

读取性能测试:
  • 整体执行时间:46秒,与之前结构的测试效果没有本质差异

三个Server节点RAID0结构I/O能力表现:
写入性能测试:
  • 整体执行时间:1分45秒
  • Client节点

iostat输出:

sar输出:

  • Server节点1

iostat输出:

sar输出:

  • Server节点2

iostat输出:

sar输出:

  • Server节点3

iostat输出:

sar输出:

读取性能测试:
  • 整体执行时间:45秒,与之前结构的测试效果没有本质差异

两个Server节点先做RAID1,再加一个Server节点构成1+0结构I/O能力表现:
写入性能测试:
  • 整体执行时间:2分42秒
  • Client节点

iostat输出:

sar输出:

  • Server节点1 (raid1 menber)

iostat输出:

sar输出:

  • Server节点2 (raid1 menber)

iostat输出:

sar输出:

  • Server节点3

iostat输出:

sar输出:

读取性能测试:
  • 整体执行时间:52秒,与之前结构的测试效果没有本质差异

两个Server节点先做RAID0,再加一个Server节点构成0+1结构I/O能力表现:
写入性能测试:
  • 整体执行时间:3分25秒
  • Client节点

iostat输出:

sar输出:

  • Server节点1 (raid0 menber)

iostat输出:

sar输出:

  • Server节点2 (raid0 menber)

iostat输出:

sar输出:

  • Server节点3

iostat输出:

sar输出:

读取性能测试:
  • 整体执行时间:54秒,与之前结构的测试效果没有本质差异

实验结果对比图

实验感想
  • 部署比较简单,但管理过于简单,没有web页面,也没有性能和管理监控界面。
  • 还不能实现节点动态增加和减少,前端需要重新挂载才生效。并且,自动均衡脚本可能有bug。
  • unify有时不能正确处理文件存放,幸好有afr配合保证冗余数据。
  • unify和afr的对比,能明显的反映出分布式存储的效果,可以超过本地的IO处理性能,峰值取决于前端服务器的网络IO。
  • unify和afr方式都以整体文件进行处理,不切片。如果遇到各节点io性能不一致,整体写操作队列的执行时间将取决于最慢的机器,整体读操作的执行时间将取决于该数据存放的节点。
  • RAID1+0结构要比RAID0+1的I/O性能好,因为前一种需要处理的文件拷贝数量相对少,文件数量越多越明显。
  • 下一步,有必要进行条带化的统一命名结构的部署测试,理论上要优于本次测试的架构。

               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/88421/showart_1721337.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP