Debian上MinIO性能调优实战
一 硬件与存储基础
二 操作系统与内核参数
# /etc/security/limits.conf
minio-user soft nofile 65536
minio-user hard nofile 65536
# 可选:提高系统级文件句柄上限
echo 3865161233 > /proc/sys/fs/file-max
echo mq-deadline > /sys/block/sdX/queue/scheduler
# /etc/sysctl.conf
vm.dirty_ratio = 15
vm.dirty_background_ratio = 5
vm.swappiness = 1
# /etc/sysctl.conf
net.core.somaxconn = 65535
net.ipv4.tcp_max_syn_backlog = 4096
net.ipv4.tcp_fin_timeout = 30
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_keepalive_time = 600
net.ipv4.tcp_keepalive_intvl = 60
net.ipv4.tcp_keepalive_probes = 3
sysctl -p使内核参数生效;SSD调度器设置建议写入/etc/rc.local或使用udev规则持久化。三 MinIO服务与参数调优
minio server /data --address ":9000" --console-address ":9001"
# 提高API并发请求上限
export MINIO_API_REQUESTS_MAX=1600
# 启用本地缓存(示例:两块SSD)
export MINIO_CACHE_DRIVES="/tmp/cache1,/tmp/cache2"
export MINIO_CACHE_EXCLUDE="*.pdf"
apt install certbot -y
certbot certonly --standalone -d your-domain.com
mkdir -p /etc/minio/certs
cp /etc/letsencrypt/live/your-domain.com/privkey.pem /etc/minio/certs/private.key
cp /etc/letsencrypt/live/your-domain.com/fullchain.pem /etc/minio/certs/public.crt
chown -R minio-user:minio-user /etc/minio/certs
# 启动时指定证书目录
MINIO_OPTS="--console-address :9001 --certs-dir /etc/minio/certs"
useradd -r -s /usr/sbin/nologin minio-user
mkdir -p /data /var/log/minio
chown -R minio-user:minio-user /data /var/log/minio
# /etc/systemd/system/minio.service(示例)
[Unit]
Description=MinIO
After=network.target
[Service]
Type=simple
User=minio-user
Group=minio-user
EnvironmentFile=/etc/default/minio
ExecStart=/usr/local/bin/minio server $MINIO_OPTS /data
Restart=on-failure
LimitNOFILE=65536
[Install]
WantedBy=multi-user.target
修改后执行:systemctl daemon-reload && systemctl enable --now minio四 网络连通性与安全
telnet node2 9000
五 监控与基准测试
top/htop, vmstat, iostat -x 1, sar -n DEV 1, netstat -s, free -m, df -h
mc mirror /local/path myminio/bucket-name
mc mirror s3-source/bucket myminio/bucket-name
mc mirror --limit-upload 100MB /local/path myminio/bucket-name
mc admin info myminio
# 异常断电或异常关机后可尝试
minio server /data --heal