当前位置:网站首页>AWS实现定时任务-Lambda+EventBridge
AWS实现定时任务-Lambda+EventBridge
2022-07-31 13:41:00 【心软且酷丶】
概述:
我们要在aws上实现定时任务,例如:操作aws的ec2实例实现定时开关机需求,如何实现?最简便的方法是使用aws的lambda函数服务+EventBridge定时器服务
实现办法:
1.登录aws控制台,搜索lambda服务:

2.点击进去之后创建新函数:


3.编辑函数名称(自定义,使用英文),运行语言,基本常用的python,ruby,nodejs,java,go等全部支持,选择自己擅长的语言即可:

4.权限这块需要注意下,因为登录的账号角色不一定有aws某个服务的权限,例如有lambda的权限,但是你要操作ec2实例,但是没有ec2实例的权限,这个到了test的时候会有日志,到时候具体问题具体分析,我们这里选择创建新角色:

5.创建完之后编写lambda函数的代码-我们以启动ec2实例为例子,代码如下:
import boto3
# Enter the region your instances are in, e.g. 'us-east-1'
region = 'ap-test' ## ec2实例所在区域
# Enter your instances here: ex. ['X-XXXXXXXX', 'X-XXXXXXXX']
instances = ['i-0424dddddd1222'] ## 实例id
def lambda_handler(event, context):
ec2 = boto3.client('ec2', region_name=region)
ec2.start_instances(InstanceIds=instances)
print('启动ec2实例: ' + str(instances))
6.编写完点击deploy保存代码,然后点击配置:

7.在配置里修改点击编辑,修改3个重要的参数,修改完之后点击保存:

重要:(不修改会导致日志报各种奇怪的错)
内存修改为:1024M
短暂存储修改为:512M
超时时间修改为:15分钟
角色选择4里自建或者已有权限的角色

8.返回代码编辑部分,已保存代码,点击Test测试代码是否可以正常运行:
目前此ec2实例处于关机状态,测试是否可以通过lambda函数实现操作它开机

函数显示测试成功,返回ec2服务页面查看实例是否启动:

实例也正常启动了,证明lambda函数已生效:
9.在EventBridge里添加定时任务:

10.创建新规则:

如果是长期定时的周期性任务选择计划类
举例:每天的12:20执行任务
注意:
时间选择本地时间,否则会导致与实际时间不相符
因为aws ec2的时区是utc时间,所以其实实际情况是:你想要当前上午12点20执行任务,你必须设置本地时区时间并且往前推算8小时,也就是12点20的任务,cron里输入 20 04 * * ? *

11.点击下一步保存(最好是找个调试完的就近时间测试下)
12.创建完之后可以看到在EventBridge定时服务里已经生效

13.也可以在cloudwatch里去查看定时任务的执行日志, 去判断定时任务是否每天正常在运行

边栏推荐
- 推荐系统-召回阶段-2013:DSSM(双塔模型)【Embedding(语义向量)召回】【微软】
- How IDEA runs web programs
- Miller_Rabin 米勒拉宾概率筛【模板】
- pytorch gpu版本安装最新
- C# control ListView usage
- Even if the image is missing in a large area, it can also be repaired realistically. The new model CM-GAN takes into account the global structure and texture details
- SAP 电商云 Spartacus SSR Optimization Engine 几处 timeout 的执行顺序
- 基于模糊预测与扩展卡尔曼滤波的野值剔除方法
- What should I do if selenium is reversed?
- 聊聊 SAP 产品 UI 上的消息显示机制
猜你喜欢

Hard disk partition, expand disk C, no reshipment system, not heavy D dish of software full tutorial.

Solution for browser hijacking by hao360

CLion用于STM32开发

hyperf的启动源码分析(二)——请求如何到达控制器

C# control ToolStripProgressBar usage

All-round visual monitoring of the Istio microservice governance grid (microservice architecture display, resource monitoring, traffic monitoring, link monitoring)

LeetCode·每日一题·1161.最大层内元素和·层次遍历

Error IDEA Terminated with exit code 1

技能大赛训练题:登录安全加固

Golang - gin - pprof - use and safety
随机推荐
ECCV2022:在Transformer上进行递归,不增参数,计算量还少!
IDEA如何运行web程序
Detailed explanation of network protocols and related technologies
JSP中如何借助response对象实现页面跳转呢?
ECCV2022: Recursion on Transformer without adding parameters and less computation!
CLion用于STM32开发
基于高阶微分器的无模型滑模控制器及其在自动电压调节器中的应用
Network layer key protocol - IP protocol
代码随想录笔记_哈希_454四数相加II
机器学习模型验证:被低估的重要一环
拥塞控制,CDN,端到端
技能大赛训练题:域用户和组织单元的创建
golang-gin-pprof-使用以及安全问题
LeetCode·304竞赛·6132·使数组中所有元素都等于零·模拟·哈希
Solution for browser hijacking by hao360
Text similarity calculation (Chinese and English) detailed explanation of actual combat
Save and load numpy matrices and vectors, and use the saved vectors for similarity calculation
C# List用法 List介绍
Edge Cloud Explained in Simple Depth | 4. Lifecycle Management
百度网盘安装在c盘显示系统权限限制的解决方法