嚴華 发表于 2024-7-16 04:07:41

k8s备份规复实践--velero

k8s备份规复实践--velero

使用Velero备份k8资源到minio,阿里云oss,七牛云Kodo

情况linux + kubectl
#1.velero简介


[*]Velero是用于Kubernetes资源备份、规复、迁移的开源工具
[*]客户端(velero命令行) -> 服务端(摆设在k8s) -> 对象储存(s3或兼容s3储存)
[*]velero将k8s资源备份为json文件,可以通过namespace、label等进行筛选备份或规复
[*]github地址 https://github.com/vmware-tanzu/velero
#2.velero安装

#2.1 安装velero客户端

#wget https://github.com/vmware-tanzu/velero/releases/download/v1.13.2/velero-v1.13.2-linux-amd64.tar.gz
wget http://files.elvin.vip/k8s/velero-v1.13.2-linux-amd64.tar.gz
tar -zxf velero-v1.13.2-linux-amd64.tar.gz
mv velero-v1.13.2-linux-amd64/velero /usr/local/bin/
velero version

#启用命令补全
velero completion bash > /etc/bash_completion.d/velero
. /etc/bash_completion.d/velero

#查看帮助
velero -h#2.2 安装velero服务端

在kubernetes集群安装velero 需要设置好​kubectl​​和​​kubeconfig​
#查看k8s node
kubectl get node#2.2.1 k8s安装velero使用minio储存

docker安装mino
#创建minio
docker rm -f minio
docker run -dit --name minio -u 0 \
-h minio --net host --restart always \
-e MINIO_ROOT_USER="minio" \
-e MINIO_ROOT_PASSWORD="miniow2p0w2r4" \
-v /data/minio:/data -w /data \
registry.aliyuncs.com/elvin/minio:2022 \
minio server /data --console-address '0.0.0.0:9001'

#创建bucket velero
docker exec -it minio bash -c 'mc mb velero; mc ls'
#minio储存地址 http://minio-ip:9000k8s安装minio
kubectl -f https://gitee.com/alivv/elvin-demo/raw/master/k8s/3.data-minio.yml

#volumes使用hostPath: /opt 可根据需求修改pvc部分
#minio储存地址 http://minio.kube-public.svc:9000安装velero使用k8s-minio储存
#创建凭据 create authmkdir -p /k8s/velerocat >~/k8s/velero/auth-minio.txt
页: [1]
查看完整版本: k8s备份规复实践--velero