在 Linux 上调优 MinIO,通常从 系统层、MinIO 配置、硬件、运维策略 四个方面入手。下面给你一份实战级优化指南,覆盖单机与分布式场景。
强烈推荐:XFS(首选)或 ext4
mkfs.xfs /dev/sdb
mount -o noatime,nodiratime /dev/sdb /data
推荐挂载参数
noatime,nodiratime,nobarrier
⚠️
nobarrier仅在有 UPS / RAID 缓存保护时开启
swapoff -a
永久关闭:
vim /etc/fstab
# 注释 swap 行
vim /etc/sysctl.conf
vm.swappiness = 0
vm.dirty_ratio = 10
vm.dirty_background_ratio = 5
net.core.somaxconn = 65535
net.ipv4.tcp_max_syn_backlog = 65535
net.core.netdev_max_backlog = 65535
生效:
sysctl -p
vim /etc/security/limits.conf
* soft nofile 655360
* hard nofile 655360
MinIO 默认已自动适配 CPU,但可手动限制:
export MINIO_IO_MAX_PARALLELISM=32
一般建议:
export MINIO_CACHE_DRIVES="/data"
export MINIO_CACHE_EXPIRY=90
控制缓存大小:
export MINIO_CACHE_QUOTA=80
export MINIO_COMPRESSION=on
| 项目 | 建议 |
|---|---|
| 磁盘 | NVMe > SSD > SAS > SATA |
| RAID | 不要 RAID 5/6 |
| 多盘 | MinIO 原生纠删码 |
| 网络 | ≥ 10Gbps |
minio server /data{1..4}
推荐:
ulimit -n 655360
upstream minio {
server 192.168.1.10:9000;
server 192.168.1.11:9000;
keepalive 32;
}
minio server /data{1..8}
✅ 比副本模式快 & 省空间
export MINIO_BROWSER=off
export MINIO_LOG_LEVEL=error
minio server --console-address ":9001" /data
访问:
http://IP:9001
mc admin speedtest myminio
或:
dd if=/dev/zero of=/data/test bs=1G count=1 oflag=direct
| 现象 | 原因 |
|---|---|
| 写入慢 | 磁盘慢 / RAID |
| CPU 高 | 压缩 / 小文件 |
| OOM | 缓存过大 |
| 网络瓶颈 | 1Gbps 网卡 |
mkfs.xfs /dev/nvme0n1
mount -o noatime /dev/nvme0n1 /data1
...
minio server /data{1..8}
✅ 给出 你当前服务器配置 的定制方案
✅ 对比 单机 vs 分布式
✅ 针对 视频 / AI / 备份 / 日志 场景优化
你可以直接贴: