当前位置: 首页 > news >正文

如何设计实现开发自助重启工具-01-设计篇

自助重启系列

如何设计实现开发自助重启工具-01-设计篇

应用部署作业-02-流程

如何实现自助重启-03-实现篇

开发自助重启

说明:有时候研发产线需要重启,为了保证安全、或者说提升效率,最好有一个统一的研发自助重启页面。

这个功能可应用的发布有一些类似之处。

流程设计

1. 下流量

保障下掉服务对应的 dubbo/http 等流量

调用对应的接口,可以查看对应的状态。

或者有对应的流量监控:cat + 日志 等等。最好是等待一段时间,保障流量已经下掉。

2. 服务重启

kvm 服务重启,其实可以细化为两个部分:

a. 服务停止

b. 服务启动

但是对于 k8s,可能存在一些不同。

a. 旧的 pod 流量下线

b. 创建新的 pod

c. 等待新 pod ready,上流量

d. 删除旧的 pod

这个是否一体化,取决于 PE 的脚本实现。

3. 上流量

保障服务对应的 dubbo/http 等流量已正确上线。

调用对应的接口,可以查看对应的状态。

或者有对应的流量监控:cat + 日志 等等。最好是等待一段时间,保障流量已经上线。

注意点

cmdb 支撑

需要 cmdb 的底层支撑,不然这么多的机器信息无法维护,不够正确。

podIp 的变化

pod 重启之后,如何获取最新的 ip,再查询一遍吗?

页面设计

业务域:
应用名:
机房:
环境:
分组:
机器分类:
机器列表:
操作:【提交】【查询】

下方有对应的操作记录+操作明细。

# 流量下线(总数)                       处理状态 | 2025-6-21 00:05:08操作时间:${startTime} ~ ${endTime}
操作信息:是否存在异常?
操作人:admin
xxx| id | 机器类型 | 机器标识 | 开始时间 | 结束时间 | 处理状态 | 处理信息 |
| 1 | kvm | 127.0.0.1 | 2025-6-21 00:06:40 | 2025-6-21 00:07:43 | 成功 | 已完成 | 
| 2 | k8s | podName | 2025-6-21 00:06:40 | 2025-6-21 00:07:43 | 成功 | 已完成 |

表记录

需要有一个主从表,存储对应的操作信息+操作明细。

分组

所有的发布,应用都应该分组。

pre-prod 准生产

gray 灰度 这个未必要这么设计,要看灰度是如何设计的。

组1/组2之类的。

分组用户自己定义即可,没有必要严格的设置。

小结

类似的,也可以实现一下 jstack jdump,前提是先下流量,然后操作。

文件存储到对应的位置,方便用户下载+分析。

甚至可以提供对应的分析。

http://www.dtcms.com/a/280499.html

相关文章:

  • eVTOL分布式电推进(DEP)适航审定探究
  • Ajax接收java后端传递的json对象包含长整型被截断导致丢失精度的解决方案
  • 【橘子分布式】Thrift RPC(编程篇)
  • 亚矩阵云手机:破解 Yandex 广告平台多账号风控难题的利器
  • Redis学习系列之——高并发应用的缓存问题(二)
  • JDK1.8函数式编程实战(附日常工作案例,仅此一篇耐心看完彻底搞懂)
  • 17、鸿蒙Harmony Next开发:状态管理(组件拥有的状态和应用拥有的状态)
  • Vue获取上传Excel文件内容并展示在表格中
  • 【人工智能99问】神经网络的工作原理是什么?(4/99)
  • 使用Pydantic开发时,如何将返回数据由snake_case自动转为camel case
  • Mac IDEA启动报错:Error occurred during initialization of VM
  • Linux操作系统从入门到实战(九)Linux开发工具(中)自动化构建-make/Makefile知识讲解
  • ubuntu部署kvm
  • AI-Compass LLM训练框架生态:整合ms-swift、Unsloth、Megatron-LM等核心框架,涵盖全参数/PEFT训练与分布式优化
  • 正则表达式深度解析:从LeetCode 3136题说起
  • 028_分布式部署架构
  • OpenCV图像自动缩放(Autoscaling)函数autoscaling()
  • 2025.7.15总结
  • 用Python构建机器学习模型预测股票趋势:从数据到部署的实战指南
  • 希尔排序:突破传统排序的边界
  • 【Java】【企业级应用】学生信息管理系统项目介绍
  • Mybatis05-动态sql
  • 深度解析 AI 提示词工程(Prompt Engineering)
  • 2025世界机器人大赛ICode专属训练平台图形化小学组答案
  • 光伏设计全方位指南
  • B/S 架构通信原理详解
  • sqli-labs靶场通关笔记:第17关 POST请求的密码重置
  • 如何配置maven
  • 【Linux手册】重定向是如何实现的?Linux下为什么一切皆文件?
  • flutter下的webview适配rem问题