在 CentOS 上使用 MinIO 时,“限速”通常分为几种场景,下面按常见需求给你说明做法。
结论先说:
limit_rateyum install -y nginx
server {
listen 9000;
server_name minio.example.com;
# 限速:单连接 5MB/s
limit_rate 5m;
location / {
proxy_pass http://127.0.0.1:9000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
⚠️ 注意:
limit_rate是 单连接限速- 多线程 / 多连接会叠加
systemctl restart nginx
适合 整个服务器出口限速
# 限制 eth0 出口为 10Mbps
tc qdisc add dev eth0 root tbf rate 10mbit burst 32kbit latency 400ms
查看:
tc qdisc show
删除:
tc qdisc del dev eth0 root
✅ 优点:粗粒度、简单
❌ 缺点:不区分 MinIO 端口
iptables 更适合 包速率限制,不适合大文件下载限速,生产不推荐。
目前不支持:
access key 限速只能通过:
--blkio、K8s NetworkPolicy)docker run -d \
--name minio \
-p 9000:9000 \
--network=default \
minio/minio server /data
再用宿主机 Nginx 限速即可。
| 场景 | 推荐方案 |
|---|---|
| 对外提供下载 | Nginx limit_rate |
| 整机限速 | tc |
| 用户级限速 | 暂不支持 |
| 云环境 | 云厂商带宽限制 |
如果你能说清楚:
我可以给你 更精确的配置示例。