MinIO在CentOS上的備份可通過命令行工具(mc)、系統工具(rsync/tar)、Docker卷或快照實現,以下是具體步驟:
步驟1:安裝mc工具
通過Yum安裝MinIO客戶端(CentOS默認倉庫包含):
sudo yum install -y minio-client
步驟2:配置mc連接MinIO服務器
使用mc alias
命令設置MinIO服務器別名(替換為實際地址、Access Key和Secret Key):
mc alias set myminio http://<MinIO服務器IP>:9000 <ACCESS_KEY> <SECRET_KEY>
步驟3:執行備份
/backup
):mc cp -r myminio/mybucket /backup/
mc mirror
命令僅同步新增/修改的文件(支持持續監控):mc mirror --remove --overwrite --watch myminio/mybucket /backup/mybucket
步驟4:自動化備份(可選)
通過cron
設置定時任務(如每天凌晨2點備份):
sudo crontab -e
添加以下內容(替換為實際路徑和別名):
0 2 * * * mc cp -r myminio/mybucket /backup/$(date +%Y%m%d)/
若MinIO數據存儲在默認目錄(如/data
),可使用rsync
同步到備份位置:
sudo rsync -aAXv --delete /data/ /backup/minio_data/
-a
:歸檔模式(保留權限、時間戳等);--delete
:刪除目標目錄中源目錄不存在的文件(保持一致性)。將MinIO數據目錄打包為壓縮文件(如minio_backup.tar.gz
):
sudo tar -czvf /backup/minio_backup_$(date +%Y%m%d).tar.gz -C /data .
步驟1:停止MinIO容器
docker stop minio-container
步驟2:備份數據卷
將容器內的/data
卷復制到主機備份目錄:
docker cp minio-container:/data /backup/minio_docker_data/
步驟3:啟動MinIO容器
docker start minio-container
若MinIO集群啟用了快照,可通過mc admin
命令創建和保存快照:
# 創建快照(需集群管理員權限)
mc admin snapshot create myminio/mybucket mybucket_snapshot
# 保存快照到指定存儲庫(如S3)
mc admin snapshot save myminio/mybucket mybucket_snapshot s3/snapshot-repo
恢復前需確保備份數據完整,并停止對受影響存儲桶的寫操作(避免數據覆蓋)。
步驟1:安裝并配置mc
(同備份步驟1、2)
步驟2:恢復單個存儲桶
將備份目錄中的數據復制回MinIO存儲桶:
mc cp -r /backup/mybucket/ myminio/mybucket/
步驟3:創建存儲桶(若不存在)
若目標存儲桶已被刪除,先創建同名存儲桶:
mc mb myminio/mybucket
若備份的是MinIO數據目錄,可通過rsync
同步回原目錄:
sudo rsync -aAXv /backup/minio_data/ /data/
解壓備份的壓縮文件到MinIO數據目錄:
sudo tar -xzvf /backup/minio_backup_$(date +%Y%m%d).tar.gz -C /data/
步驟1:停止MinIO容器
docker stop minio-container
步驟2:恢復數據卷
將備份的數據復制到容器內的/data
卷:
docker cp /backup/minio_docker_data/ minio-container:/data/
步驟3:啟動MinIO容器
docker start minio-container
若使用了快照,可通過mc admin
命令恢復:
# 從快照恢復存儲桶(需指定快照標簽和存儲庫)
mc admin snapshot restore myminio/mybucket mybucket_snapshot s3/snapshot-repo
若數據部分損壞,可使用mc admin heal
命令修復:
# 修復單個存儲桶
mc admin heal myminio/mybucket
# 遞歸修復存儲桶內所有對象
mc admin heal -r myminio/mybucket
mc ls
或tar -tzvf
檢查備份文件的完整性和可訪問性。admin
角色)。mc admin heal
或MinIO控制臺監控恢復狀態。通過以上方法,可在CentOS上實現MinIO數據的高效備份與恢復,確保數據安全性和業務連續性。