基于OOS实现定时清理磁盘

本文涉及的产品
系统运维管理,不限时长
简介: 当磁盘使用率超过指定阀值时,自动清理指定ECS实例的文件。

OOS简介

Operation Orchestration Service,简称OOS,是全面、免费的云上自动化运维平台,提供运维任务的管理和执行。典型使用场景包括:事件驱动运维,批量操作运维,定时运维任务,跨地域运维等,OOS为重要运维场景提供审批,通知等功能。OOS帮您实现标准化运维任务,从而实践运维即代码(Operations as Code)的先进理念。关于OOS更详细的介绍请参见什么是运维编排服务

操作步骤

1.登陆OOS控制台,找到我的模板,点击创建模板
image.png
2.选择空白模版。
image.png
3.复制下文提供的模板到YAML栏中,输入模板名称(CleanUpDisks,点击创建模板
image.png
模板内容:

FormatVersion: OOS-2019-06-01
Description:
  en: Clean up disks.
  zh-cn: 定时清理磁盘。
  name-en: CleanUpDisks
  name-zh-cn: 清理磁盘
Parameters:
  regionId:
    Type: String
    Description:
      en: The id of region.
      zh-cn: 地域ID。
    AssociationProperty: RegionId
    Default: '{{ ACS::RegionId }}'
  tagValues:
    Description:
      en: The value list of tag.
      zh-cn: 标签值列表。
    Type: List
  cleanUpInfos:
    Description:
      en: 'The infos of disk to clean up.Format: 3d|/root/log/|*.log,3h|/root/log/|*.access,30m|C:\Users\Administrator\log\|*.log.'
      zh-cn: 磁盘清理信息。格式:3d|/root/log/|*.log,3h|/root/log/|*.access,30m|C:\Users\Administrator\log\|*.log
    Type: String
  threshold:
    Description:
      en: The disk usage threshold.
      zh-cn: 磁盘使用率阈值。
    Type: Number
    MaxValue: 100
  rateControl:
    Description:
      en: Concurrency ratio of task execution.
      zh-cn: 任务执行的并发比率。
    Type: Json
    AssociationProperty: RateControl
    Default:
      Mode: Concurrency
      MaxErrors: 0
      Concurrency: 10
  OOSAssumeRole:
    Description:
      en: The RAM role to be assumed by OOS.
      zh-cn: OOS扮演的RAM角色。
    Type: String
    Default: OOSServiceRole
RamRole: '{{ OOSAssumeRole }}'
Tasks:
  - Name: getInstance
    Description:
      en: Views the ECS instances.
      zh-cn: 获取ECS实例。
    Action: 'ACS::ExecuteApi'
    Properties:
      Service: ECS
      API: DescribeInstances
      Parameters:
        RegionId: '{{ regionId }}'
        Tags:
          - Key: appgroup
            Value: "{{ ACS::TaskLoopItem }}"
    Loop:
      RateControl: '{{ rateControl }}'
      Items: '{{ tagValues }}'
      Outputs:
        instanceIds:
          AggregateType: Fn::ListJoin
          AggregateField: instanceId
    Outputs:
      instanceId:
        Type: List
        ValueSelector: 'Instances.Instance[].InstanceId'
  - Name: cleanUpDisk
    Action: 'ACS::ECS::CleanUpDisk'
    Description:
      en: Execute cloud assistant command to clean up disk.
      zh-cn: 执行云助手命令清理磁盘。
    Properties:
      regionId: '{{ regionId }}'
      instanceId: '{{ ACS::TaskLoopItem }}'
      threshold: '{{ threshold }}'
      cleanUpInfos: '{{ cleanUpInfos }}'
    Loop:
      RateControl: '{{ rateControl }}'
      Items:
        'Fn::Jq':

          - First
          - '[.[][]]'
          - '{{ getInstance.instanceIds }}'

执行模板

1.找到CleanUpDisks,点击创建执行,点击下一步:设置参数

image.png

2.根据提示设置参数,点击下一步:确定

image.png
参数解释:

  • regionId: 地域。
  • tagValues: 标签值,List类型,每行表示不同的值。TagKey已固定为:appgroup。
  • cleanUpInfos: 磁盘清理信息,3d|/root/log/|.log表示:删除/root/log/匹配.log的修改于3天前的所有文件,可输入过个清理规则,各个规则间用","隔开。
  • threshold: 磁盘使用率阀值,磁盘使用率超过阀值后会清理磁盘。
  • rateControl: 任务执行并发速率,使用默认值即可。

3.确认参数无误后,点击创建。执行完成后,可以在执行详情查看执行结果。

image.png

相关文章
|
6月前
|
消息中间件 弹性计算 缓存
通过OOS定时升级Redis实例临时带宽
阿里云OOS提供了定时升级Redis实例临时带宽的功能,以应对数据驱动业务中的流量高峰。这个功能允许用户根据预测的业务负载,在特定日期和时间自动增加Redis实例的带宽,确保服务性能和稳定性。在高流量事件结束后,带宽会自动恢复到原设置,节省成本。 此功能适用于电商平台促销、大型游戏更新等场景,确保在流量高峰期间的系统稳定运行。
|
6月前
|
弹性计算 UED
通过OOS定时升级EIP实例临时带宽
阿里云推出了一项定时升级EIP(弹性公网IP)带宽的功能,旨在解决企业在特定流量高峰时段的网络带宽需求。此功能允许用户预设特定日期和时间自动升级带宽,如电商大促、直播活动或数据备份期间,以确保服务稳定并降低成本。用户可通过OOS控制台设置自动化任务,包括定时类型(立即、一次或周期性)、EIP实例地域、带宽值、升级持续时间和执行速率控制。在流量高峰过后,带宽会自动恢复到原设定,以节省费用。此功能适用于按固定带宽计费的EIP实例,不支持按流量计费的公网带宽。
|
7月前
|
存储 运维 NoSQL
通过OOS实现定时备份Redis实例转储到OSS
基于阿里云 Redis 备份功能,现结合 OOS 推出自动转储至 OSS 的新方案,解决了数据安全风险、运维繁琐、成本增加和效率低下等问题。新方案亮点包括: 1. 数据安全性提高:备份文件自动上传至OSS,利用OSS的数据冗余存储,保证数据在硬件故障时的持久性和可用性。 2. 完全自动化:设置好定时规则后,备份和转储过程无需人工干预。 3. 多实例多地域集中管理:支持一次选择多个实例和跨区域备份,简化管理。 4. 灵活的备份策略和成本控制:自定义备份频率,并通过OSS生命周期管理策略控制成本。 5. 监控和告警:集成OSS和云监控,实时掌握备份状态,及时处理异常。
通过OOS实现定时备份Redis实例转储到OSS
|
7月前
|
弹性计算 运维 Shell
自动清理临时文件
【4月更文挑战第30天】
46 0
|
Web App开发 弹性计算 运维
通过OOS实现自动定时开关机
本场景介绍如何快速通过OOS运维编排服务实现定时开关机。
如何清理磁盘
我们的电脑在使用的过程当中会出现很多的垃圾占用内存,我们每天使用电脑之后清理一下比较好
如何清理磁盘
使用OOS定时清理指定Tag下的镜像
使用OOS定时清理指定标签下的镜像
快速清理C盘的四个方法
快速清理C盘的四个方法
515 0
快速清理C盘的四个方法
|
Kubernetes 容器
DataStreams+logstash+ILM进行日志定时删除,节省硬盘资源
目前所有的K8S上的容器日志都被收集到了我们的ELK上,随着时间的推移,ELK上的日志所占的存储空间越来越多,我们需要一个定时清理的策略,以节约硬盘资源。 我们主要配置以下ELK里的这几个地方 1.通过kibana新增一个lifecycle policies 2.通过kibana新增一个index template,注意配置DataStreams 3.logstash 的logstashPipeline 4.filebeat的filebeat.yml文件
948 0
DataStreams+logstash+ILM进行日志定时删除,节省硬盘资源
使用OOS自动删除7天前创建的快照
基于OOS实现自动删除创建于7天前的快照。
使用OOS自动删除7天前创建的快照