QCon北京「鸿蒙专场」火热来袭!即刻报名,与创新同行~ 了解详情
写点什么

Amazon CloudWatch Events 监控您应用的安全

  • 2019-11-20
  • 本文字数:1262 字

    阅读完需:约 4 分钟

Amazon CloudWatch Events监控您应用的安全

每个应用程序时刻都在产生事件,Amazon CloudWatch Events 能帮助您针对应用的事件进行有针对性的响应和处理,及时响应,并处理错误事件,存储和分析潜在的告警信息。在接下来的篇幅里,我将利用 AWS 的 CloudWatch Events,Lambda,SNS,SQS 等服务向您展示如何及时分析与处理应用事件。


在这个场景中,我将应用事件划分分三个等级(当然,在您的具体业务场景中,您可以根据实际情况划分任意多的等级),Green,Yellow,Red。Green 代表应用正常,您不需要进行任何动作。Yellow 表示您应用的健康检查失败,通过 Lambda 来处理该类型事件。Red 表示您的应用在至少一台服务器上已经失败,立即通知运维部门处理。


以下是该场景中的架构示意图:


1. 最左边为您的应用服务器群,他们将各自的事件发送给 CloudWatch Events;


2. 在 CloudWatch Events 中设置 Rule 来进行区分,并将对应的事件发送相应的目标,如 Lambda,SNS,SQS;


3. 目标在收到事件后进行相应的处理;



具体步骤:


1.   创建 3 个目标,Lambda,SNS,SQS;


1.1, 目标 1,创建 Lambda 函数,SampleAppDebugger;



1.2, 目标 2,创建 SNS 主题,RedHealthNotifier;



1.3, 目标 3,创建 SQS 消息队列,ReportInspectionQueue;



2.   创建 CloudWatch Events Rule


2.1, 将以下内容保存为 YellowPattern.json;



2.2, 使用以下命令创建名为 myCustomHealthStatusYellow 的规则;



2.3, 使用以下命令创建目标;



2.4, CloudWatch Event 需要将事件发送给 Lambda,所以需要给 Lambda 添加适当权限允许 CloudWatch 这么做;



3.   重复上面的步骤创建第 2 条规则,并设置目标为 SQS 和 SNS,特别注意,不要忘记给 SNS,SQS 设置相应权限以允许 CloudWatch 发送事件过来;


3.1, 使用以下命令创建名为 myCustomHealthStatusRed 的规则,这里的 RedPattern.json 文件其实是将 2.1 步骤中的 YellowPattern.json 是一样的,只是将内容中的 Yellow 替换成了 Red;




3.2, 创建两个目标,SQS,SNS;




3.3, 添加权限允许 CloudWatch Events 发送事件;




其他 SNS,SQS 权限设置相关,请参考该官方链接:http://docs.aws.amazon.com/zh_cn/AmazonCloudWatch/latest/events/resource-based-policies-cwe.html#sns-permissions


4.   进行测试,手动放入一些 Red 事件(我设置了个小脚本,每次运行都会放入 61 个事件),看看 SQS 及 SNS 情况;



这里我运行了三次脚本,所以 SQS 中有 183 条消息



看看邮箱中是否会收到邮件



5.   测试 Yellow 事件及 Lambda 反应;



Lambda 被触发的次数



作者介绍:



郑进佳


亚马逊 AWS 解决方案架构师,在加入 AWS 之前,在多家跨国公司有着超过 7 年的架构设计和项目管理的经验,对 AWS 云端高可用架构有着深刻的理解,以及对企业级应用如何迁移到云端的架构设计有实战方面的经验。


TAGS:


Amazon CloudWatch


,


大咖专栏


,


安全


,


管理工具



View Comments


[


亚马逊 AWS 官方博客目录


__](https://aws.amazon.com/cn/blogs/china/all/?nc1=b_nrp)


本文转载自 AWS 技术博客。


原文链接:


https://amazonaws-china.com/cn/blogs/china/cloudwatch-events/


2019-11-20 08:00738

评论

发布
暂无评论
发现更多内容

Spring高手之路13——BeanFactoryPostProcessor与BeanDefinitionRegistryPostProcessor解析

砖业洋__

spring springboot BeanFactoryPostProcessor BeanDefinitionRegistry

深度解读智能媒体服务的重组和进化

阿里云CloudImagine

云计算 视频云

MySQL索引,为什么索引会失效呢?

程序员万金游

MySQL Java'

IAM携手华为,创新科技解锁空净新标准

新消费日报

“创新机制+明星项目”组合拳| Leap Launchpad引领Web3金融服务新风潮

股市老人

博睿数据当选粤港澳大湾区金融创新研究院理事会单位,助力金融科技创新发展

博睿数据

博睿数据

聊聊Http服务化改造实践

树上有只程序猿

微服务架构 HTTP Feign

深入MaxCompute -第十二弹 -PIVOT/UNPIVOT

阿里云大数据AI技术

大数据

LeetCode题解:7. 整数反转,数组反转,JavaScript,详细注释

Lee Chen

JavaScript LeetCode

3DCAT携手华为,打造XR虚拟仿真实训实时云渲染解决方案

3DCAT实时渲染

虚拟仿真 实时渲染 CLOUDXR

一文学会List函数排序操作,20秒即可完成!

飞算JavaAI开发助手

易点天下受邀参与华为云印度尼西亚CXO-Camp 共探产业数字化转型新路径

新消费日报

“云渲染”,电影特效背后的技术

Finovy Cloud

云计算 渲染 云渲染

SAST工具编译命令捕获及参数处理实现

maijun

华为云828营销季火热进行中,3大热门产品助力中小企业云上成长

平平无奇爱好科技

物联网时序数据库 IoTDB 荣获清华校友三创大赛总决赛最高奖

Apache IoTDB

基于Vue前端框架构建BI应用程序

互联网工科生

Vue 低代码 BI 分析工具

跑AI大模型的K8s与普通K8s有什么不同?

华为云开发者联盟

人工智能 云计算 华为云 华为云开发者联盟 企业号 8 月 PK 榜

一座玉带桥,盘古通天下

脑极体

AI

Kubernetes实现微服务容器化

雾岛听风(锋)

微服务 k8s 容器化

2024光储充展|太原国际光储充技术装备展会

秋硕展览

展会 光伏展 储能展

Elasticsearch ILM Shrink Action源码优化与探讨

腾讯云大数据

ES

VS Code 的 launch.json 进行高效代码调试:配置和原理解析

麦田的守望者

【华为云828企业节上福利】软件开发工具升级版免费套餐重磅上线

平平无奇爱好科技

Amazon CloudWatch Events监控您应用的安全_语言 & 开发_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章