Ubuntu下MinIO性能测试方法
MinIO自带的mc(MinIO Client)工具是最简单的性能测试方式,适合快速验证上传/下载速度。
curl -LO https://dl.min.io/client/mc/release/linux-amd64/mc && chmod +x mc && sudo mv mc /usr/local/bin/http://minio-server:9000为你的MinIO服务器地址,ACCESS_KEY/SECRET_KEY为实际凭证(默认minioadmin:minioadmin):mc alias set myminio http://minio-server:9000 ACCESS_KEY SECRET_KEYmc cp /path/to/large/file myminio/mybucket/mc cp myminio/mybucket/large/file /path/to/save/mc cp进程)模拟高负载场景。fio(Flexible I/O Tester)是专业级I/O测试工具,支持定制化参数(如随机/顺序读写、块大小、并发数),适合深入分析MinIO底层存储性能。
sudo apt-get install fiofio --name=seq_write --filename=/tmp/fio-seq-write --size=1G --bs=1M --rw=write --numjobs=4 --time_based --runtime=60 --group_reportingfio --name=rand_read --filename=/tmp/fio-rand-read --size=1G --bs=4k --rw=randread --numjobs=8 --time_based --runtime=60 --group_reportingfio --name=mixed_rw --filename=/tmp/fio-mixed --size=1G --bs=8k --rw=randrw --rwmixread=70 --rwmixwrite=30 --numjobs=4 --time_based --runtime=60 --group_reporting--numjobs(并发数,根据CPU核心数调整)、--runtime(测试时长,避免短时间测试误差)、--bs(块大小,匹配业务数据块大小)。warp是MinIO官方推出的网络性能测试工具,专门针对对象存储场景,可模拟多客户端并发访问,测试MinIO集群的网络吞吐量和延迟。
wget https://github.com/minio/warp/releases/download/v1.0.0/warp-linux-amd64.tar.gz && tar -xzf warp-linux-amd64.tar.gz && cd warp && sudo cp warp /usr/bin/minioadmin:minioadmin):export WARP_ACCESS_KEY=minioadmin && export WARP_SECRET_KEY=minioadmin--host为MinIO服务器地址,--obj.size为对象大小(如10MB),--concurrent为并发客户端数(如20):warp client --warp-client localhost:7761 --host minio-server:9000 --duration 10s --obj.size 10M --concurrent 20 --autoterm --access-key minioadmin --secret-key minioadminThroughput(吞吐量,单位MB/s)、Latency(延迟,单位ms)、Errors(错误率,需为0)。dd是Linux原生工具,适合快速测试磁盘的原始读写性能(不涉及MinIO服务层),帮助排除磁盘本身瓶颈。
conv=fdatasync确保数据落盘:dd if=/dev/zero of=/tmp/dd-test bs=1M count=1024 conv=fdatasyncof=/dev/null丢弃数据:dd if=/tmp/dd-test of=/dev/null bs=1M count=1024rm -f /tmp/dd-testecho 3 > /proc/sys/vm/drop_caches),避免缓存影响结果。top(CPU)、free -h(内存)、iostat -x 1(磁盘I/O)监控系统资源,定位性能瓶颈(如CPU满载需优化线程数,磁盘I/O高需升级存储设备)。