对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集群性能测试结果的更多相关文章

  1. ceph存储集群性能测试工具步骤(初稿)

    一.源码安装fio工具: #yum install libaio-devel make #wget http://brick.kernel.dk/snaps/fio-2.2.10.tar.gz #ta ...

  2. 最新ceph集群常用命令梳理

    结合网络.官网.手动查询等多方渠道,整理ceph维护管理常用命令,并且梳理常规命令在使用过程中的逻辑顺序.另外整理期间发现ceph 集群的命令体系有点乱,详细情况各自体验. 一:ceph集群启动.重启 ...

  3. Ubuntu 14.04 部署 CEPH集群

    注:下文的所有操作都在admin节点进行 1.准备三台虚拟机,其中一台作为admin节点,另外两台作为osd节点,并相应地用hostname命令将主机名修改为admin,osd0,osd1,最后修改/ ...

  4. ceph集群安装

    所有 Ceph 部署都始于 Ceph 存储集群.一个 Ceph 集群可以包含数千个存储节点,最简系统至少需要一个监视器和两个 OSD 才能做到数据复制.Ceph 文件系统. Ceph 对象存储.和 C ...

  5. 使用虚拟机CentOS7部署CEPH集群

    第1章   CEPH部署 1.1  简单介绍 Ceph的部署模式下主要包含以下几个类型的节点 Ø CephOSDs: A Ceph OSD 进程主要用来存储数据,处理数据的replication,恢复 ...

  6. docker创建ceph集群

    背景 Ceph官方现在提供两类镜像来创建集群,一种是常规的,每一种Ceph组件是单独的一个镜像,如ceph/daemon.ceph/radosgw.ceph/mon.ceph/osd等:另外一种是最新 ...

  7. ceph集群搭建

    CEPH 1.组成部分 1.1 monitor admin节点安装ceph-deploy工具 admin节点安装ceph-deploy 添加源信息 rm -f /etc/yum.repos.d/* w ...

  8. Ceph集群搭建及Kubernetes上实现动态存储(StorageClass)

    集群准备 ceph集群配置说明   节点名称 IP地址 配置 作用 ceph-moni-0 10.10.3.150 centos7.5 4C,16G,200Disk 管理节点,监视器 monitor ...

  9. CEPH集群操作入门--配置

      参考文档:CEPH官网集群操作文档   概述 Ceph存储集群是所有Ceph部署的基础. 基于RADOS,Ceph存储集群由两种类型的守护进程组成:Ceph OSD守护进程(OSD)将数据作为对象 ...

随机推荐

  1. Linux基础命令---lpr打印文件

    lpr lpr指令用来打印文件,如果没有指定文件名,那么从标准输入读取内容.CUPS提供了许多设置默认目标的方法.首先查询“LPDEST”和“PRINTER”环境变量.如果没有设置,则使用lpopti ...

  2. 盒子布局、标签特性display、浮动、定位position

    盒子模型布局: 盒子模型:每个标签都是一个盒子 盒子在页面显示在大小是:自身宽度+边框+边距(内边框+外边距) 如果一个盒子设置了边框,则边框需要被加两遍.若果设置了边距则内外边距根据设置情况要被加两 ...

  3. ListTile

    const ListTile({ Key key, this.leading, // item 前置图标 this.title, // item 标题 this.subtitle, // item 副 ...

  4. python学习笔记:装饰器2

    python的装饰器本质是函数,为了不改变装饰目标函数内部代码而增加额外功能而存在 一.一般装饰函数实例: import datetime def func_name(func):#定义一个装饰函数, ...

  5. Ubuntu 18.04拨号上网及校园网开启IPV6

    Ubuntu 18.04下有两种方法实现拨号上网,第一种是通过图形界面添加,需要开启自动连接,并且要关闭以太网的自动连接.(不推荐这种连接方式)这里介绍第二种,通过pppoeconf命令进行拨号. 关 ...

  6. linux基础之正则表达式

    一.基本正则表达式 字符匹配 . : 匹配任意单个字符 [] : 匹配中括号中的任意单个字符 [^] : 匹配指定范围外的任意单个字符 空白字符:[:space:].数字:[:digit:].小写字母 ...

  7. python学习-----协程

    一.协程的引入 对于单线程下,我们不可避免程序中出现io操作,但如果我们能在自己的程序中(即用户程序级别,而非操作系统级别)控制单线程下的多个任务能在一个任务遇到io阻塞时就切换到另外一个任务去计算, ...

  8. GitHub的Windows客户端的使用教程

    GitHub for Windows客户端的使用教程 什么是Github >说到什么是GitHub,我们先看wikipedia的描述“GitHub是一个利用Git进行版本控制.专门用于存放软件代 ...

  9. Angular4学习笔记(四)- 依赖注入

    概念 依赖注入是一种设计思想,并不是某一类语言所特有的,因此可以参考开涛大神关于学习Java语言的Spring框架时对其的解释: DI-Dependency Injection,即"依赖注入 ...

  10. js在线富文本插件的考虑

    使用之前需要考虑的点: 1需要插件,是否需要很多的插件,还是说简单的那些功能就行了. 2界面考虑,看你喜欢那个界面了. 3图片是否需要上传图片服务器. 4文档如果为英文是否会影响开发. 5支持浏览器类 ...