通用方案:专有云V3环境ECS集群盘古水位过高的处理方法

通用方案:专有云V3环境ECS集群盘古水位过高的处理方法

更新时间:2020-06-29 13:58:59

1. 概述

本文主要介绍在专有云V3环境ECS集群中,盘古水位过高的处理方法。

1.1. 适用范围

  • 专有云V3,ECS、盘古

1.2. 用户告知

  • 操作方式:灰屏
  • 操作复杂度:中
  • 风险等级:中
    说明:释放您无用的磁盘,需要您先判断是否可以释放,在您确定的情况下执行本方案。
  • 需要订正houyiregiondb数据库的cluster_info表。
  • 操作步骤中需保证cluster_name和cluster_id的正确性。
  • 部分截图为测试环境,具体内容请以现场实际情况为准。

2. 问题描述

在专有云V3环境的ECS集群中,盘古服务磁盘使用率过高,需紧急处理。

3. 解决方案

3.1. 环境检查

查看ECS集群盘古服务的回收站大小

根据不同环境实施以下操作,查看ECS集群盘古服务的回收站大小。

适用于专有云V2环境
  1. 登录ECSAG服务器,关于如何登录ECSAG服务器,请参见专有云如何登录ECSAG服务器
  2. 执行以下命令,查看Total Free Disk Size参数的值。
    /apsara/deploy/puadmin lscs | grep ^Total
    系统显示类似如下。
  3. 执行以下命令,查看盘古回收站大小。
    /apsara/deploy/pu quota /deleted/
适用于专有云V3环境
  1. 登录天基控制台,在Project框中搜索ecs,单击ECS-river-A-XXXX集群右侧的集群运维中心,选择EcsRiverMaster服务和RiverMaster#服务角色,单击Terminal,登录RiverMaster#服务角色对应的机器。
  2. 执行以下命令,查询对应集群的total值,确认磁盘使用率较高的集群。
    /apsara/river/river_admin master ls cluster
    系统显示类似如下。
  3. 在盘古服务的磁盘使用率较高的ECS集群中,选择pangu服务和PanguTools#服务角色,单击搜索结果右侧的Terminal,登录对应的机器。
  4. 执行以下命令,查看盘古回收站大小。
    /apsara/deploy/pu quota /deleted/
    系统显示类似如下。
    说明:盘古的环境为3个副本,即物理大小=逻辑大小*3,以下是关于图中参数的说明:
    • EntryNumber Limit:目录数,单位为个。
    • FileNumber Limit:文件数,单位为个。
    • FilePhysicalLength Limit:物理大小,单位为字节。
    • FileLogicalLength Limit:逻辑大小,单位为字节。

检查集群的盘古回收站周期

注意:专有云V2环境和专有云V3环境的混部集群在集群AG服务器上执行,专有云V3存储集群在该集群的PanguTools#服务角色对应的机器上执行。

执行以下命令,检查集群的盘古回收站周期,单位为秒。

/apsara/deploy/puadmin flag -get pangu_master_DelayTimeForFileGC -m

系统显示类似如下。

检查houyiregiondb数据库的延迟删除时间

  1. 登录houyiregiondb数据库,关于如何登录houyiregiondb数据库,请参见专有云如何查找ecsdriver和houyiregiondb数据库
  2. 执行以下SQL语句,查询ECS集群对应的cluster_id。
    select * from zone\G
    系统显示类似如下。
  3. 执行以下SQL语句,查看对应集群的deleted_disk_preserve值。
    select * from cluster_info;
    系统显示类似如下。

3.2. 实施步骤

查询盘古集群内所有磁盘的实际大小

  1. 登录houyiregiondb数据库,执行以下SQL语句,修改磁盘在houyi层的释放速度。
    update cluster_info set deleted_disk_preserve='[$Deleted_Disk_Preserve]' where cluster_id='[$Cluster_ID]';
    说明: 
    • [$Deleted_Disk_Preserve]为需要修改的时间,单位为小时。
    • [$Cluster_ID]为集群对应的cluster_id。
    系统显示类似如下。
  2. 执行以下命令,确定回收站数据可释放,则手动释放回收站。
    注意:专有云V2环境和专有云V3环境的混部集群在集群AG服务器执行以下命令,专有云V3环境存储集群在该集群PanguTools#服务角色对应机器上执行以下命令。
    /apsara/deploy/puadmin fs -crb
  3. 使用Support Tool查询盘古集群内所有磁盘的实际大小,和客户确认较大的磁盘是否可进行释放,降低盘古使用量。如果确认可以释放,则进行磁盘释放操作,否则停止操作。
    • 专有云V3环境在计算存储混部集群AG服务器执行以下命令,通过集群名进行查询。
      ./AS_SupT -p ecs_vmdisk_usage_v3 -e -o '--cluster_name=[$Cluster_Name]' 
      说明:[$Cluster_Name]为集群名。
      系统显示类似如下。

    • 在专有云V2环境通过以下操作查询盘古集群内所有磁盘的实际大小。
      1. 下载以下脚本文件并上传到集群AG服务器。
        check_device_info.sh
        check_houyi_device_size.sh

      2. 执行以下命令,使用cluster_id进行查询。

        ./check_houyi_device_size.sh [$Cluster_ID] |while read out; do sh ./check_device_info.sh "$out"; done

释放磁盘

注意:确认可以释放,则进行磁盘释放操作,否则停止操作。

在专有云控制台和ASCM平台释放相应磁盘,具体环境例图如下。

专有云控制台

登录专有云控制台,释放相应的磁盘。

ASCM控制台

登录ASCM控制台,释放相应的磁盘。

3.3. 结果验证

确认集群中盘古服务的磁盘使用率逐渐下降。

  1. 登录houyiregiondb数据库,执行以下SQL语句,检查延迟删除时间,确认对应集群的deleted_disk_preserve值已修改。
    select * from cluster_info;   
  1. 在专有云V3坏境的存储集群中,登录该集群PanguTools#服务角色对应的机器,执行以下命令,确认盘古回收站大小已下降。
    说明:专有云V2环境需要登录ECSAG服务器。
    /apsara/deploy/pu quota /deleted/        

4. 回滚方案

参见查询盘古集群内所有磁盘的实际大小部分的步骤1,登录houyiregiondb数据库,恢复磁盘在houyi层的延迟删除时间。