1. 前言
由于近期项目的原因,Mars 有大约一周的时间都在 ACK 上工作,之间也踩了一些坑。发现还是需要写一个 Kasten K10 安装 on ACK 的最佳实践。由于 ACK 是一个定制化的 K8S,所以有很多有个性与特色的部分。本着让 每一个 Veeam 的 Partner SE 都可以尝试安装 Kasten 的态度,我们详细的列出了每一步的过程,本文让我们从安装开始给您一些参考,以尽量避免大家少走一些弯路。
本文目录
-
- 前言
- 本文目录
- 前言
-
- 应用阿里云部署 ACK 服务
- 2.1 创建一个 ACK K8S 集群
- 2.2 通过 Kubectl 连接 ACK
- 2.2.1 配置k8s kubectl 客户端
- 2.2.2 配置 Kubeconfig
- 2.2.3 kubectl 连接测试
- 应用阿里云部署 ACK 服务
- 2.3. 安装 Helm 工具
- 3.Kasten K10 部署规划
- 3.1 技术资源准备与要求
- 3.2 K8S 集群资源需求
-
- Kasten K10 部署过程
- 4.1. 配置 ACR 镜像库
- 4.1.1. 腾讯镜像库 ACR 介绍
- 4.1.2 新建命名空间
- 4.1.3. 部署私有镜像库到 ACR
- 4.1.4. 对于两个特殊镜像的上传 Restorectl 和 k10offline 镜像
- 4.1.5. 查看部署完成的 ACR 镜像库
- 4.2. 设置存储 CSI 插件
- 4.3. 设创建 VolumeSnapshotClass
- 4.4 安装 K10 到 K8S 集群
- Kasten K10 部署过程
-
- 配阿里云 NAS 作为存储库
-
- ACK 上应用备份与恢复
- 6.1 建立一个测试应用 mysql
- 6.2. 云原生应用的发现
- 6.3 云原生应用的备份与还原
- 6.3.1 周期性的快照
- 6.3.2 将快照导出为备份
- 6.3.3 应用的选择与排除
- 6.3.4 备份策略的使用
- 6.3.5 备份结果查看
- 6.3.6 应用的还原
- ACK 上应用备份与恢复
-
- 总结
-
- 参考链接
2. 应用阿里云部署 ACK 服务
阿里云容器服务介绍
容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理;是国内唯一入选 2020 年 Gartner 公共云容器报告的产品,并在2019年 Forrester 容器报告中获国内排名第一;整合了阿里云虚拟化、存储、网络和安全能力,助力企业高效运行云端 Kubernetes 容器化应用。
2.1 创建一个 ACK K8S 集群
在阿里云中, ACK 集群的创建十分简便,通过控制台就可以进行,选择 容器服务 - Kubenetes -> 集群 -> 创建集群
在创建集群的过程中,我们选择 4C,8G 的云主机做为承载 K8S 集群的服务器
在保证集群可以正常使用的提前下,尽量减少的安装的组件
点击完成,查看集群部署状态
所有Pod 都已经在正常运行
获取集群信息打开内网访问
2.2 通过 Kubectl 连接 ACK
2.2.1 配置k8s kubectl 客户端
1. 下载最新的 kubectl 客户端
配置 K8S yum 源
$ cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
2. 安装k8s kubectl 客户端
# yum install -y kubectl kubelet kubeadm
3. 配置k8s kubectl 客户端开机启动
$ systemctl enable kubelet
Created symlink from /etc/systemd/system/multi-user.target.wants/kubelet.service to
Created symlink from /etc/systemd/system/multi-user.target.wants/kubelet.service to
4.启动kubectl 客户端
# systemctl start kubelet
2.2.2 配置 Kubeconfig
1. 配置 Kubeconfig
若当前访问客户端尚未配置任何集群的访问凭证,即 ~/.kube/config 内容为空,可直接复制上方 kubeconfig 访问凭证内容并粘贴入 ~/.kube/config 中。
$ mkdir /$HOME/.kube
$ vim /$HOME/.kube/config ##把 kubeconfig 文件放进上述文件,详见TKE K8S 信息
2. 访问 Kubernetes 集群
完成 kubeconfig 配置后,执行以下指令查看并切换 context 以访问本集群:
$ kubectl config --kubeconfig=$HOME/.kube/config get-contexts
CURRENT NAME CLUSTER AUTHINFO NAMESPACE
* kubernetes-admin-c36edc6f5ed7041399014475f449c81fd kubernetes kubernetes-admin
$ kubectl config --kubeconfig=$HOME/.kube/config use-context kubernetes-admin-c36edc6f5ed7041399014475f449c81fd
Switched to context "kubernetes-admin-c36edc6f5ed7041399014475f449c81fd".
2.2.3 kubectl 连接测试
而后可执行 kubectl get node 测试是否可正常访问集群。如果无法连接请查看是否已经开启公网访问或内网访问入口,并确保访问客户端在指定的网络环境内。
$ kubectl get node
NAME STATUS ROLES AGE VERSION
cn-beijing.172.16.0.29 Ready <none> 7h56m v1.18.8-aliyun.1
2.3. 安装 Helm 工具
Helm 是一个镜像管理的工具,用来使用预先配置的 Kubernetes 镜像资源包。我们可以通过以下链接下载 Helm
下载 [所需版本] https://github.com/helm/helm/releases
#下载
$ wget https://get.helm.sh/helm-v3.6.2-linux-amd64.tar.gz
#解包
$ tar -zxvf helm-v3.6.2-linux-amd64.tar.gz
# helm 在解压后的目录中找到二进制文件,然后将其移至所需的目标位置
$ mv linux-amd64/helm /usr/local/bin/helm
# 在客户端内运行
$ helm help
参考 Helm3 部署安装
https://cloud.tencent.com/developer/article/1705549Helm3 releases
https://github.com/helm/helm/releases
3.Kasten K10 部署规划
3.1 技术资源准备与要求
Kasten K10 部署在 阿里云 ACK 中 需要以下先决条件 :
- ACK 1.18.8 (Alibaba Container Service for Kubernetes ,ACK)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务。
- ACR Alibaba Container Registry 容器镜像服务, 为您提供安全独享、高性能的容器镜像托管分发服务。
- diskplugin.csi 组件 支持 ACK 集群通过控制台快捷选择存储类型,并创建对应块存储云硬盘类型的 PV 和 PVC。
- NFS 文件存储, 用于存放备份的数据集
- 技术人员要求 部署人员除了对腾讯云有一定了解以外,还应该具备 K8S 或 TKE 运维的相关知识。
3.2 K8S 集群资源需求
对于 Kasten K10 在 ACK 容器平台环境的部署,Kasten K10 将需要以下资源,鉴于 K10 所保护的应用数量不同,对应的数值也做相应的调整。
资源需求
K10 的资源需求总是与 Kubernetes 集群中的应用程序数量和正在执行的数据管理任务类型有关(例如,快照与备份)。一些资源需求是静态的,我们称之为基本资源需求,而其他资源的占用仅在完成某些数据管理工作时才被需要,因此我们称之为动态资源需求。K10 的自动扩展特性确保了在不执行任何工作时,动态需求资源的消耗缩减为零。虽然以下资源需求与限制的建议适用于大多数 K8S 集群,但需注意的是,最终需求将取决于您的集群和应用程序规模、数据总量、文件大小、分布和数据变化率。比较科学的方式是通过 Prometheus 或 Kubernetes Vertical Pod Autoscaling (VPA) 来检查您的资源需求。
需求类型
我们将需求分为三种类型,即基本工作需求,备份工作需求和灾难恢复需求,并做以下陈述:
-
基本工作需求:这些是 K10 的内部调度和清理服务所需的资源,主要由监控和目录规模需求驱动。这些基本要求的资源占用通常是静态的,通常不会随着受保护的 Kubernetes 资源数量或受保护应用程序数量的增长而显着增长。
-
备份工作需求:当数据从卷快照传输到对象存储或 NFS 文件存储时,需要调用备份工作所需的资源。虽然备份需求取决于您的数据量、变化率和文件系统布局,但这些需求并非没有限制,很容易适应相对廋供给的资源范围。当然在提供额外资源时,K10 还可以加快备份操作的完成。为了在保护大量工作负载时防止无限并行,K10 限制了同时备份作业的数量(默认为 9 个任务并行)。备份资源占用是动态的,在不执行备份时会缩减为零。
-
灾难恢复需求:这些需求是在执行 K10 安装的灾难恢复所需的资源,主要用于压缩、重复数据删除、加密以及将 K10 目录传输到对象存储。提供额外资源还可以加快 DR 操作。DR 资源占用是动态的,并且在不执行 DR 时会缩减为零。
需求配置指南
下表列出了保护 100 个云原生应用程序或命名空间的 K10 安装的资源要求。需要注意的是,DR 作业也包含在最大并行度限制中,因此您只能 N 同时拥有备份作业 或 N-1 备份作业 + 1 个 DR 作业同时进行。
Type | Requested CPU (Cores) | Limit CPU (Cores) | Requested Memory (GB) | Limit Memory (GB) |
---|---|---|---|---|
Base | 1 | 2 | 1 | 4 |
Dynamic (per parallel job) | 1 | 1 | 0.4 | 0.4 |
DR | 1 | 1 | 0.3 | 0.3 |
Total | 3 | 4 | 1.8 | 4.8 |
阿里云环境安装需求
以下为阿里云 ACK 环境安装 Kasten 的需求,只为满足测试需求示例,可按实际用量扩容或缩减
POD数量: 18 -21(根据场景与作业调度不同)
CPU与内存资源: 见 Kasten K10 文档
PVC 存储资源要求:200GB (包括 K8S本身与应用安装 与 Kasten 对持久卷的要求。只为满足测试需求示例,可按实际用量扩容或缩减,)
NAS 存储资源要求:200GB (只为满足测试需求示例,可按实际用量扩容或缩减)
Kasten K10 系统需求
https://docs.kasten.io/latest/operating/footprint.html
在阿里云 ACK 的集群配置中,最小配置为一个节点,推荐两个节点
类型 | 机型 | 规格 | CPU | 内存 | 硬盘 |
---|---|---|---|---|---|
基础配置 | 标准型SA2 | SA2.MEDIUM4 | 2核 | 4GB | 50GB 高性能云硬盘 |
推荐配置 | 标准型SA2 | SA2.LARGE8 | 4核 | 8GB | 100GB SSD云硬盘 |
4. Kasten K10 部署过程
4.1. 配置 ACR 镜像库
4.1.1. 腾讯镜像库 ACR 介绍
阿里云容器镜像服务(Alibaba Cloud Container Registry,简称ACR)提供安全的应用镜像托管能力,精确的镜像安全扫描功能,稳定的国内外镜像构建服务,便捷的镜像授权功能,方便用户进行镜像全生命周期管理。容器镜像服务简化了Registry的搭建运维工作,支持多地域的镜像托管,并联合容器服务等云产品,打造云上使用Docker的一体化体验
4.1.2 新建命名空间
首先,我们需要在阿里云镜像仓库中,新建命名空间,如下图。然后,输入命名空间的名称, 如 Kasten-k10
4.1.3. 部署私有镜像库到 ACR
使用 Kasten K10 官方的方法部署镜像库
要使用 Kasten K10 官方的方法部署镜像库,请参考如下文档
参考 Kasten 文档 Air-Gapped Install
https://docs.kasten.io/latest/install/offline.html注意以下操作的主机需要可以接触 gcr.io
建议准备一个 Ubuntu Linux 方便操作
1. 列出 K10 容器镜像
以下命令将列出当前 K10 版本使用的所有 Docker images,如果需要手动标记 K10 Docker images 并将其推送到您的私有存储库,而不是使用下面记录的 Kasten 提供的工具,这会很有帮助。
# docker run --rm -it gcr.io/kasten-images/k10offline:4.0.9 list-images
2. 将所有 K10 镜像下载到本地机器的 Registry 中
以下命令执行 k10offline 工具并使用 docker -in- docker(通过 docker.sock)将所有 K10 镜像下载到本地机器的 Registry 中。
# docker run --rm -it -v /var/run/docker.sock:/var/run/docker.sock \
gcr.io/kasten-images/k10offline:4.0.5 pull images
3. 将所有 K10 镜像拉入您的本地存储库,并重新标记
最后,为了完全自动化 K10 Docker 映像的下载和重新上传,以下命令会将所有 K10 映像拉入您的本地存储库,并重新标记 repo.example.com 并将它们推送到此指定的 Registry 。请注意,如果私有 Registry 需要身份验证,此工具将使用您的本地 docker 配置。
# docker login --username=mcarb registry.cn-beijing.aliyuncs.com
# docker run --rm -ti -v /var/run/docker.sock:/var/run/docker.sock \
-v ${HOME}/.docker:/root/.docker \
gcr.io/kasten-images/k10offline:4.0.9 pull images --newrepo registry.cn-beijing.aliyuncs.com/kasten-k10
4.1.4. 对于两个特殊镜像的上传 Restorectl 和 k10offline 镜像
以下两个软件包,不会出现在镜像库中,但时常会用到。所以我们通过 Docker 命令把它们手动推送到
TCR上
- Restorectl 用于容灾和异地恢复
- k10offline 离线工具包
$ docker login --username=10000***** ccr.ccs.tencentyun.com
$ docker pull gcr.io/kasten-images/k10offline:4.0.9
$ docker tag de37ccb3ee8e registry.cn-beijing.aliyuncs.com/kasten-k10/k10offline:4.0.9
$ docker push registry.cn-beijing.aliyuncs.com/kasten-k10/k10offline:4.0.9
$ docker pull gcr.io/kasten-images/restorectl:4.0.9
$ docker tag 3c273ce62a84 registry.cn-beijing.aliyuncs.com/kasten-k10/restorectl:4.0.9
$ docker push registry.cn-beijing.aliyuncs.com/kasten-k10/restorectl:4.0.9
4.1.5. 查看部署完成的 ACR 镜像库
确保 ACR 已经配置完善, ACR 镜像库的搭建十分重要
4.2. 设置存储 CSI 插件
将 alicloud-disk-ssd 设置为 Default storageclass
❯ kubectl get sc
NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE
alicloud-disk-available diskplugin.csi.alibabacloud.com Delete Immediate true 57m
alicloud-disk-efficiency diskplugin.csi.alibabacloud.com Delete Immediate true 57m
alicloud-disk-essd diskplugin.csi.alibabacloud.com Delete Immediate true 57m
alicloud-disk-ssd diskplugin.csi.alibabacloud.com Delete Immediate true 57m
alicloud-disk-topology diskplugin.csi.alibabacloud.com Delete WaitForFirstConsumer true 57m
# 将 alicloud-disk-ssd 设置为 Default storageclass
$ kubectl patch storageclass alicloud-disk-ssd -p '{"metadata": {"annotations":{"storageclass.beta.kubernetes.io/is-default-class":"true"}}}'
storageclass.storage.k8s.io/alicloud-disk-ssd **patched**
# 查看是否设置成功
$ kubectl get sc
NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE
alicloud-disk-available diskplugin.csi.alibabacloud.com Delete Immediate true 57m
alicloud-disk-efficiency diskplugin.csi.alibabacloud.com Delete Immediate true 57m
alicloud-disk-essd diskplugin.csi.alibabacloud.com Delete Immediate true 57m
alicloud-disk-ssd (default) diskplugin.csi.alibabacloud.com Delete Immediate true 57m
alicloud-disk-topology diskplugin.csi.alibabacloud.com Delete WaitForFirstConsumer true 57m
4.3. 设创建 VolumeSnapshotClass
vim volumesnapshotclass.yaml
apiVersion: snapshot.storage.k8s.io/v1beta1
kind: VolumeSnapshotClass
metadata:
annotations:
k10.kasten.io/is-snapshot-class: "true"
name: default-snapclass
driver: diskplugin.csi.alibabacloud.com
deletionPolicy: Delete
$ kubectl apply -f volumesnapshotclass.yaml
volumesnapshotclass.snapshot.storage.k8s.io/default-snapclass created
4.4 安装 K10 到 K8S 集群
1. 获取 Helm Chart 供本地使用
添加 Kasten Helm charts 存储库
$ helm repo add kasten https://charts.kasten.io/
$ helm repo list
NAME URL
kasten https://charts.kasten.io/
$ helm repo update
# 以下这条命令会把 k10-4.0.x.tgz 包下载下来,如果不加任何参数,则会下载最新的版本
# 在Air Gapped 的环境中安装时,可以先行下载再使用。
$ helm fetch kasten/k10 --version=4.0.5
Hang tight while we grab the latest from your chart repositories...
...Successfully got an update from the "kasten" chart repository
Update Complete. ⎈Happy Helming!⎈
2.建立名空间
$ kubectl create namespace kasten-io
namespace/kasten-io created
3. 安装 Kasten K10
在选CSI的云硬盘时,有个最小为20GB的限制,对于 Kasten 来说,有些PVC的要求仅为1GB,所以我们将其更改为20G以上为腾讯云部署作适配, 同时配置的参数还有为扩展 gateway 的 LB 用于外网访问 Kasten 图形界面,与安全性相关的 Token 登录认证的设置。
$ helm repo update
$ helm fetch kasten/k10 --version=4.0.9
$ helm install k10 k10-4.0.9.tgz --namespace kasten-io --set global.airgapped.repository=registry.cn-beijing.aliyuncs.com/kasten-k10 \
--set global.persistence.metering.size=20Gi \
--set prometheus.server.persistentVolume.size=20Gi \
--set global.persistence.catalog.size=20Gi \
--set externalGateway.create=true \
--set auth.tokenAuth.enabled=true \
--set metering.mode=airgap \
--set injectKanisterSidecar.enabled=true \
--set-string injectKanisterSidecar.namespaceSelector.matchLabels.k10/injectKanisterSidecar=true \
--set global.persistence.storageClass=alicloud-disk-ssd
目前在不同的 K8S 环境下部署 K10 有很多参数需要设置,此时我们需要查阅部署参数。
查看 Kasten Helm 部署的参数
Complete List of K10 Helm Options
https://docs.kasten.io/latest/install/advanced.html
4. 确认 Kasten K10 Pod 的部署情况
$ kubectl get po -n kasten-io
NAME READY STATUS RESTARTS AGE
aggregatedapis-svc-5fb7588968-vr77l 1/1 Running 0 4m17s
auth-svc-75c4bddcd5-cqvf2 1/1 Running 0 4m16s
catalog-svc-669df9d957-94w8b 2/2 Running 0 4m17s
config-svc-859f654d66-2g854 1/1 Running 0 4m16s
crypto-svc-d8d64bf85-959rn 2/2 Running 0 4m17s
dashboardbff-svc-5b6d7dbf49-dt6dp 1/1 Running 0 4m17s
executor-svc-6cbb8f767d-69ffj 2/2 Running 0 4m16s
executor-svc-6cbb8f767d-ktmh4 2/2 Running 0 4m16s
executor-svc-6cbb8f767d-ntq56 2/2 Running 0 4m16s
frontend-svc-5996c97f4c-rnr2p 1/1 Running 0 4m16s
gateway-7cc9f99d4f-zv6r5 1/1 Running 0 4m17s
jobs-svc-79bccf5b55-ljvl2 1/1 Running 0 4m16s
kanister-svc-745c84f7dc-wwn5f 1/1 Running 0 4m17s
logging-svc-bb9dfd7d4-4wp7c 1/1 Running 0 4m17s
metering-svc-77c974448d-lfjbf 1/1 Running 0 4m17s
prometheus-server-7b78866f7c-8jgqn 2/2 Running 0 4m17s
state-svc-7cfc58dcd9-7n5dq 1/1 Running 0 4m17s
5. 访问 K10 控制台
通过查看 K8S Service,我们可以看到 K10的ingress配置,其中的Gateway-ext,查看 访问 K10的 IP地址
❯ kubectl get svc -n kasten-io |grep gateway
gateway ClusterIP 192.168.161.51 <none> 8000/TCP 5m40s
gateway-admin ClusterIP 192.168.185.15 <none> 8877/TCP 5m40s
gateway-ext LoadBalancer 192.168.144.137 39.106.53.131 80:30925/TCP 5m40s
#浏览器访问如下地址
http://39.106.53.131/k10/#/
在终端输入如下命令获取 Token
$ sa_secret=$(kubectl get serviceaccount k10-k10 -o jsonpath="{.secrets[0].name}" --namespace kasten-io) && \
kubectl get secret $sa_secret --namespace kasten-io -ojsonpath="{.data.token}{'\n'}" | base64 --decode
输入您的公司名和邮件地址
之后可以看到,Kasten K10 管理界面已经完美的出现在浏览器中。
可以看到最新 4.0.9 版本已经安装成功
5. 配阿里云 NAS 作为存储库
点击 文件存储 NAS -> 创建文件系统
存储库连接建立好,如下图
创建 NAS 存储类
点击 集群 -> 存储类 -> 创建
指定 存储类名称以及 NAS 挂载点域名
NAS 存储类配置完成
创建 存储声明 PVC
创建 存储声明
存储声明创建完成
创建 NAS 存储库
创建 NAS 存储库创建完成
6. ACK 上应用备份与恢复
6.1 建立一个测试应用 mysql
$ helm repo add apphub-incubator https://apphub.aliyuncs.com/incubator/
"apphub-incubator" has been added to your repositories
$ helm install mysql apphub-incubator/mysql --namcespace mysql \
--set master.persistence.size=20Gi \
--set slave.persistence.size=20Gi \
--set auth.rootPassword='Start123'
$ kubectl get po -n mysql
NAME READY STATUS RESTARTS AGE
mysql-master-0 1/1 Running 0 72s
mysql-slave-0 1/1 Running 0 72s
$ kubectl get pvc -n mysql
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
data-mysql-master-0 Bound d-2zebuct0j6jyyw615qco 20Gi RWO alicloud-disk-ssd 93s
data-mysql-slave-0 Bound d-2ze6imb1cs5aa0w83nnq 20Gi RWO alicloud-disk-ssd 93s
6.2. 云原生应用的发现
在 K10 中 应用为分成 Compliant 与 Non-compliant 与 Unmanaged 从而区分应用是否被保护,或是否达成保护的目标。
Compliant 是已经完成保护的应用,Non-Compliant 是定义了保护策略,但是没有达到保护的目标,而 Unmanaged 是未被保护的应用。这样当新的应用被部署时,我们可以在 K10 的界面中,轻松地发现的新应用从而保护它。下面,我们在 TKE 中部署一个新的应用,让 K10 来发现它。
从下图可以看到,目前除 default 之外,还有 1 个应用, mysql, mysql 没有被保护,
6.3 云原生应用的备份与还原
要保护应用程序,只需单击 Create a policy 您将进入数据保护策略创建部分。
6.3.1 周期性的快照
如上图,为了保护应用程序,我们首先要选择快照操作以及数据的备份范围。快照是 K10 中数据捕获的基础,通常应用于应用程序使用的磁盘卷 (PVC/PV) ,但也可以应用于应用程序级数据捕获(例如,使用 Kanister,在下文中,将进行说明。)运用快照操作进行数据捕获对应用的性能影响非常低、不需要停应用、可以快速创建恢复时间点,以实现增量数据捕获。以下是可选的周期性的设置。
当然如果你是第一次进行备份策略的设置,保持默认就好
6.3.2 将快照导出为备份
默认情况下,通过导出执行的备份将设置为将每个快照导出到备份中。但是,也可以选择一部分快照进行导出(例如,仅将每个每日快照转换为备份)。
值得注意的是,存储快照通常受到限制,例如,每个卷的最大快照数量限制相对较低。同时,快照并不总是持久的。如,灾难性的存储系统故障将破坏您的快照以及您的主要数据。此外,在许多存储系统中,快照的生命周期与源卷相关联。因此,如果该卷被删除,所有相关快照可能会同时自动进行回收。因此,强烈建议您同时创建应用程序快照的备份。
6.3.3 应用的选择与排除
我们可以通过两种模式,排除与选择应用名称与标签。
6.3.4 备份策略的使用
在策略创建完成后,我们会在策略管理中看到 一个新策略 『mysql-backup』, 我们可以通过 Run Once 来试一下这个备份策略的能否正常运行。
6.3.5 备份结果查看
通过在 Dashboard 上查看备份结果, 我们可以看到,备份已经完成,并已经将数据导出到存储库上。
6.3.6 应用的还原
还原应用时,首先要确认的还原点,在 Applications 中我们可以看到有 12 个还原点已经存在,点击 Restore
在这里我们选择需要的还原点
还原到新建的命名空间
在还原的时候,我们可以选择还原到原来的名空间也可以还原到新建的命名空间
在这里我们保持默认,直接点击 『Restore』, 直到还原完成。
当还原完成,我们可以看到 etc-retstore 这个命名空间下的应用已经启动。
7. 总结
以上就是关于 Kasten 在阿里云 ACK 上安装的详细记录,供大家在部署时参考。后续还会对 Kasten 的备份恢复进行说明,敬请期待!
8. 参考链接
Complete List of K10 Helm Options
https://docs.kasten.io/latest/install/advanced.htmlHelm3 releases
https://github.com/helm/helm/releasesKasten K10 系统需求
https://docs.kasten.io/latest/operating/footprint.html