一、Minio
minio是velero所需的存储类型。
1、分布式部署
接上一篇Minio分布式部署
2、单机部署如下:
2.1、安装配置
通过docker配置:
docker run -d -p 9000:9000 --name minio1 -v /data/k8s/minio:/data minio/minio server /data
运行完成后配置nginx访问即可。
2.2、基本操作
minio client:
# 下载minio client
docker pull minio/mc
# 配置minio
mc config host add s3 http://minio.sunnydou.com <username> <passwd>
# list仓库
mc ls velero-devgroup
# 删除指定目录超过30d的文件
mc rm --recursive --force --older-than 30d s3/velero-bucket/restores/
二、Velero
1、安装配置
安装方式:Velero cli install
velero install --image velero/velero:v1.3.1 --provider aws --bucket devbase --namespace velero --secret-file ./credentials-velero --velero-pod-cpu-request 200m --velero-pod-mem-request 200Mi --velero-pod-cpu-limit 1000m --velero-pod-mem-limit 1000Mi --use-volume-snapshots=false --use-restic --restic-pod-cpu-request 200m --restic-pod-mem-request 200Mi --restic-pod-cpu-limit 1000m --restic-pod-mem-limit 1000Mi --plugins velero/velero-plugin-for-aws:v1.0.0 --backup-location-config region=minio,s3ForcePathStyle="true",s3Url=http://minio.sunnydou.com
# secret 文件格式如下
[default]
aws_access_key_id = <username>
aws_secret_access_key = <passwd>
2、备份
2.1、定时备份
velero create schedule devbase-daily-backup --schedule="0 20 * * *" --ttl 2160h0m0s --include-namespaces default,b0 --storage-location default
2.2、手动备份
# The default TTL is 30 days (720 hours); you can use the --ttl flag to change this as necessary.
velero backup create <BACKUP-NAME>
2.3、恢复
velero restore create --from-backup <backup-name>
2.4、添加存储空间
velero backup-location create <backupname> --access-mode=ReadOnly --bucket=velero-bucket --provider=aws --config region=minio,s3ForcePathStyle="true",s3Url=http://minio_url
附录
官网文档:集群迁移