ceph存储集群测试方案
--测试目的
测试ceph集群的读写性能,根据测试数据了解整个ceph集群的性能情况。
--测试环境
1、8节点ceph集群环境,1台虚拟机(cpu 8核,内存8G),8k的块大小,时长2小时
2、8节点ceph集群环境,5台虚拟机(cpu 8核,内存8G),8k的块大小,时长2小时
--测试情景
1、Ceph集群无故障的性能指标
2、Ceph集群移除节点的性能指标
[ceph集群无故障状态测试]
--测试方法:
1、从ceph集群中创建一个1T的块设备空间,将分出的磁盘空间挂载到虚拟机。
A、利用fio工具测试挂载设备的读写速度
B、利用zabbix监控得到虚拟机的系统使用情况(CPU、内存等)
C、利用ceph服务器的ceph命令得到SSD盘和SATA盘的使用情况,利用ceph集群监控页面查看集群的CPU、内存等使用情况
l fio测试
fio --name=test --output=8krw --thread --rw=randwrite --bs=8k --ioengine=libaio --iodepth=64 --numjobs=1 --filename=/dev/sdb1 --direct=1 --time_based --runtime=7200 --allow_mounted_write=1 --group_reporting
[块设备随机写操作]
|
bw(MB/s) |
Iops(每秒的读写速度) |
|
|
randwrite |
74.25 |
9503 |
[块设备随机读操作]
|
bw(MB/s) |
Iops(每秒的读写速度) |
|
|
randread |
107.83 |
13802 |
客户端的系统使用情况
[CPU使用情况(idle)]
随机写:

随机读:

[内存使用情况]
随机写:

随机读:

测试结果分析:业务服务器的cpu消耗在10%到25%之间,内存最大达到7G(内存8G)左右,网络最大达到35Kbps(几乎对客户端网络影响不大)
l 服务端的系统使用情况
[固态盘使用情况]
初始ssd的使用率7%,随机写的过程中17%,随机写操作完成ssd使用率下降到10%
[SATA盘的使用情况]
初始使用率是28.61%,随机写操作完成之后使用率是28.61%
[CPU变化情况]
ceph服务器CPU变化图(随机写):

随机读:

[内存利用率]
ceph服务器内存变化图(随机写):

随机读:

测试结果分析:ssd在整个磁盘中只是做缓存,数据不是永久在上面,最终的数据都会写到SATA盘中。服务端的CPU消耗对于网关服务器来说最高达到80%左右,其他服务器最大达到70%左右。服务端的内存基本没消耗。
2、从ceph集群中创建5个1T的块设备空间,将分出的磁盘空间挂载到5个不同物理机创建的虚拟机
A、利用fio工具测试挂载设备的读写速度
B、利用zabbix监控得到虚拟机的系统使用情况(CPU、内存等)
C、利用ceph服务器的ceph命令得到SSD盘和SATA盘的使用情况,利用ceph集群监控页面查看集群的CPU、内存等使用情况
--对照组:1台虚拟机和5台虚拟机性能对照
--读写方式:随机IO
l fio测试
[块设备随机写操作]
|
bw(MB/s) |
Iops(每秒的读写速度) |
|
|
randwrite |
35.96 |
4602 |
[块设备随机读操作]
|
bw(MB/s) |
Iops(每秒的读写速度) |
|
|
randread |
102.33 |
13098 |
测试结论分析:
l 客户端的系统使用情况
[CPU使用情况]
随机写

[内存使用情况]
随机写

测试结论分析:五台客户端服务器的cpu消耗最大达到50%;内存最大达到7.5G左右;网络最大达60Kbps左右。
l 服务端的系统使用情况
[固态盘使用情况]
2%-74%
[SATA盘的使用情况]
28.61%-31.48%
[CPU变化情况]
网关服务器会比其他服务器的cpu使用率更高

[内存利用率]

测试结果分析:ssd在整个磁盘中只是做缓存,数据不是永久在上面,最终的数据都会写到SATA盘中。服务端的CPU消耗对于网关服务器来说最高达到80%左右,其他服务器最大达到70%左右。服务端的内存基本没消耗。
[ceph集群移除节点状态测试]
--测试方法:
1、从ceph集群中创建一个1T的块设备,将该设备挂载到虚拟机,移除集群中的一个节点(移除04节点)
A、利用fio工具测试挂载设备的读写速度
B、利用zabbix监控得到虚拟机的系统使用情况(CPU、内存等)
C、 利用ceph服务器的ceph命令得到SSD盘和SATA盘的使用情况,利用ceph集群监控页面查看集群的CPU、内存等使用情况
l fio测试
[块设备随机写操作]
|
bw(MB/s) |
Iops(每秒的读写速度) |
|
|
randwrite |
38.35 |
4909 |
[块设备随机读操作]
|
bw(MB/s) |
Iops(每秒的读写速度) |
|
|
randread |
91 |
11648 |
测试结论分析:一个节点移除,随机写性能会下降50%左右,随机读性能下降16左右。
l 客户端的系统使用情况
[CPU使用情况]

[内存使用情况]

测试结论分析:客户端CPU最高达到17%;内存会在瞬间上升,之后恢复到之前的低消耗;客户端的网络几乎没什么消耗。
l 服务端的系统使用情况
[固态盘使用情况]
52%
[SATA盘的使用情况]
32.01%
[CPU变化情况]

[内存利用率]

测试结论分析:服务端的CPU利用率最高到达52.96%,内存利用率几乎没什么消耗。
ceph存储集群测试方案的更多相关文章
- Ceph 存储集群
Ceph 存储集群 Ceph 作为软件定义存储的代表之一,最近几年其发展势头很猛,也出现了不少公司在测试和生产系统中使用 Ceph 的案例,尽管与此同时许多人对它的抱怨也一直存在.本文试着整理作者了解 ...
- Ceph 存储集群5-数据归置
一.数据归置概览 Ceph 通过 RADOS 集群动态地存储.复制和重新均衡数据对象.很多不同用户因不同目的把对象存储在不同的存储池里,而它们都坐落于无数的 OSD 之上,所以 Ceph 的运营需要些 ...
- Ceph 存储集群1-配置:硬盘和文件系统、配置 Ceph、网络选项、认证选项和监控器选项
所有 Ceph 部署都始于 Ceph 存储集群.基于 RADOS 的 Ceph 对象存储集群包括两类守护进程: 1.对象存储守护进程( OSD )把存储节点上的数据存储为对象: 2.Ceph 监视器( ...
- 002.RHCS-配置Ceph存储集群
一 前期准备 [kiosk@foundation0 ~]$ ssh ceph@serverc #登录Ceph集群节点 [ceph@serverc ~]$ ceph health #确保集群状态正常 H ...
- Ceph 存储集群 - 搭建存储集群
目录 一.准备机器 二.ceph节点安装 三.搭建集群 四.扩展集群(扩容) 一.准备机器 本文描述如何在 CentOS 7 下搭建 Ceph 存储集群(STORAGE CLUSTER). 一共4 ...
- Ceph 存储集群搭建
前言 Ceph 分布式存储系统,在企业中应用面较广 初步了解并学会使用很有必要 一.简介 Ceph 是一个开源的分布式存储系统,包括对象存储.块设备.文件系统.它具有高可靠性.安装方便.管理简便.能够 ...
- Ceph 存储集群4-高级运维:
一.高级运维 高级集群操作主要包括用 ceph 服务管理脚本启动.停止.重启集群,和集群健康状态检查.监控和操作集群. 操纵集群 运行 Ceph 每次用命令启动.重启.停止Ceph 守护进程(或整个集 ...
- ceph存储集群的应用
1.ceph存储集群的访问接口 1.1ceph块设备接口(RBD) ceph块设备,也称为RADOS块设备(简称RBD),是一种基于RADOS存储系统支持超配(thin-provisioned). ...
- Ceph 存储集群第一部分:配置和部署
内容来源于官方,经过个人实践操作整理,官方地址:http://docs.ceph.org.cn/rados/ 所有 Ceph 部署都始于 Ceph 存储集群. 基于 RADOS 的 Ceph 对象存储 ...
随机推荐
- P2472 [SCOI2007]蜥蜴(网络流)
P2472 [SCOI2007]蜥蜴 把每个点拆成2个点,两点之间连边的边权为石柱高度 新建虚拟源点$S$和汇点$T$ $S$向所有有蜥蜴的点连边,边权1 其他边都连$inf$ 剩下就是裸的$dini ...
- Python pyYAML模块
pyYaml模块 一.pyYAML python也可以很容的处理ymal文档格式,只不过取药安装一个模块. 语法例子 注:主要用来做配置文件. 注:需要下载标准库.
- Python RabbitMQ RPC实现
远程调用方法:R(remote) P(procedure) C(call) 为了说明如何使用RPC服务,我们将创建一个简单的客户端类. 它将公开一个名为call的方法,它发送一个RPC请求和块,直 ...
- java基础hashmap
Iterator中hasNext(), next() 在Iterator类中,我们经常用到两个方法: hasNext(), next(),具体含义: next(), 是返回当前元素, 并指向下一个元 ...
- 【SQL Server 问题记录】A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible.
本文涉及的相关问题,如果你的问题或需求有与下面所述相似之处,请阅读本文 A network-related or instance-specific error occurred while esta ...
- Hive和HBase区别
1. 两者分别是什么? Apache Hive是一个构建在Hadoop基础设施之上的数据仓库.通过Hive可以使用HQL语言查询存放在HDFS上的数据.HQL是一种类SQL语言,这种语言最终被转化为M ...
- vue-路由懒加载
将import ... from..改为 const Foo = resolve => require(['./Foo.vue'], resolve)
- 二叉树分派硬币 Distribute Coins in Binary Tree
2019-03-27 15:53:38 问题描述: 问题求解: 很有意思的题目.充分体现了二叉树的自底向上的递归思路. 自底向上进行运算,对于最底层的二叉子树,我们需要计算每个节点向其parent传送 ...
- three.js 第一篇:准备工作
demo展示:https://www.hanjiafushi.com/three/index.html 1:复习向量知识 2:学习矩阵知识 3:推荐先看webGL入门指南,对一些基础性的概念有所了解 ...
- linux服务器查看项目日志命令
1.tailf mywork.log | grep --line-buffered findUserList 实时跟踪日志,这里是只要findUserList 这个方法被运行,就会将它的日志 ...