Minio压测

发布于:2024-05-18 ⋅ 阅读:(176) ⋅ 点赞:(0)

Minio-性能测试案例

一、概述
1.官方介绍

官网提供的基准线测试地址: New MinIO NVMe Benchmark: 2.6Tbps on GET and 1.6Tbps on Write

官网的测试基准的硬件配置是真的高,能达到的性能也是真的强。这里主要是和大家展示其上限。我的实际环境只有HDD机械硬盘,并且使用的华为服务器,磁盘必须做RAID矩阵,对Minio也有很多影响。

二、测试环境
1.1 硬件环境
1. 硬件选择

官网的硬件推荐:Selecting the Best Hardware for Your MinIO Deployment

该链接给出了推荐硬件选择,这里硬件除了越大越好原则以及固态优先原则外,需要注意磁盘阵列不用RAID矩阵,而是JBOD【对写入影响很大!】。影响因素如下表:

影响因素 需求 影响程度 备注
磁盘 SSD IO更快
磁盘文件格式 XFS 强烈建议配置 XFS 格式的驱动器用于存储。 MinIO 使用 XFS 作为内部测试和验证套件的一部分,为所有规模的性能和行为提供额外的性能。
集群磁盘大小 一致 MinIO 将每个磁盘使用的大小限制为部署中的最小磁盘
集群磁盘文件格式 一致 因为某些磁盘具有不同或更差的读/写特性
磁盘矩阵 JBOD RAID允许某个磁盘损坏,但是性能差
内存 32G

我的测试硬件为:

Node1 Node2 Node3
Minio磁盘文件格式 XFS XFS XFS
磁盘矩阵 RAID5 RAID5 RAID5
磁盘大小 10*8T HDD 10*8T HDD 10*8T HDD
内存 125G 125G 125G
网络 10GB 10GB 10GB
1.2 软件环境

Docker-compsoe部署Minio:我这是部署案例,我是测试是3台服务器集群。

version: '3'
services:
  minio:
    image: minio/minio
    hostname: 'minio'
    network_mode: host
    environment:
      TZ: Asia/Shanghai
      MINIO_ROOT_USER: admin
      MINIO_ROOT_PASSWORD: admin123
    volumes:
      - /etc/hosts:/etc/hosts
      - ./data:/data
    command: server --console-address ':9001' http://ip/data
    privileged: true
    restart: always

官网部署档:https://min.io/docs/minio/container/operations/installation.html

二、测试工具
考虑使用WARP【官方推荐的客户端测试工具,可以用非服务节点作为客户端发送压测数据】 和 Speedtest【就是其内部的MC测试方式】 对 MinIO 进行基准测试。基于网络客户端和服务器实例两种场景。

Minio分布式,RAID5测试,压测工具WARP。

1.S3_HTTP_PUT上传数据压测:

32并发,64MB文件对象,PUT S3接口
在这里插入图片描述
                   |

| 网络IO |在这里插入图片描述

| 磁盘IO |在这里插入图片描述
2. MC测试

节点 写入速率 备注 测试工具
231/232/233 104-200.45 MiB/s 3个minio节点(其他服务均无负荷) mc(负载均衡)
三、测试结果

建议使用RAID0代替RAID5,提升IO性能,舍弃数据冗余。单机情况下需要考虑数据备份,集群情况下基于纠错码恢复数据,多节点磁盘损坏可能导致数据丢失。硬件的选择对Minio有很大影响,之后我测试了RAID0,单节点磁盘写入能达到1GB/S的速率,但是不容忍磁盘损坏。


网站公告

今日签到

点亮在社区的每一天
去签到