备份中心可用于解决跨地域Kubernetes集群的应用备份与恢复,实现跨地域集群的备份容灾能力。
前提条件
已创建恢复集群,为确保能正常使用ECS快照恢复云盘数据,建议恢复集群为v1.18及以上版本。具体操作,请参见创建ACK托管集群、创建ACK专有集群或创建注册集群并接入本地数据中心集群。
重要恢复集群必须使用CSI存储插件,使用Flexvolume存储插件或通过csi-compatible-controller组件同时使用CSI Flexvolume存储插件的集群不支持恢复。
备份中心关注业务应用的备份和恢复。在恢复任务之前,您需要在恢复集群中预先安装并配置好所需的系统组件。例如:
ACR免密组件:您需要为恢复集群重新授权并配置acr-configuration。
ALB Ingress组件:您需要预先配置ALBConfig等。
备份集群和恢复集群均已完成备份服务组件的安装及权限配置。具体操作,请参见安装migrate-controller备份服务组件并配置权限。
开通快照服务不收取费用。创建快照后,阿里云默认根据快照容量与时长按量计费,更多信息,请参见快照计费。
注意事项
跨地域集群应用迁移支持应用备份,以及仅使用了阿里云云盘存储的数据卷备份。
如果您的集群为ACK专有版集群或注册集群(已接入ECS自建的Kubernetes集群),在使用云盘存储卷备份跨地域恢复功能前,需要检查是否已授权ECS云盘快照相关的权限策略。具体操作,请参见安装migrate-controller备份服务组件并配置权限。
备份应用时,正在被删除的资源不会被备份。
准备工作
本示例介绍如何跨地域跨集群实现应用备份并恢复。本示例中,华北2(北京)地域内一个名为Cluster_BJ的ACK Pro集群将作为备份集群,华南1(深圳)地域内一个名为Cluster_SZ的ACK Pro集群将作为恢复集群。备份仓库关联华北2(北京)地域内的OSS Bucket。
在华北2(北京)地域内,创建以cnfs-oss-***开头的OSS Bucket。
若此地域内已有符合要求的OSS Bucket,则可以跳过此步骤。
执行以下命令,在Cluster_BJ备份集群的默认命名空间中创建有状态应用Nginx。
步骤一:创建备份仓库
各个集群内的备份仓库实例,与其关联的OSS Bucket之间的网络访问方式将自动设置,不同的网络访问方式将影响应用备份的上传和拉取速度。
集群和OSS Bucket处于同一地域时,使用私网连接。
集群和OSS Bucket处于不同地域时,使用公网连接,需为集群开启公网访问能力,以便能够访问OSS的公网地址,具体操作请参见为已有集群开启公网访问能力。
已创建过的备份仓库不支持更新,只能被删除。若您在删除备份仓库后,重新创建了同名的备份仓库,此新建的同名备份仓库在现有已使用过备份的集群中也无法生效。
当前应用备份功能使用阿里云OSS对备份数据进行存储。若创建备份任务时无可用的备份仓库,则需执行该步骤。关于创建备份仓库的具体操作,请参见创建备份仓库。
步骤二:在Cluster_BJ集群备份任务
关于备份任务的具体操作,请参见创建备份计划或立即备份。
跨地域应用迁移场景仅支持无存储或仅使用阿里云云盘存储的应用,其他类型的有状态应用迁移时,请勿勾选备份存储卷,以避免跨地域恢复时失败。
步骤三:在Cluster_SZ集群恢复应用
关于恢复应用的具体操作,请参见步骤三:恢复应用和数据卷。
步骤四:查看Nginx应用是否迁移成功
登录容器服务管理控制台,在左侧导航栏选择集群。
在恢复集群Cluster_SZ的集群管理页左侧导航栏,选择
。单击目标应用Nginx右侧操作列的详情,然后单击容器组页签。
确认目标应用的状态为Running,表示Nginx应用迁移成功。
相关文档
如果需要实现跨存储插件、跨版本集群间的应用迁移,请参见通过备份中心实现低版本Kubernetes集群应用迁移。
如果需要通过命令行实现集群应用的迁移,请参见通过kubectl实现集群应用的备份和恢复。