阿里云容器服务备份中心为无状态或有状态应用的备份、恢复与迁移提供了一站式的解决方案,特别是对混合云,多集群的有状态应用提供了数据容灾和应用迁移能力。本文介绍如何开启集群备份能力及不同类型集群的相关授权配置。
索引
-
前提条件
-
ACK托管版集群
-
ACK专有版集群与注册集群
前提条件
-
已开通HBR服务。对NAS、OSS、本地盘类型存储卷进行备份时,以及在混合云场景中,备份中心需要使用HBR进行文件备份。具体操作,请参见混合云备份HBR。
-
已创建ACK集群。具体操作,请参见创建Kubernetes托管版集群、创建Kubernetes专有版集群或创建注册集群并接入本地数据中心集群。
重要
备份中心功能仅支持v1.18及以上版本的ACK集群使用,如集群版本过低请升级集群。具体操作,请参见升级ACK集群K8s版本。
-
已开通阿里云对象存储(OSS)服务。具体操作,请参见开通OSS服务。
-
备份中心不支持Flexvolume插件集群,若您需要使用备份功能,可以通过以下方式迁移至CSI。
-
若是无存储集群的Flexvolume插件,建议您将存储插件迁移至CSI。具体操作,请参见将无存储集群的Flexvolume迁移至CSI。
-
其他情况,请加入钉钉用户群(钉钉群号:35532895)咨询。
-
-
若您使用ACK托管集群,需要创建cnfs-oss-****名称的Bucket,便于权限最小化管理及存储备份的模板,例如cnfs-oss-backup。
-
已通过kubectl工具连接Kubernetes集群。具体操作,请参见获取集群KubeConfig并通过kubectl工具连接集群。
背景信息
随着越来越多的应用运行在Kubernetes中,对应用进行定时的备份就显得格外重要。备份中心可以有效防护由于意外情况导致服务长时间中断而无法恢复的情况。区别于传统的备份单机、备份磁盘的方案,基于Kubernetes的应用备份,主要关注于运行在Kubernetes中的应用及其数据、资源对象、配置及整个命名空间等。
当前备份中心仅使用阿里云OSS存储备份的应用。在使用阿里云对象存储OSS前,您需要配置OSS权限。若是在混合云场景中使用备份中心,您在开通云备份服务后,还需要配置云备份权限。开启集群备份服务,您首先需要安装migrate-controller备份服务组件。下文主要介绍ACK托管版集群、ACK专有版集群与注册集群的migrate-controller备份服务组件安装及相关权限配置。
ACK托管版集群
步骤一:安装migrate-controller备份服务组件
说明
首次使用备份中心功能,需安装备份服务组件;如果您已安装,可忽略此步骤。
-
登录容器服务管理控制台,在左侧导航栏选择集群。
-
在集群列表页面,单击目标集群名称,然后在左侧导航栏,选择运维管理 > 应用备份。
-
在应用备份页面单击开始安装。
系统会自动检测备份仓库,若您未创建备份仓库,请先创建备份仓库,具体操作,请参见创建备份仓库。
-
首次安装完成后,显示以下界面,说明备份服务组件安装成功。
说明
备份服务组件安装完之后,会生成csdr的命名空间,在使用备份过程中,请勿删除该命名空间。
-
若您已安装该组件,但备份服务组件不是最新版本,请在应用备份页面单击开始升级,系统会自动将应用备份服务组件升级至最新版本。
-
步骤二:配置OSS与云备份权限
-
配置OSS权限
ACK托管版集群必须以
cnfs-oss-***
名称开头的OSS Bucket作为备份中心的备份仓库,您无需再为其配置OSS权限。 -
配置云备份权限
对于ACK托管版集群,您无需再为其配置云备份权限。
ACK专有版集群与注册集群
通过onectl安装组件并配置权限(推荐)
-
在本地安装配置onectl。具体操作,请参见使用onectl管理注册集群。
-
执行以下命令,为备份服务组件配置RAM权限。
onectl ram-user grant --addon migrate-controller
预期输出:
Ram policy ack-one-registered-cluster-policy-migrate-controller granted to ram user ack-one-user-ce313528c3 successfully.
-
执行以下命令,安装备份服务组件。
onectl addon install migrate-controller
预期输出:
Addon migrate-controller, version **** installed.
使用onectl配置的OSS权限范围为所有的OSS Bucket,若您仅需要配置指定OSS Bucket的权限,您可以通过以下方式修改onectl生成的OSS权限,或者选择手动方式安装组件并配置权限。具体操作,请参见下文手动安装组件并配置权限。
修改OSS权限:修改已创建的自定义权限策略内容为以下内容。关于修改权限策略的具体操作,请参见修改自定义权限策略内容和备注。
说明
-
替换以下策略代码中
mybackups
为您的OSS名称。 -
更多OSS细粒度的授权配置信息,请参见通过RAM对OSS进行权限管理。
{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "hbr:CreateVault", "hbr:CreateBackupJob", "hbr:DescribeVaults", "hbr:DescribeBackupJobs2", "hbr:DescribeRestoreJobs", "hbr:SearchHistoricalSnapshots", "hbr:CreateRestoreJob", "hbr:AddContainerCluster", "hbr:DescribeContainerCluster", "hbr:DescribeRestoreJobs2" ], "Resource": "*" }, { "Action": [ "oss:PutObject", "oss:GetObject", "oss:DeleteObject", "oss:GetBucket", "oss:ListObjects", "oss:ListBuckets" ], "Resource": [ "acs:oss:*:*:mybackups", "acs:oss:*:*:mybackups/*" ], "Effect": "Allow" } ] }
-
-
(可选)配置指向注册集群与OSS同一地域的OSS内网网段的路由。
已通过CEN、高速通道、专线、VPN等方式与云上VPC互通的注册集群,为提高备份数据的拉取速度,当注册集群与OSS处于同一地域时,备份中心会自动选择以内网方式访问OSS域名,此时,您需要配置指向该地域OSS内网网段的路由。
-
关于线下IDC接入云上VPC的相关内容,请参见接入方式介绍。
-
关于OSS内网域名与VIP网段对照表,请参见OSS内网域名与VIP网段对照表。
-
通过控制台安装组件并配置权限
步骤一:安装migrate-controller备份服务组件
安装migrate-controller备份服务组件。具体操作,请参见步骤一:安装migrate-controller备份服务组件。
步骤二:配置云备份及OSS权限
您需要为专有版集群或注册集群创建RAM用户,为RAM用户添加访问云资源权限,然后创建AccessKey。
-
创建RAM用户。具体操作,请参见创建RAM用户。
-
为OSS与云备份创建如下自定义权限策略。具体操作,请参见通过脚本编辑模式创建自定义权限策略。
-
OSS权限策略内容
说明
-
替换以下代码中
mybackups
为您的OSS名称。 -
更多OSS细粒度授权配置信息,请参见通过RAM对OSS进行权限管理。
-
如果您想要所有OSS的权限,请按以下示例设置权限策略:
{ "Version": "1", "Statement": [ { "Action": [ "oss:PutObject", "oss:GetObject", "oss:DeleteObject", "oss:GetBucket", "oss:ListObjects", "oss:ListBuckets", "oss:GetBucketStat" ], "Resource": [ "*" ], "Effect": "Allow" } ] }
-
如果您只想要指定OSS的读写权限,请按以下示例设置权限策略:
{ "Version": "1", "Statement": [ { "Action": [ "oss:PutObject", "oss:GetObject", "oss:DeleteObject", "oss:GetBucket", "oss:ListObjects", "oss:ListBuckets", "oss:GetBucketStat" ], "Resource": [ "acs:oss:*:*:mybackups", "acs:oss:*:*:mybackups/*" ], "Effect": "Allow" } ] }
-
-
云备份权限策略内容
{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "hbr:CreateVault", "hbr:CreateBackupJob", "hbr:DescribeVaults", "hbr:DescribeBackupJobs2", "hbr:DescribeRestoreJobs", "hbr:SearchHistoricalSnapshots", "hbr:CreateRestoreJob", "hbr:AddContainerCluster", "hbr:DescribeContainerCluster", "hbr:DescribeRestoreJobs2" ], "Resource": "*" } ] }
-
-
为RAM用户添加OSS和云备份权限。具体操作,请参见为RAM用户授权。
-
为RAM用户创建AccessKey。具体操作,请参见获取AccessKey。
-
在专有版集群或注册集群中创建Secret。
为了保证您的AccessKey信息只在您的专有版集群或注册集群内安全使用,您需要先在专有版集群或注册集群中使用AccessKey信息部署一个名为alibaba-addon-secret的Secret资源,以降低泄露风险。
-
执行以下命令,创建命名空间csdr。
kubectl create ns csdr
-
执行以下命令,创建名为alibaba-addon-secret的Secret资源。
kubectl -n csdr create secret generic alibaba-addon-secret --from-literal='access-key-id=' --from-literal='access-key-secret='
您需要将上述代码中
和
替换为您在上一步获取的AccessKey信息。
-
(可选)步骤三:配置指向注册集群与OSS同一地域的OSS内网网段的路由
已通过CEN、高速通道、专线、VPN等方式与云上VPC互通的注册集群,为提高备份数据的拉取速度,当注册集群与OSS处于同一地域时,备份中心会自动选择以内网方式访问OSS域名,此时,您需要配置指向该地域OSS内网网段的路由。
-
关于线下IDC接入云上VPC的相关内容,请参见接入方式介绍。
-
关于OSS内网域名与VIP网段对照表,请参见OSS内网域名与VIP网段对照表。
相关文档
-
集群内备份和恢复应用
-
同地域跨集群迁移应用
内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家
阿里云企业补贴进行中: 马上申请
腾讯云限时活动1折起,即将结束: 马上收藏
同尘科技为腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠
转转请注明出处:https://www.yunxiaoer.com/169001.html