ceph集群性能测试结果
对ceph存储集群(8台万兆服务器)从以下几个方面进行测试的结果
1、读写稳定性
无故障下的ceph集群性能完全满足业务对磁盘性能的需求。
测试数据结果如下表1-1,1-2
2、业务稳定性
ceph集群出现节点脱离的故障状态时,设置恢复QoS可以有效的保证业务正常运行无中断。
测试数据结果如下表2-1
3、节点故障恢复时间
节点故障的恢复时间依据故障时间段内的新增数据的大小决定,若移除或添加一个11T的节点,并且不做恢复速度限制,那么数据恢复时间大约在6到8小时。
测试数据结果如下表3-1,3-2,4-1
4、对系统资源的使用情况
ceph底层ssd盘起缓存的作用,使用率是随热数据的上升与下沉而变化(测试阶段最高达到70%);SATA盘随着数据的不断写入使用率一直上升。
5台业务服务器在进行8k块大小连续2小时并行读写操作时,集群的cpu使用率会升高到50%-80%,内存使用率46.61%基本无波动。
5台业务服务器在进行8k块大小连续2小时并行读写操作时,业务服务器资源内存消耗瞬间增长到7G(总内存8G)随后下降,CPU使用率升高到15%-25%。
测试图标如下5-1,5-2,5-3,5-4
Ceph分布式存储的物理和业务空间使用如下:
裸物理空间349.3TB 已使用的裸物理空间94.8TB
三个副本的总空间116.44T 三个副本已使用的空间31.58TB
ceph的数据存储目前基本都在15%以内,存储超过70%时,业务的性能会少量低下。
1、稳定性(ceph集群无故障)
一个业务的性能表1-1:
|
bw(MB/s) |
iops(每秒的读写次数) |
|
|
randread(磁盘分区未对齐) |
109 |
14032 |
|
randwrite(磁盘分区未对齐) |
75 |
9335 |
|
randwrite(磁盘分区对齐) |
79.71 |
10202 |
5个业务的性能表1-2:
|
bw(MB/s)x5 |
iops(每秒的读写次数)x5 |
|
|
randread(磁盘分区未对齐) |
108 |
13832 |
|
randwrite(磁盘分区未对齐) |
41 |
5190 |
|
randwrite(磁盘分区对齐) |
50.45 |
6457 |
2、业务稳定性(随机写数据为例,数据恢复速度限制,一个业务的性能测试)表2-1
|
bw(MB/s) |
iops(每秒的读写次数) |
相比正常测试值下降百分比 |
|
|
一个节点脱离集群 |
68 |
8442 |
10%-20% |
|
两个节点脱离集群 |
67 |
8281 |
10%-20% |
3、节点故障恢复时间(无业务运行状态下,一个业务性能测试)
表3-1
|
读写速度范围(MB/s) |
数据量(T) |
恢复时间(hour) |
|
|
移除一个节点 |
1100-2200 |
11 |
6 |
|
移除两个节点 |
1100-2200 |
22 |
12 |
表3-2
|
添加移除的一个节点 |
300-500 |
11 |
8 |
|
添加移除的两个节点 |
300-500 |
22 |
13 |
4、关闭数据恢复限制的状态下,5个业务的性能
表4-1
|
bw(MB/s)x5 |
iops(每秒的读写次数)x5 |
|
|
randread |
15.4 |
1969 |
|
randwrite |
7.68 |
983 |
5、系统资源使用情况
Ceph集群内存变化图5-1:

Ceph集群CPU变化图5-2:

业务服务器CPU变化图5-3:

业务服务器内存变化图5-4:

6、数据库备份运行状态下,磁盘分区对业务性能的影响
一个业务的性能2-1:
|
bw(MB/s) |
iops(每秒的读写次数) |
|
|
randwrite(磁盘分区未对齐) |
59.12 |
7567 |
|
randwrite(磁盘分区对齐) |
77.06 |
9863 |
5个业务的性能2-2:
|
bw(MB/s)x5 |
iops(每秒的读写次数)x5 |
|
|
randwrite(磁盘分区未对齐) |
41.37 |
5295 |
|
randwrite(磁盘分区对齐) |
50 |
6400 |
ceph集群性能测试结果的更多相关文章
- ceph存储集群性能测试工具步骤(初稿)
一.源码安装fio工具: #yum install libaio-devel make #wget http://brick.kernel.dk/snaps/fio-2.2.10.tar.gz #ta ...
- 最新ceph集群常用命令梳理
结合网络.官网.手动查询等多方渠道,整理ceph维护管理常用命令,并且梳理常规命令在使用过程中的逻辑顺序.另外整理期间发现ceph 集群的命令体系有点乱,详细情况各自体验. 一:ceph集群启动.重启 ...
- Ubuntu 14.04 部署 CEPH集群
注:下文的所有操作都在admin节点进行 1.准备三台虚拟机,其中一台作为admin节点,另外两台作为osd节点,并相应地用hostname命令将主机名修改为admin,osd0,osd1,最后修改/ ...
- ceph集群安装
所有 Ceph 部署都始于 Ceph 存储集群.一个 Ceph 集群可以包含数千个存储节点,最简系统至少需要一个监视器和两个 OSD 才能做到数据复制.Ceph 文件系统. Ceph 对象存储.和 C ...
- 使用虚拟机CentOS7部署CEPH集群
第1章 CEPH部署 1.1 简单介绍 Ceph的部署模式下主要包含以下几个类型的节点 Ø CephOSDs: A Ceph OSD 进程主要用来存储数据,处理数据的replication,恢复 ...
- docker创建ceph集群
背景 Ceph官方现在提供两类镜像来创建集群,一种是常规的,每一种Ceph组件是单独的一个镜像,如ceph/daemon.ceph/radosgw.ceph/mon.ceph/osd等:另外一种是最新 ...
- ceph集群搭建
CEPH 1.组成部分 1.1 monitor admin节点安装ceph-deploy工具 admin节点安装ceph-deploy 添加源信息 rm -f /etc/yum.repos.d/* w ...
- Ceph集群搭建及Kubernetes上实现动态存储(StorageClass)
集群准备 ceph集群配置说明 节点名称 IP地址 配置 作用 ceph-moni-0 10.10.3.150 centos7.5 4C,16G,200Disk 管理节点,监视器 monitor ...
- CEPH集群操作入门--配置
参考文档:CEPH官网集群操作文档 概述 Ceph存储集群是所有Ceph部署的基础. 基于RADOS,Ceph存储集群由两种类型的守护进程组成:Ceph OSD守护进程(OSD)将数据作为对象 ...
随机推荐
- Kubernetes资源管理
目录贴:Kubernetes学习系列 1.资源模型 虛拟化技术是云计算平台的基础,其目标是对计算资源进行整合或划分,这是云计算管理平台中的关键技术.虚拟化技术为云计算管理乎台的资源管理提供了资源调配上 ...
- pypi上传问题
pypi上传过程中报错403 windows 解决办法: 1.建一个新的记事本编辑内容 [distutils]index-servers = pypi [pypi]repository:https:/ ...
- Hdu2602 Bone Collector (01背包)
Problem Description Many years ago , in Teddy’s hometown there was a man who was called “Bone Collec ...
- Python数据分析Numpy库方法简介(三)
补充: np.ceil()向上取整 3.1向上取整是4 np.floor()向下取整 数组名.resize((m,n)) 重置行列 基础操作 np.random.randn()符合正态分布(钟行/高斯 ...
- Sanic
基础 厉害了我的 Sanic hello word, Sanic
- Python events
Events不同线程之间同步对象 参数说明: # 实例化event对象 event = threading.Event() # 等待检测标志位被设定,标志位设置后就不阻塞了 # 客户机线程可以等待设置 ...
- ukylin 使用deepin-wine
之前一直是使用deepin的,但是自打前阵子更新内核之后,我的显卡就总出问题,这里也顺便f**k下NVIDIA. 在装了十几二十遍系统之后我终于还是妥协了,deepin最近又更新了,不知道解决我的显卡 ...
- while(scanf("%d %d",&a,&b)!=EOF)
scanf("%d %d",&a,&b)返回输入的数据和格式字符串中匹配次数.当dos或windows中输入ctrl+z(模拟文件结束符EOF)时,scanf返回E ...
- freeswqitch odbc
1.安装驱动 yum install unixODBC unixODBC-devel libtool-ltdl libtool-ltdl-devel -y yum install mysql-conn ...
- TabBar + TabBarView导航风格
import 'package:flutter/material.dart'; import 'News.dart'; import 'Video.dart'; import 'Chat.dart'; ...