zoukankan      html  css  js  c++  java
  • Ceph 知识摘录(性能测试_2)

    清理缓存命令
    echo 3 > /proc/sys/vm/drop_caches #清除缓存页,目录项和inodes

    磁盘性能测试(dd)

    测试磁盘写吞吐量
    dd命令对磁盘进行标准写测试。记住添加oflag参数以绕过磁盘页面缓存。
    dd if=/dev/zero of=/var/lib/ceph/osd/wc01 bs=1G count=1 oflag=direct

    测试磁盘读吞吐量
    dd命令对磁盘进行标准读测试。记住添加iflag参数以绕过磁盘页面缓存。
    dd if=/var/lib/ceph/osd/wc01 of=/dev/null bs=2G count=1 iflag=direct

    硬盘驱动器

           存储驱动器受限于寻道时间、访问时间、读写时间、还有总吞吐量,这些物理局限性影响着Ceph整体系统性能,尤其在系统恢复期间。Ceph 允许你在每块硬盘驱动器上运行多个 OSD ,但这会导致资源竞争并降低总体吞吐量; Ceph 也允许把日志和对象数据存储在相同驱动器上,但这会增加记录写日志并回应客户端的延时,因为 Ceph 必须先写入日志才会回应确认了写动作。btrfs文件系统能同时写入日志数据和对象数据,xfs和ext4 却不能。但是不稳定不建议线上环境使用。

    固态硬盘
         一种提升性能的方法是使用固态硬盘(SSD)来降低随机访问时间和读延时,同时增加吞吐量。SSD和硬盘相比每GB成本通常要高10倍以上,但访问时间至少比硬盘快100倍。评估SSD时,顺序读写性能很重要。

           可以在同一主机上运行多个OSD ,但要确保OSD硬盘总吞吐量 =< 客户端提供读写服务所需的网络带宽;还要考虑集群在每台主机上所存储的数据占总体的百分比,如果一台主机所占百分比太大而它挂了,就可能导致诸如超过full ratio的问题,此问题会使Ceph中止运作以防数据丢失。

    性能:
    1、数据双倍写入
    Ceph本地存储接口(FileStore)为了支持事务,引入了日志(Journal)机制。所有的写入操作都需要先写入日志(XFS模式下),然后再写入本地文件系统。简单来说就是一份数据需要写两遍,日志+本地文件系统。这就造成了在大规模连续IO的情况下,实际上磁盘输出的吞吐量只有其物理性能的一半。
    2、IO路径太长
    一个IO需要经过多个模块才能完成,每个模块之间都涉及到队列和线程切换。
    3、对高性能硬件支持有待改进
    Ceph最开始是为HDD设计的,没有充分考虑全SSD,导致这些硬件的物理性能在Ceph中无法充分发挥出来,特别是延迟和IOPS。

  • 相关阅读:
    给大家来一波免费电影福利~~~
    SpringBoot第二十四篇:应用监控之Admin
    影响世界的100个经典管理定律
    SpringBoot第二十三篇:安全性之Spring Security
    20年研发管理经验谈(十六)(终结)
    Java获取指定时间段的年份(开始、结束时间)、月份(开始、结束时间)、天数(开始、结束时间)
    js创建post请求
    Java截取视频首帧并旋转正向
    jquery 禁用/启用滚动条
    Jquery表单序列化和json操作
  • 原文地址:https://www.cnblogs.com/weichao01/p/9540652.html
Copyright © 2011-2022 走看看