应急预案:专有云V3环境中如何清理test-tianji集群的Rolling任务

应急预案:专有云V3环境中如何清理test-tianji集群的Rolling任务

更新时间:2020-06-11 17:32:08

1. 概述

本文主要介绍在专有云V3环境中,如何清理test-tianji集群的Rolling任务。

1.1. 适用范围

  • 专有云V3,天基
    说明:本文适用于专有云V3.8所有版本,包含V3.8.0及V3.8.1。

1.2. 用户告知

  • 适用平台:x86、ARM
  • 授权级别:L1(一线驻场工程师)
  • 临时或固化方案:固化
  • 操作复杂度:中
  • 业务影响:否
  • 风险等级:低
    说明:本方案关联的风险点为以下文档,也需要执行操作,进行修复,具体事宜请联系阿里云技术支持。
    • KB 146907 通用方案:专有云V3.8环境网络集群问题的检查及修复方法

2. 问题描述

专有云V3环境,由于OOM异常导致tj_proxy进程被结束,从而出现多数OPS服务器未达终态。

3. 解决方案

3.1. 环境检查

上传test-tianji_fix38.py脚本

  1. test-tianji_fix38.py脚本文件拷贝到OPS服务器的/tmp/zlw-test目录中。
  2. 登录OPS服务器,依次执行以下命令,确认压缩包的MD5值。
    cd /tmp/zlw-test
    md5sum test-tianji_fix38.py
    系统显示类似如下。
    {607F65A1-7836-46C2-A2D5-D6829A3BB047}_20200224162809.jpg

查看test-tianji的任务数量

  1. 执行以下命令,查看并记录test-tianji集群的任务数量。
    curl "localhost:7070/api/v3/column/rolling.cluster" | grep cluster | grep test_tianji | wc -l
    系统显示类似如下。
    {D86792BF-F7D1-428A-AF7B-DEF2D5D54B18}_20200224163546.jpg
  2. 执行以下命令,将集群名称写入到tianji_test_cluster.txt文件中。
    curl "localhost:7070/api/v3/column/rolling.cluster" | grep cluster | grep test_tianji | sort | uniq | awk '{print $2}' | sed "s/\"//g" > /tmp/tianji_test_cluster.txt
    系统显示类似如下。
    111.png

3.2. 实施步骤

删除某指定集群的Rolling任务

  1. 登录OPS服务器,执行以下命令,查询某一个集群的Rolling任务数量。
    curl "localhost:7070/api/v3/column/rolling.version?rolling.cluster=test_tianji_rolling_1" |wc -l
    说明:本文以test_tianji_rolling_1为例。
    系统显示类似如下。
    {9DD51DD2-DE5F-4B71-938C-2C9679A6935D}_20200224164442.jpg
  2. 执行以下命令,删除该集群的Rolling任务数量。
    curl 'localhost:7070/api/v5/BatchDeleteRollingJob?cluster=test_tianji_rolling_1'
  3. 执行以下命令,再次查询集群的Rolling任务数量。显示为空,证明删除成功。
    curl "localhost:7070/api/v3/column/rolling.version?rolling.cluster=test_tianji_rolling_1"

删除全部test-tianji集群的Rolling任务

执行以下命令,删除全部test-tianji集群的Rolling任务。

/home/tops/bin/python test-tianji_fix38.py /tmp/tianji_test_cluster.txt

系统显示类似如下,根据提示输入Y

{39F9A1C5-800C-493C-A134-F504683F03EF}_20200224165042.jpg

每一个集群都需要输入Y,任务才会继续,直到执行完毕为止。

{CFC58A1A-6D17-4969-B471-BC9F080E8432}_20200224165221.jpg

3.3. 结果验证

登录OPS服务器,执行以下命令,确认Rolling任务数量为0,则表示清理成功。

curl "localhost:7070/api/v3/column/rolling.cluster" | grep cluster | grep test_tianji | wc -l

{003AA878-DC32-4BD7-A1D4-15B0C7A16996}_20200224165542.jpg

4. 回滚方案

无需回滚。