如何将 GKE 集群的 GKE 备份从一个项目恢复到另一个项目的 GKE 集群?
我需要将一个项目的 GKE 集群的 GKE 备份移动到另一个项目的 GKE 集群中。
我在源项目中创建了备份计划和备份。
我还通过下面的云 CLI 命令成功地在目标项目中创建了一个恢复计划,引用源项目备份计划和目标项目的 gke 集群。
gcloud beta container backup-restore restore-plans create RESTORE_PLAN \
--project=PROJECT_ID \
--location=LOCATION \
--backup-plan=projects/PROJECT_ID/locations/BACKUP_LOCATION/backupPlans/BACKUP_PLAN_NAME \
--cluster=CLUSTER \
--namespaced-resource-restore-mode=NAMESPACED_RESOURCE_RESTORE_MODE \
--all-namespaces \
--cluster-resource-conflict-policy=CLUSTER_RESOURCE_CONFLICT_POLICY \
--cluster-resource-scope-selected-group-kinds=CLUSTER_RESOURCE_SCOPE \
--volume-data-restore-policy=VOLUME_DATA_RESTORE_POLICY
gcloud beta container backup-restore restores create RESTORE \
--project=PROJECT_ID \
--location=LOCATION \
--restore-plan=RESTORE_PLAN \
--backup=projects/PROJECT_ID/locations/LOCATION/backupPlans/BACKUP_PLAN/backups/BACKUP
## Output
Restore execution
Status Failed
Status reason googleapi: Error 403: Permission 'gkebackup.backups.execute' denied on 'projects/67114541833/locations/asia-south1/backupPlans/staging-cluster-backup-1/backups/stg-backup23', forbidden
我们已向源项目的 GKE 集群服务帐户添加以下权限
# [email protected]
Backup for GKE Admin
Backup for GKE Backup Admin
Kubernetes Engine Service Agent
我们已向源项目的 GKE Backup 服务帐户添加了与上述相同的权限
#[email protected]
Backup for GKE Admin
Backup for GKE Backup Admin
Kubernetes Engine Service Agent
我们已向目标项目的 GKE 集群服务帐户添加了与上述相同的权限
# [email protected]
Backup for GKE Admin
Backup for GKE Backup Admin
Kubernetes Engine Service Agent
我们已向目标项目的 GKE Backup 服务帐号添加了与上述相同的权限
#[email protected]
Backup for GKE Admin
Backup for GKE Backup Admin
Kubernetes Engine Service Agent
可以采取什么措施来解决这个问题? 需要向两个项目中的服务帐户添加哪些额外权限才能实现此场景?
To enable the Backup for GKE service, run the following command: `gcloud services enable gkebackup.googleapis.com`
编辑:@devops-admin:经过如此多的分析并彻底解决此问题后,我想通知您无法将 GKE 备份从一个项目恢复到另一个项目。此外,Backup for GKE 是一项用于在同一项目内的 GKE 集群中备份和恢复工作负载的服务。
此问题已经存在 bug。请对此错误请求投赞成票,以获取有关此问题的未来更新,截至目前,产品工程团队正在等待该问题,目前还没有预计到达时间。