专栏首页黑客下午茶使用 FIO 对 Kubernetes 持久卷进行 Benchmark:读/写(IOPS)、带宽(MB/s)和延迟

使用 FIO 对 Kubernetes 持久卷进行 Benchmark:读/写(IOPS)、带宽(MB/s)和延迟

工具

Dbench

  • https://github.com/leeliu/dbench

用法

编辑 dbench.yaml 文件中的 storageClassName 以匹配你自己的 Storage Class

部署

部署后,Dbench Job 将:

  • 使用 storageClassName: ssd(默认)提供 1000Gi(默认)的持久卷。
  • 目前有 9 个测试,每个测试 15 秒 - 总运行时间约为 2.5 分钟。

使用以下方法跟踪基准测试进度:

空输出表示 job 尚未创建,或 storageClassName 无效,请参阅下面的故障排除。

在所有测试结束时,您将看到类似于以下内容的摘要:

Dbench 摘要结果

  • Random Read/Write IOPS(随机读写)
  • Average Latency (usec) Read/Write(读/写平均延迟)
  • Mixed Random Read/Write IOPS(混合随机读/写)

测试完成后,进行清理:

注意事项/故障排除

  • 如果持久化卷声明(Persistent Volume Claim)卡在 Pending 上,很可能您没有指定有效的存储类(Storage Class)。使用 kubectl get storageclasses 进行双重检查。还要检查用于配置的卷大小是否为 1000Gi(默认值)。
  • 绑定持久性卷可能需要一些时间,Kubernetes Dashboard UIDbench Job 显示为红色,直到卷完成配置。
  • 测试多种磁盘大小很有用,因为大多数云提供商按每 GB 配置的 IOPS 定价。因此,4000Gi 卷的性能可能将优于 1000Gi 卷。重新测试,只需编辑 yamlkubectl delete -f dbench.yaml 并在 deprovision/delete 完成后再次运行 kubectl apply -f dbench.yaml
  • 所有 fio 测试的项都在 docker-entrypoint.sh 中。
    • Testing Read IOPS...
    • Testing Write IOPS...
    • Testing Read Bandwidth...
    • Testing Write Bandwidth...
    • Testing Read Latency...
    • Testing Write Latency...
    • Testing Read Sequential Speed...
    • Testing Write Sequential Speed...
    • Testing Read/Write Mixed...

腾讯云 K8S 集群生产实战

  1. kubectl get storageclass
  1. vi dbench.yaml
  1. kubectl apply -f dbench.yaml
  2. kubectl logs -f job/dbench
  1. kubectl delete -f dbench.yaml

本文分享自微信公众号 - 黑客下午茶(hi-weishao),作者:为少

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2021-09-25

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 从传统运维到云运维演进历程之软件定义存储(四)

    前面系列已经讲完了硬件选型、部署、调优,在上线之前呢需要进行性能存储测试,本章主要讲述下测试Ceph的几种常用工具,以及测试方法。

    DevinGeng
  • ceph分布式存储-块存储BlueStore性能测试

    mon组件部署: ceph-xxx-osd00, ceph-xxx-osd01, ceph-xxx-osd02 osd组件部署: ceph-xxx-osd00...

    Lucien168
  • SSD硬件测试

    这两天有一个临时性的小任务,使用fio工具对SSD磁盘进行硬件测试,fio这个工具之前没有用过,这两天简单研究了一下这个工具,把一些常用的参数在这里说明...

    AsiaYe
  • 干货 | 如何评估Kubernetes持久化存储方案

    从用户角度看,存储就是一块盘或者一个目录,用户不关心盘或者目录如何实现,用户要求非常“简单”,就是稳定,性能好。为了能够提供稳定可靠的存储产品,各个厂家推出了各...

    焱融科技
  • kubernetes集群部署运营实践总结

    最近为项目奔波,都没有多少时间写博文了。。。不过这大半个月在客户现场处理了大量kubernetes集群部署运营的相关工作,这里总结一下。

    jeremyxu
  • 你所不知道到的NVMe

    NVMe SSD具有高性能、低时延等优点,是目前存储行业的研究热点之一,但在光鲜的性能下也同样存在一些没有广为人知的问题,而这些问题其实对于一个生产系统而言至关...

    Linux阅码场
  • linux 磁盘IO测试工具:fio (同时简要介绍dd工具测试)

    FIO是测试IOPS的非常好的工具,用来对硬件进行压力测试和验证。磁盘IO是检查磁盘性能的重要指标,可以按照负载情况分成照顺序读写,随机读写两大类。

    xuyaowen
  • 评测云硬盘读写性能

    通过讲解如何优雅扩容云硬盘,我们了解了云盘连接到服务器上的具体操作过程。那么,如何进一步了解已挂载硬盘的实际性能呢?你或许会疑惑,测试硬盘性能,为什么不能用Li...

    溪歪歪
  • 浅淡linux的IO和磁盘IO的检测

    1.缓冲 I/O,是指利用标准库缓存来加速文件的访问,而标准库内部再通过系统调度访问文件。

    没有故事的陈师傅
  • Kubernetes 几种存储方式性能对比 (转载)

    https://blog.fleeto.us/post/kubernetes-storage-performance-comparison/

    Portworx
  • 腾讯云 CBS 性能测试用例参考

    2、fio测试建议在空闲的、未保存重要数据的硬盘上进行,并在测试完后重新制作文件系统。请不要在业务数据硬盘上测试,避免底层文件系统元数据损坏导致数据损坏。

    腾讯云计算产品团队
  • (译)Kubernetes 存储性能对比

    如果你正在运行 Kubernetes,你可能正在使用,或者准备使用动态供给的块存储卷,而首当其冲的问题就是为集群选择合适的存储技术。这个事情并不能用一个简单的测...

    崔秀龙
  • 磁盘

    磁盘是计算机主要的存储介质,可以存储大量的二进制数据,并且断电后也能保持数据不丢失。早期计算机使用的磁盘是软磁盘(Floppy Disk,简称软盘),如今常用的...

    张琳兮
  • 如何在 Linux 中使用 Fio 来测评硬盘性能

    Fio(Flexible I/O Tester) 是一款由 Jens Axboe 开发的用于测评和压力/硬件验证的自由开源的软件。

    用户8639654
  • 用LUKS为云盘敏感数据上锁

    通过之前的教程,我们了解如何在Linux和Windows云服务器下挂载和扩容云硬盘,解决了业务存储的性能扩展问题。那么,如何妥善地解决块存储的安全问题呢?这篇我...

    溪歪歪
  • Kubernetes 大规模集群最佳实践

    Kubernetes 自 v1.6 以来,官方就宣称单集群最大支持 5000 个节点。不过这只是理论上,在具体实践中从 0 到 5000,还是有很长的路要走,需...

    timxbxu
  • Linux 中使用 Fio 测评硬盘性能

    Fio(Flexible I/O Tester) 是一款由 Jens Axboe 开发的用于测评和压力/硬件验证的自由开源的软件。它支持 19 种不同类型的 I...

    Debian中国
  • 云服务存在局限性,你如何找到最合适的解决方案

    云计算不仅仅代表着近乎无限的资源,我们也需要了解其中可能存在的种种性能问题。 以Amazon AWS与微软Azure为代表的公有云服务属于基于控制台的编排方案,...

    静一
  • ceph分布式存储-集群容量评估

    cpu型号: Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHz cpu核数: 40 硬盘: hdd

    Lucien168

扫码关注云+社区

领取腾讯云代金券