YS1000实战:揭秘钩子程序——修改应用恢复后的资源副本数量

目录

引言

实验环境

实验步骤

创建钩子程序

创建应用备份任务

创建应用恢复任务并应用钩子程序

检验钩子程序效果

总结


引言

YS1000是首个国产企业级Kubernetes应用的备份容灾商业解决方案,为企业提供易于使用、可扩展、安全的解决方案,用于Kubernetes核心容器应用在多云架构下的备份恢复、容灾保护及迁移。这次YS1000 2.10版本发布了很多客户要求的新功能,其中一个对以前的钩子程序进行了升级, 增加了钩子程序的管理,并且可以更灵活的定义钩子程序, 可以分别在任务执行前,执行后或者任务失败后执行钩子程序,钩子程序的定义支持多种脚本或者远程命令。

本文使用Wordpress应用恢复做为例子, 介绍了通过使用一个远程程序命令创建的钩子程序,在恢复wordpress 应用后, 灵活地更改wordpress的副本数量。

实验环境

  1. Kubernetes 版本

    kubectl get node
    NAME            STATUS   ROLES                  AGE   VERSION
    ecs-e224-0001   Ready    control-plane,master   24d   v1.23.8
  2. YS1000 版本

    helm list -n ys1000
    NAME           	NAMESPACE	REVISION	UPDATED                                	STATUS  	CHART       	APP VERSION
    qiming-operator	ys1000   	1       	2022-12-08 15:26:49.765681838 +0800 CST	deployed	ys1000-2.10.2	2.10.2
  3. 确认备份前应用的wordpress pod数量为1个

    kubectl -n wordpress get pods
    NAME                               READY   STATUS    RESTARTS   AGE
    wordpress-7bd5fcc587-k7hjw         1/1     Running   0          104m
    wordpress-mysql-6478987597-gcpkg   1/1     Running   0          104m
    kubectl -n wordpress get deployment
    NAMEREADY   UP-TO-DATE   AVAILABLE   AGE
    wordpress         1/1     1            1           104m
    wordpress-mysql   1/1     1            1           104m

实验步骤

创建钩子程序

  • 在YS1000 UI左侧导航栏选择钩子程序,在页面右侧点击创建钩子程序

  • 输入钩子程序名称, 选择目标集群unlimited
  • 在执行任务列表里选择任务执行之后, 选择远程程序命令, 并输入修改副本的命令
bash -c kubectl -n wordpress scale --replica=3 deployment wordpress

  • 点击创建后,在页面上可以看到新创建的钩子程序

创建应用备份任务

  • 在YS1000 UI左侧导航栏选择集群应用备份,点击创建应用备份

  • 填入备份计划名称,选择备份仓库

  • 选择应用所在的集群和命名空间

  • 选择备份策略,点击下一步直到完成

  • 启动一个备份任务。 这个备份中的wordpress应用只有一个wordpress pod 副本

创建应用恢复任务并应用钩子程序

  • 创建一个ys1000的恢复任务,输入任务名称和目标集群, 点击下一步

  • 选择全部恢复, 点击下一步

  • 默认恢复策略, 点击下一步

  • 默认高级恢复选项, 点击下一步

  • 点击启用钩子程序,在恢复后执行处选择创建好的modify-replica钩子程序名称,点击完成

  • 等待wordpress 应用恢复完成

  • 点击详情页面,可以看到恢复任务的执行步骤

检验钩子程序效果

使用命令查看在目标集群中的wordpress应用的wordpress pod 副本数量为3, 恢复后钩子程序修改副本数量成功

[root@ecs-e224-0008 ~]# kubectl -n wordpress get deployment
NAME              READY   UP-TO-DATE   AVAILABLE   AGE
wordpress         3/3     3            3           8m34s
wordpress-mysql   1/1     1            1           8m34s
[root@ecs-e224-0008 ~]# kubectl -n wordpress get pods
NAME                               READY   STATUS    RESTARTS   AGE
wordpress-7bd5fcc587-6vj46         1/1     Running   0          67s
wordpress-7bd5fcc587-k7hjw         1/1     Running   0          8m38s
wordpress-7bd5fcc587-zj4vg         1/1     Running   0          67s
wordpress-mysql-6478987597-gcpkg   1/1     Running   0          8m38s

总结

以上执行步骤通过简单的定义一个更改pod副本数量的钩子程序, 在wordpress 应用恢复后,ys1000自动执行了钩子程序从而达到了将副本数量按需更改的目的,并且钩子程序可以在以后的恢复任务中重复使用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值