AWS-PatchAsgInstance自动化定时ASG组打补丁

2024-06-21 07:12

本文主要是介绍AWS-PatchAsgInstance自动化定时ASG组打补丁,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

问题

需要给AWS的EC2水平自动扩展组AutoScaling Group(ASG)中的EC2自动定期打补丁。

创建自动化运行IAM角色

找到创建角色入口页面,如下图:
创建角色入口页面
开始创建Systems Manager自动化运行的IAM角色,如下图:
自动化运行的角色创建开始
设置AmazonSSMAutomationRole权限,如下图:
AmazonSSMAutomationRole权限设置
设置AmazonSSMAutomationRole角色名和角色描述,点击创建角色,如下图:
创建AmazonSSMAutomationRole角色

创建AWS-PatchAsgInstance自定义策略

找到策略入口页面,开始创建策略如下图:
策略入口页面

AWS-PatchAsgInstance自动化文档,需要的权限内容,如下:

{"Version": "2012-10-17","Statement": [{"Sid": "Statement1","Effect": "Allow","Action": ["ssm:StartAutomationExecution","ssm:GetAutomationExecution","ssm:GetCommandInvocation","ssm:GetParameter","ssm:SendCommand","cloudformation:CreateStack","cloudformation:DeleteStack","cloudformation:DescribeStacks","ec2:CreateTags","ec2:DescribeInstances","ec2:RunInstances","iam:AttachRolePolicy","iam:CreateRole","iam:DeleteRole","iam:DeleteRolePolicy","iam:DetachRolePolicy","iam:GetRole","iam:PassRole","iam:PutRolePolicy","lambda:CreateFunction","lambda:DeleteFunction","lambda:GetFunction","lambda:InvokeFunction"],"Resource": "*"}]
}

将AWS-PatchAsgInstance需要的权限设置到策略中,如下图:
设置AWS-PatchAsgInstance策略权限
设置AWS-PatchAsgInstance策略名和描述,直接创建策略即可,如下图:
审核创建AWS-PatchAsgInstance自定义策略

然后,将创建好的AWS-PatchAsgInstance自定义策略绑定给AmazonSSMAutomationRole自动化角色,结果如下图:
AWS-PatchAsgInstance策略添加到AmazonSSMAutomationRole角色

自动化角色设置PassRole权限角色为自己

找到自动化角色AmazonSSMAutomationRole,如下图:
创建内联策略入口
策略内容如下:

{"Version": "2012-10-17","Statement": [{"Sid": "VisualEditor0","Effect": "Allow","Action": "iam:PassRole","Resource": "arn:aws-cn:iam::xxxxxxxxx:role/AmazonSSMAutomationRole"}]
}

将上述策略权限内容,复制策略编辑器中,如下图:
策略内容设置
设置AmazonSSMAutomationRolePolicy策略名称,如下图:
设置AmazonSSMAutomationRolePolicy策略名创建内联策略
最后AmazonSSMAutomationRole角色权限策略,如下图:
AmazonSSMAutomationRole角色权限策略

创建维护窗口

找到维护窗口创建页面入口,如下图:
维护窗口入口页面
设置维护窗口,如下图:
设置维护窗口
这里去掉“允许已注销目标”的勾选,意思没有被AWS SSM托管到的EC2目标,不会执行这个维护任务。
后面是设置每周六凌晨1点定时执行维护任务,维护窗持续时间为1个小时。如果在这1个小时内没有执行完,就不执行了(停止启动任务为0小时)。这里的时区为东八区。
最后点击“创建维护时段”。

注册维护目标

找到维护窗口,入口页面如下图:
维护窗口入口页面
找到注册目标入口页面,如下图:
注册目标入口页面
设置注册目标,如下图:
设置注册目标
这里主要通过EC2实例选择标签Name进行识别dev相关EC2实例。

注册维护任务

找到注册维护任务入口页面,如下图:
注册维护任务入口页面
设置使用AWS-PatchAsgInstance自动注册任务,并且,设置上一步已经注册的目标组,而且,设置变量InstanceId为{{ TARGET_ID }},并且,这个任务是一个一个执行,执行完一个没有错误就执行下一个。设置之前的IAM服务角色。最后,点击注册自动化任务。如下图:
注册自动化任务

查看历史记录

找到查询历史记录网页入口,如下图:
历史记录网络入口
查看到成功结果,即可,如下图:
成功结果

注意

加入了定时维护窗口的AutoScaling组,需要禁用自动缩容策略,不然,这个自动任务可能找不到EC2实例;还有就是AutoScaling组所需EC2实例数,需要大于AutoScaling组最小EC2实例数。只有这个两个AutoScaling组条件满足,才能使用自动维护窗口。

总结

使用自动化维护任务打补丁,还算简单,只是对AutoScaling有自动缩容限制。第一步合规性就是每天扫描一次所有EC2是否合规,定时自定化维护任务,就是每周六半天打补丁。

参考:

  • 方法 2:使用 IAM 为自动化配置角色
  • 创建维护时段(控制台)
  • 为维护时段分配任务(控制台)
  • 注册维护时段任务时使用伪参数
  • AutoScalingで1台ずつ自動的にパッチを当てるSSM Automationやってみた

这篇关于AWS-PatchAsgInstance自动化定时ASG组打补丁的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1080542

相关文章

如何使用celery进行异步处理和定时任务(django)

《如何使用celery进行异步处理和定时任务(django)》文章介绍了Celery的基本概念、安装方法、如何使用Celery进行异步任务处理以及如何设置定时任务,通过Celery,可以在Web应用中... 目录一、celery的作用二、安装celery三、使用celery 异步执行任务四、使用celery

什么是cron? Linux系统下Cron定时任务使用指南

《什么是cron?Linux系统下Cron定时任务使用指南》在日常的Linux系统管理和维护中,定时执行任务是非常常见的需求,你可能需要每天执行备份任务、清理系统日志或运行特定的脚本,而不想每天... 在管理 linux 服务器的过程中,总有一些任务需要我们定期或重复执行。就比如备份任务,通常会选在服务器资

Jenkins中自动化部署Spring Boot项目的全过程

《Jenkins中自动化部署SpringBoot项目的全过程》:本文主要介绍如何使用Jenkins从Git仓库拉取SpringBoot项目并进行自动化部署,通过配置Jenkins任务,实现项目的... 目录准备工作启动 Jenkins配置 Jenkins创建及配置任务源码管理构建触发器构建构建后操作构建任务

高效+灵活,万博智云全球发布AWS无代理跨云容灾方案!

摘要 近日,万博智云推出了基于AWS的无代理跨云容灾解决方案,并与拉丁美洲,中东,亚洲的合作伙伴面向全球开展了联合发布。这一方案以AWS应用环境为基础,将HyperBDR平台的高效、灵活和成本效益优势与无代理功能相结合,为全球企业带来实现了更便捷、经济的数据保护。 一、全球联合发布 9月2日,万博智云CEO Michael Wong在线上平台发布AWS无代理跨云容灾解决方案的阐述视频,介绍了

让树莓派智能语音助手实现定时提醒功能

最初的时候是想直接在rasa 的chatbot上实现,因为rasa本身是带有remindschedule模块的。不过经过一番折腾后,忽然发现,chatbot上实现的定时,语音助手不一定会有响应。因为,我目前语音助手的代码设置了长时间无应答会结束对话,这样一来,chatbot定时提醒的触发就不会被语音助手获悉。那怎么让语音助手也具有定时提醒功能呢? 我最后选择的方法是用threading.Time

【Linux 从基础到进阶】Ansible自动化运维工具使用

Ansible自动化运维工具使用 Ansible 是一款开源的自动化运维工具,采用无代理架构(agentless),基于 SSH 连接进行管理,具有简单易用、灵活强大、可扩展性高等特点。它广泛用于服务器管理、应用部署、配置管理等任务。本文将介绍 Ansible 的安装、基本使用方法及一些实际运维场景中的应用,旨在帮助运维人员快速上手并熟练运用 Ansible。 1. Ansible的核心概念

如何使用Ansible实现CI/CD流水线的自动化

如何使用Ansible实现CI/CD流水线的自动化 持续集成(CI)和持续交付(CD)是现代软件开发过程中的核心实践,它们帮助团队更快地交付高质量的软件。Ansible,作为一个强大的自动化工具,可以在CI/CD流水线中发挥关键作用。本文将详细介绍如何使用Ansible实现CI/CD流水线的自动化,包括设计流水线的结构、配置管理、自动化测试、部署、以及集成Ansible与CI/CD工具(如Jen

ActiveMQ—消息特性(延迟和定时消息投递)

ActiveMQ消息特性:延迟和定时消息投递(Delay and Schedule Message Delivery) 转自:http://blog.csdn.net/kimmking/article/details/8443872 有时候我们不希望消息马上被broker投递出去,而是想要消息60秒以后发给消费者,或者我们想让消息没隔一定时间投递一次,一共投递指定的次数。。。 类似

BIRT 报表的自动化测试

来源:http://www.ibm.com/developerworks/cn/opensource/os-cn-ecl-birttest/如何为 BIRT 报表编写自动化测试用例 BIRT 是一项很受欢迎的报表制作工具,但目前对其的测试还是以人工测试为主。本文介绍了如何对 BIRT 报表进行自动化测试,以及在实际项目中的一些测试实践,从而提高了测试的效率和准确性 -------

文章解读与仿真程序复现思路——电力自动化设备EI\CSCD\北大核心《考虑燃料电池和电解槽虚拟惯量支撑的电力系统优化调度方法》

本专栏栏目提供文章与程序复现思路,具体已有的论文与论文源程序可翻阅本博主免费的专栏栏目《论文与完整程序》 论文与完整源程序_电网论文源程序的博客-CSDN博客https://blog.csdn.net/liang674027206/category_12531414.html 电网论文源程序-CSDN博客电网论文源程序擅长文章解读,论文与完整源程序,等方面的知识,电网论文源程序关注python