# HuaweiCloud-Velero-plugins **Repository Path**: HuaweiCloudDeveloper/huaweicloud-velero-plugins ## Basic Information - **Project Name**: HuaweiCloud-Velero-plugins - **Description**: HuaweiCloud-Velero-plugins - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-03-30 - **Last Updated**: 2025-06-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # velero部署 ## 概述 此插件用于在华为云OBS上保存和检索备份的对象存储插件。备份的内容是kubernetes资源和CSI对象的元数据文件,异步操作的进度。它还用于存储备份和恢复的结果数据,包括日志文件、警告/错误文件等。 ## 前提条件 - cce集群 - git - docker - docker-buildx ## 部署 1. 登录cce集群的一个节点,并连接集群 2. 安装velero 命令行工具 ​ 在官网下载velero-v1.12.0-linux-amd64.tar.gz,并上传到节点 ​ 解压velero ```sh tar -xvf velero-v1.12.0-linux-amd64.tar.gz mv velero-v1.12.0-linux-amd64/velero /usr/local/bin/velero ``` 3. 构建velero-plugin镜像 - 拉取velero-plugin ```sh git clone https://gitee.com/HuaweiCloudDeveloper/huaweicloud-velero-plugins.git ``` - 构建镜像 ```sh cd velero-plugin-for-huaweicloud make container ``` - 上传镜像到SWR 参考https://support.huaweicloud.com/usermanual-swr/swr_01_0011.html 4. 创建一个新的obs桶,桶里不能有其他目录 5. 创建凭证配置文件 ```sh mkdir velero vi /home/velero/credentials-velero ``` ```sh OBS_ACCESS_KEY= OBS_SECRET_KEY= ``` 6. 使用velero命令行工具安装 ```sh velero install \ --provider huaweicloud \ --plugins velero/velero-plugin-for-huaweicloud:v1.0.0 \ --bucket \ --secret-file /home/velero/credentials-velero \ --backup-location-config \ endpoint= ``` \和\修改为自己创建的bucket和endpoint - 进入CCE集群,升级velero负载,将镜像更换为刚上传到SWR上的镜像,并添加环境变量HUAWEI_CLOUD_CREDENTIALS_FILE=/credentials/cloud 7. 查看存储位置状态 ```sh velero backup-location get ``` ​ available表示已经成功安装 8. 备份 - 备份dafault命令空间下的所有资源 ```sh velero backup create default-backup --include-namespaces default ``` - 查看是否备份成功 ```sh velero backup get ``` completed表示备份成功 - 查看详细信息和日志 ```sh velero backup describe default-backup velero backup logs default-backup ``` 9. 删除default命名空间资源 10. 恢复资源 - 将备份存储位置更新为只读模式 ```sh kubectl patch backupstoragelocation default \ --namespace velero \ --type merge \ --patch '{"spec":{"accessMode":"ReadOnly"}}' ``` - 使用刚创建的备份恢复资源 ```sh velero restore create --from-backup default-backup ``` - 查看恢复状态 ```sh velero restore get ``` completed表示恢复成功 - 将备份存储位置恢复为读写模式 ```sh kubectl patch backupstoragelocation default \ --namespace velero \ --type merge \ --patch '{"spec":{"accessMode":"ReadWrite"}}' ``` 11. 删除备份 ```sh velero backup delete default-backup ``` 12. 卸载velero资源 ```sh kubectl delete namespace/velero clusterrolebinding/velero kubectl delete crds -l component=velero ```