使用OOS实现自动删除创建于7天前的镜像

本文涉及的产品
系统运维管理,不限时长
简介: 基于OOS实现自动删除创建于7天前的镜像

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


场景介绍
基于OOS实现自动删除创建于7天前的镜像。


操作步骤
1.登陆OOS控制台,找到我的模板,点击创建模板
image.png
2.选择空白模版
image.png


3.复制下文提供的模板到YAML栏中,输入模板名称(Delete-ExpiredImage),点击创建模板
image.png


模板(Delete-ExpiredImage)内容:


FormatVersion: OOS-2019-06-01
Description: ''
Parameters:
regionId:
Type: String
Description:
  en: The id of region.
  zh-cn: 地域ID。
AssociationProperty: RegionId
Default: '{{ ACS::RegionId }}'

force:

Description:
  en: Specifies whether to forcibly delete the image.
  zh-cn: 是否强制删除镜像。
Type: Boolean
Default: false

expiredDays:

Description:
  en: The expired days of image.
  zh-cn: 镜像过期天数。
Type: Number
Default: 7

rateControl:

Description:
  en: Concurrency ratio of task execution.
  zh-cn: 任务执行的并发比率。
Type: Json
AssociationProperty: RateControl
Default:
  Mode: Concurrency
  MaxErrors: 100%
  Concurrency: 10

Tasks:

Name: describeImages

Action: 'ACS::ExecuteAPI'
Description: ''
Properties:
  Service: ECS
  API: DescribeImages
  Parameters:
    RegionId: '{{ regionId }}'
    ImageOwnerAlias: self
    Filter:

Key: CreationEndTime
Value:

'Fn::FormatUTCTime':

'Fn::AddHour':

'{{ ACS::CurrentUTCTime }}'

"Fn::Eval":

'-{{ expiredDays }}*24''%Y-%m-%dT00:00Z'
Outputs:
imageIds:

Type: List
ValueSelector: '.Images.Image[].ImageId'

Name: deleteImages

Action: 'ACS::ExecuteAPI'
Description:
  en: Delete the expired images.
  zh-cn: 删除过期镜像。
Properties:
  Service: ECS
  API: DeleteImage
  Parameters:
    RegionId: '{{ regionId }}'
    ImageId: '{{ ACS::TaskLoopItem }}'
    Force: '{{ force }}'
Loop:
  Items: '{{ describeImages.imageIds }}'
  RateControl: '{{ rateControl }}'

Outputs:

deletedImageIds:

Type: List
Value: '{{ describeImages.imageIds }}'</code></pre>

定时执行模版
1.找到定时运维,点击创建,选择周期性重复执行,设置定时执行的规则。
截图所示规则:截止规则结束时间,每天0点0分定时执行制指定模板
image.png


2.模板选择,选择上文创建的模板。参数设置,选择目标地域,点击确认风险并执行。
image.png


3.在执行详情页中可以查看定时执行列表和所操作的资源。
image.png

相关文章
|
Java 测试技术 API
解决harbor上删除镜像不释放空间,无需停止harbor
解决harbor上删除镜像不释放空间 docker镜像仓库中镜像的清理,一直是个比较麻烦的事情。尤其是在测试环境当中,每天都会有大量的构建。由此会产生大量的历史镜像,而这些镜像,大多数都没有用。
2515 0
|
5月前
|
Docker 容器
在Docker中,如何批量清理临时镜像文件?
在Docker中,如何批量清理临时镜像文件?
|
5月前
|
Kubernetes 容器 Perl
在K8S中,镜像的更新策略是什么?
在K8S中,镜像的更新策略是什么?
|
7月前
|
消息中间件 弹性计算 缓存
通过OOS定时升级Redis实例临时带宽
阿里云OOS提供了定时升级Redis实例临时带宽的功能,以应对数据驱动业务中的流量高峰。这个功能允许用户根据预测的业务负载,在特定日期和时间自动增加Redis实例的带宽,确保服务性能和稳定性。在高流量事件结束后,带宽会自动恢复到原设置,节省成本。 此功能适用于电商平台促销、大型游戏更新等场景,确保在流量高峰期间的系统稳定运行。
|
Web App开发 弹性计算 运维
通过OOS实现自动定时开关机
本场景介绍如何快速通过OOS运维编排服务实现定时开关机。
|
弹性计算
使用OOS定时给特定名称开头的ECS实例打标签
使用OOS定时给名称中包含特定字符开头的ECS实例打标签。
使用OOS定时给特定名称开头的ECS实例打标签
|
弹性计算 Cloud Native Ubuntu
实现docker镜像中使用crontab定时删除n天前日志
实现docker镜像中使用crontab定时删除n天前日志
890 0
使用OOS定时清理指定Tag下的镜像
使用OOS定时清理指定标签下的镜像
|
Kubernetes Shell Python
实战使用harborAPI批量删除镜像
实战使用harborAPI批量删除镜像
使用OOS自动删除7天前创建的快照
基于OOS实现自动删除创建于7天前的快照。
使用OOS自动删除7天前创建的快照

热门文章

最新文章