一、自动扩展(MinIO v8.3.0及以上版本推荐)
若使用MinIO v8.3.0及以上版本,可通过配置自动扩展策略实现动态容量调整。首先编辑MinIO配置文件(通常位于/data/config.json),添加以下内容:
{
"autoScale": {
"enabled": true,
"minSize": 1, // 最小副本数(根据集群规模调整)
"maxSize": 10, // 最大副本数(不超过集群节点总数)
"threshold": 80 // 磁盘使用率达80%时触发扩展
}
}
保存后重启MinIO服务使配置生效:
systemctl restart minio
通过mc admin info myminio命令可监控扩展状态,确认自动扩展是否触发。
二、手动添加物理磁盘(单节点/分布式均适用)
systemctl stop minio停止服务。/dev/sdb)为XFS(MinIO推荐文件系统):mkfs.xfs /dev/sdb。mkdir -p /mnt/newdisk && mount /dev/sdb /mnt/newdisk。/etc/fstab,添加LABEL=DISK1 /mnt/newdisk xfs defaults,noatime 0 2(替换为实际磁盘标签)。/etc/minio/minio.conf),在dataDir数组中添加新磁盘路径:{ "dataDir": ["/data", "/mnt/newdisk"] }
systemctl start minio,使用mc admin info myminio确认新磁盘已纳入集群。三、分布式集群扩容(对等节点添加)
若现有集群为分布式模式(多节点),需通过添加对等节点扩展容量。步骤如下:
export MINIO_ROOT_USER=admin
export MINIO_ROOT_PASSWORD=admin123
minio server http://minio{1...8}/mnt/disk{1...4} --console-address ":9001"
关键要求:所有节点必须同时启动,避免滚动重启导致元数据冲突。mc命令行工具检查节点状态:mc alias set mycluster http://minio1:9000 admin admin123
mc admin info mycluster
确认所有节点显示为Online,且数据分布均衡(新节点会逐步接收新数据)。四、联邦扩展(etcd动态管理)
若需更灵活的扩展(如异构集群或无限扩容),可使用etcd作为中央配置管理工具。步骤如下:
export MINIO_ETCD_ENDPOINTS="http://etcd1:2379,http://etcd2:2379,http://etcd3:2379"
export MINIO_DOMAIN=domain.com // 统一域名(需解析到负载均衡IP)
export MINIO_PUBLIC_IPS="192.168.1.1,192.168.1.2" // 各集群公共IP
minio server http://rack{1...4}/host{1...4}/mnt/export{1...32} --console-address ":9001"
mc工具访问domain.com下的存储桶,确认请求被路由到正确的集群。五、注意事项
autoScale阈值或集群配置。