AWS 专题学习 P12 (CloudWatch、CloudTrail、AWS Config)

文章目录

  • 专题总览
  • 1. CloudWatch
    • 1.1 Amazon CloudWatch Metrics
    • 1.2 CloudWatch Metric Streams
    • 1.3 CloudWatch Logs
      • CloudWatch Logs - Sources
      • CloudWatch Logs Metric Filter & Insights
      • CloudWatch Logs – S3 Export
      • CloudWatch Logs Subscriptions
      • CloudWatch Logs Aggregation Multi-Account & Multi Region
      • CloudWatch Logs for EC2
      • CloudWatch Logs Agent & Unified Agent
    • 1.4 CloudWatch Unified Agent – Metrics
    • 1.5 CloudWatch Alarms(CloudWatch 报警)
      • CloudWatch Alarm Targets(CloudWatch 报警目标)
      • CloudWatch Alarms – Composite Alarms(CloudWatch 报警 - 组合报警)
      • EC2 Instance Recovery(EC2 实例恢复)
      • CloudWatch Alarm: good to know
    • 1.6 Amazon EventBridge
      • Amazon EventBridge Rules
      • Amazon EventBridge – Schema Registry
      • Amazon EventBridge – Resource-based Policy
    • 1.7 CloudWatch Insights
      • CloudWatch Container Insights
      • CloudWatch Lambda Insights
      • CloudWatch Contributor Insights
      • CloudWatch Application Insights
      • CloudWatch Insights 和运维可见性
  • 2. AWS CloudTrail
    • 2.1 CloudTrail Diagram
    • 2.2 CloudTrail Events
    • 2.3 CloudTrail Insights
    • 2.4 CloudTrail Events Retention
    • 2.5 Amazon EventBridge - 拦截 API 调用
  • 3. AWS Config
    • 3.1 Config Rules
    • 3.2 AWS Config Resource
    • 3.3 Config Rules - Remediations
    • 3.4 Config Rules - Notifications
    • 3.5 CloudWatch vs CloudTrail vs Config

专题总览

专题内容总览和系列博客目录
https://blog.csdn.net/weixin_40815218/article/details/135590291
辅助资料(PDF)
https://download.csdn.net/download/weixin_40815218/88741566

1. CloudWatch

1.1 Amazon CloudWatch Metrics

  • CloudWatch 为 AWS 中的每个服务提供指标
  • 指标是要监视的变量(CPU 利用率,网络传入等)
  • 指标属于命名空间
  • 维度是指标的属性(实例ID,环境等)
  • 每个指标最多可以有 10 个维度
  • 指标有时间戳
  • 可以创建 CloudWatch 仪表板来显示指标
  • 可以创建 CloudWatch 自定义指标(例如用于 RAM)

1.2 CloudWatch Metric Streams

  • 不断地将 CloudWatch 指标流式传输到您选择的目标,具有接近实时的传递和低延迟。
    • Amazon Kinesis Data Firehose(以及其目标)
    • 第三方服务提供商:Datadog,Dynatrace,New Relic,Splunk,Sumo Logic 等
  • 可以选择过滤指标,只传输其中的子集

Screenshot 2023-08-27 at 22.29.44.png

1.3 CloudWatch Logs

  • Log groups:任意名称,通常表示一个应用程序
  • Log stream:应用程序中的实例/日志文件/容器
  • 可以定义日志过期策略(永不过期,30天等)
  • CloudWatch Logs可以将日志发送到:
    • Amazon S3(导出)
    • Kinesis Data Streams
    • Kinesis Data Firehose
    • AWS Lambda
    • OpenSearch

CloudWatch Logs - Sources

  • SDK,CloudWatch Logs Agent,CloudWatch 统一代理
  • Elastic Beanstalk:从应用程序收集日志
  • ECS:从容器收集
  • AWS Lambda:从函数日志收集
  • VPC 流日志:特定于 VPC 的日志
  • API Gateway
  • 基于过滤器的 CloudTrail
  • Route53:记录 DNS 查询

CloudWatch Logs Metric Filter & Insights

  • CloudWatch Logs 可以使用过滤表达式
  • 例如,在日志中查找特定的 IP
  • 或者计算日志中 “ERROR” 的出现次数
  • 可以使用指标过滤器触发 CloudWatch 警报
  • 可以使用 CloudWatch Logs Insights 查询日志并将查询添加到 CloudWatch 仪表板中

Screenshot 2023-08-27 at 22.32.42.png

CloudWatch Logs – S3 Export

  • 日志数据最多需要 12 个小时才能导出
  • API 调用是 CreateExportTask
  • 不是(近)实时…使用 Logs Subscriptions 代替

Screenshot 2023-08-27 at 22.33.18.png

CloudWatch Logs Subscriptions

Screenshot 2023-08-27 at 22.34.29.png

CloudWatch Logs Aggregation Multi-Account & Multi Region

Screenshot 2023-08-27 at 22.35.00.png

CloudWatch Logs for EC2

  • 默认情况下,您的 EC2 机器的日志不会发送到 CloudWatch
  • 您需要在 EC2 上运行 CloudWatch 代理以推送所需的日志文件
  • 确保 IAM 权限正确
  • CloudWatch 日志代理也可在本地部署

Screenshot 2023-08-27 at 22.35.47.png

CloudWatch Logs Agent & Unified Agent

  • 适用于虚拟服务器(EC2 实例,本地服务器等)
  • CloudWatch Logs Agent
    • 代理的旧版本
    • 只能发送到 CloudWatch Logs
  • CloudWatch Unified Agent
    • 收集额外的系统级指标,如 RAM,进程等
    • 收集日志以发送到 CloudWatch Logs
    • 使用 SSM 参数存储进行集中配置

1.4 CloudWatch Unified Agent – Metrics

  • 直接在 Linux 服务器 / EC2 实例上收集
  • CPU(活动,宿主,空闲,系统,用户,偷取)
  • 磁盘指标(空闲,已用,总计),磁盘IO(写入,读取,字节,iops)
  • RAM(空闲,非活动,已用,总计,缓存)
  • Netstat(TCP 和 UDP 连接数,网络数据包,字节)
  • 进程(总计,死亡,阻塞,空闲,运行,休眠)
  • 交换空间(空闲,已用,使用百分比)
  • 提醒:EC2 的开箱即用指标-磁盘,CPU,网络(高级别)

1.5 CloudWatch Alarms(CloudWatch 报警)

  • 用于触发任何指标的通知
  • 提供多种选项(采样、百分比、最大值、最小值等)
  • 报警状态包括:
    • OK(正常)
    • INSUFFICIENT_DATA(数据不足)
    • ALARM(报警)
  • 周期:
    • 评估指标的时间长度,以秒为单位。
    • 高分辨率自定义指标:10秒、30秒或60秒的倍数

CloudWatch Alarm Targets(CloudWatch 报警目标)

  • 可以停止、终止、重启或恢复 EC2 实例
  • 可以触发自动扩展操作
  • 可以发送通知到 SNS(从中可以执行各种操作)

Screenshot 2023-08-27 at 22.58.02.png

CloudWatch Alarms – Composite Alarms(CloudWatch 报警 - 组合报警)

  • CloudWatch 报警基于单个指标
  • 组合报警监控多个其他报警的状态
  • 支持 AND 和 OR 条件
  • 通过创建复杂的组合报警来减少“报警噪音”

Screenshot 2023-08-27 at 22.58.59.png

EC2 Instance Recovery(EC2 实例恢复)

  • 状态检查:
    • 实例状态 = 检查 EC2 虚拟机
    • 系统状态 = 检查底层硬件
  • 恢复操作:
    • 保留相同的私有、公有、弹性IP、元数据和放置组

Screenshot 2023-08-27 at 23.00.01.png

CloudWatch Alarm: good to know

  • 可以基于 CloudWatch 日志指标过滤器创建报警Screenshot 2023-08-27 at 23.01.19.png
  • 为了测试报警和通知,可以使用 CLI 将报警状态设置为 Alarm,例如:
    • aws cloudwatch set-alarm-state --alarm-name “myalarm” --state-value ALARM --state-reason “testing purposes”

Amazon EventBridge(前身为 CloudWatch Events)

  • Scheduled:定时任务(定时脚本)Screenshot 2023-08-27 at 23.02.03.png
  • Event Pattern:根据服务执行操作的事件规则Screenshot 2023-08-27 at 23.02.26.png
  • 触发 Lambda 函数,发送 SQS / SNS 消息等

1.6 Amazon EventBridge

Screenshot 2023-08-27 at 23.05.55.png

  • 事件总线可以通过资源策略被其他 AWS 账户访问
  • 可以将发送到事件总线的事件(全部或筛选)存档(永久或设置时间段)
  • 可以回放已存档的事件

Amazon EventBridge Rules

Screenshot 2023-08-27 at 23.04.30.png

Amazon EventBridge – Schema Registry

  • EventBridge 可以分析总线上的事件并推断其模式
  • 模式注册表允许为应用程序生成代码,提前了解事件总线中的数据结构
  • 模式可以进行版本管理

Screenshot 2023-08-27 at 23.07.01.png

Amazon EventBridge – Resource-based Policy

  • 管理特定事件总线的权限
  • 示例:允许/拒绝来自其他 AWS 账户或 AWS 区域的事件
  • 用例:在单个 AWS 账户或 AWS 区域中聚合 AWS 组织的所有事件

Screenshot 2023-08-27 at 23.08.10.png
Screenshot 2023-08-27 at 23.08.28.png

1.7 CloudWatch Insights

CloudWatch Container Insights

  • 收集、汇总、摘要容器的指标和日志
  • 适用于以下容器:
    • Amazon Elastic Container Service(Amazon ECS)
    • Amazon Elastic Kubernetes Service(Amazon EKS)
    • EC2 上的 Kubernetes 平台
    • Fargate(适用于 ECS 和 EKS)
  • 在 Amazon EKS 和 Kubernetes 中,CloudWatch Insights 使用容器化版本的 CloudWatch Agent 来发现容器

Screenshot 2023-08-27 at 23.10.05.pngScreenshot 2023-08-27 at 23.10.36.png

CloudWatch Lambda Insights

  • 用于监控和故障排除在 AWS Lambda 上运行的无服务器应用程序的解决方案
  • 收集、汇总系统级别的指标,包括CPU时间、内存、磁盘和网络
  • 收集、汇总冷启动和 Lambda 工作器关闭等诊断信息
  • Lambda Insights 以 Lambda Layer 的形式提供

Screenshot 2023-08-27 at 23.11.48.png

CloudWatch Contributor Insights

  • 分析日志数据并创建展示贡献者数据的时间序列
    • 查看关于前 N 个贡献者的指标
    • 总计唯一贡献者的数量和使用情况
  • 这有助于找到主要发言者并了解谁或什么影响了系统性能
  • 适用于任何由 AWS 生成的日志(VPC、DNS 等)
  • 例如,您可以找到恶意主机,识别最重的网络用户,或找到生成最多错误的 URL
  • 您可以从头开始构建规则,也可以使用 AWS 创建的示例规则 - 利用您的 CloudWatch 日志
  • CloudWatch 还提供了内置规则,可用于分析其他 AWS 服务的指标

CloudWatch Application Insights

  • 提供自动化仪表板,显示监视应用程序可能存在的问题,以帮助隔离持续存在的问题
  • 您的应用程序在仅支持的 Amazon EC2 实例上运行(Java、.NET、Microsoft IIS Web 服务器、数据库…)
  • 您还可以使用其他 AWS 资源,如 Amazon EBS、RDS、ELB、ASG、Lambda、SQS、DynamoDB、S3 存储桶、ECS、EKS、SNS、API Gateway…
  • 由 SageMaker 提供支持
  • 提高对应用程序健康状况的可见性,缩短故障排除和修复应用程序所需的时间
  • 发现和警报发送到 Amazon EventBridge 和 SSM OpsCenter

CloudWatch Insights 和运维可见性

  • CloudWatch Container Insights
    • ECS、EKS、EC2 上的 Kubernetes、Fargate,需要 Kubernetes 代理
    • 指标和日志
  • CloudWatch Lambda Insights
    • 详细指标,用于故障排除无服务器应用程序
  • CloudWatch Contributors Insights
    • 通过 CloudWatch 日志查找 “Top-N” Contributors
  • CloudWatch Application Insights
    • 自动仪表板,用于故障排除应用程序及相关 AWS 服务

2. AWS CloudTrail

  • 为您的 AWS 帐户提供治理、合规性和审计功能
  • CloudTrail 默认情况下启用!
  • 通过以下方式获取在您的 AWS 帐户中进行的事件/ API 调用的历史记录:
    • 控制台
    • SDK
    • CLI
    • AWS 服务
  • 可将 CloudTrail 日志放入 CloudWatch Logs 或 S3 中
  • 可将跟踪应用于所有区域(默认)或单个区域
  • 如果在 AWS 中删除了资源,请首先调查 CloudTrail!

2.1 CloudTrail Diagram

Screenshot 2023-08-27 at 23.17.40.png

2.2 CloudTrail Events

  • 管理事件:
    • 在您的 AWS 帐户中对资源执行的操作
    • 例如:
      • 配置安全性(IAM AttachRolePolicy)
      • 配置数据路由规则(Amazon EC2 CreateSubnet)
      • 设置日志记录(AWS CloudTrail CreateTrail)
    • 默认情况下,跟踪配置为记录管理事件
    • 可将读取事件(不修改资源)与写入事件(可能修改资源)分开
  • 数据事件:
    • 默认情况下,不记录数据事件(因为操作量大)
    • Amazon S3 对象级活动(例如:GetObject、DeleteObject、PutObject):可将读取和写入事件分开
    • AWS Lambda 函数执行活动(Invoke API)
  • CloudTrail 洞察事件:
    • 请参见下一页

2.3 CloudTrail Insights

  • 启用 CloudTrail Insights 以检测帐户中的异常活动:
    • 不准确的资源预配
    • 达到服务限制
    • AWS IAM 操作的突发
    • 周期性维护活动中的间隙
  • CloudTrail Insights 分析正常管理事件以创建基线
  • 然后持续分析写入事件以检测异常模式
    • 异常情况出现在 CloudTrail 控制台中
    • 事件被发送到 Amazon S3
    • 生成 EventBridge 事件(用于自动化需求)

Screenshot 2023-08-27 at 23.25.01.png

2.4 CloudTrail Events Retention

  • 事件在 CloudTrail 中存储 90天
  • 要保留超过此期限的事件,请将其记录到 S3 并使用 Athena

2.5 Amazon EventBridge - 拦截 API 调用

Screenshot 2023-08-27 at 23.25.44.png

3. AWS Config

  • 帮助审核和记录 AWS 资源的合规性
  • 帮助记录配置和随时间变化的更改
  • AWS Config 可以解决的问题:
    • 我的安全组是否有无限制的 SSH 访问?
    • 我的存储桶是否有任何公共访问权限?
    • 我的 ALB 配置随时间如何变化?
  • 您可以接收任何更改的警报(SNS 通知)
  • AWS Config 是一个按区域的服务
  • 可以在区域和帐户之间进行聚合
  • 可以将配置数据存储到 S3 中(由 Athena 分析)

3.1 Config Rules

  • 可以使用AWS管理的配置规则(超过75个)
  • 可以创建自定义配置规则(必须在AWS Lambda中定义)
    • 例如:评估每个EBS磁盘是否为gp2类型
    • 例如:评估每个EC2实例是否为t2.micro
  • 规则可以评估/触发:
  • 对于每个配置更改
    • 和/或:定期时间间隔
  • AWS Config 规则不会阻止发生的操作(没有拒绝)
  • 定价:没有免费套餐,每个区域记录的每个配置项收费为$0.003,每个区域的每个配置规则评估收费为$0.001

3.2 AWS Config Resource

  • 查看资源随时间的合规性
  • 查看资源随时间的配置
  • 查看资源随时间的CloudTrail API调用

3.3 Config Rules - Remediations

  • 使用SSM自动化文档自动纠正不符合规定的资源
  • 使用AWS-Managed自动化文档或创建自定义自动化文档
    • 提示:您可以创建调用Lambda函数的自定义自动化文档
  • 如果资源在自动纠正后仍然不符合规定,可以设置纠正重试

Screenshot 2023-08-27 at 23.28.47.png

3.4 Config Rules - Notifications

  • 使用 EventBridge 在 AWS 资源不符合规定时触发通知Screenshot 2023-08-27 at 23.29.14.png
  • 能够将配置更改和合规状态通知发送到 SNS(所有事件-使用 SNS 过滤或在客户端过滤)

Screenshot 2023-08-27 at 23.29.52.png

3.5 CloudWatch vs CloudTrail vs Config

  • CloudWatch
    • 性能监控(指标,CPU,网络等)和仪表板
    • 事件和警报
    • 日志聚合和分析
  • CloudTrail
    • 记录每个帐户内的API调用
    • 可为特定资源定义跟踪
    • 全局服务
  • Config
    • 记录配置更改
    • 根据合规性规则评估资源
    • 获取更改和合规性的时间线

对于弹性负载均衡器

  • CloudWatch:
    • 监控传入连接指标
    • 按时间可视化错误代码的百分比
    • 创建仪表板以了解负载均衡器的性能
  • Config:
    • 跟踪负载均衡器的安全组规则
    • 跟踪负载均衡器的配置更改
      确保负载均衡器始终分配了SSL证书(合规性)
  • CloudTrail:
    • 跟踪使用 API 调用对负载均衡器进行的更改的人员

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/650860.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MATLAB|【完全复现】含可再生能源和储能的区域微电网的最优运行(考虑鲁棒性和不确定性)【多阶段鲁棒调度模型】

目录 主要内容 模型研究 一、区域微网模型 二、模型优化流程​ 结果一览 下载链接 主要内容 该程序实现了一种基于可再生能源和储能的区域微电网的多阶段优化调度方法,该方法可以同时保证优化调度方案的鲁棒性和非预测性。模型考虑两类不确定性&…

MySQL索引类型及数据结构【笔记】

1 索引类型 返回面试宝典 主键索引(PRIMARY):数据列不允许重复,不允许为NULL,一个表只能有一个主键。 唯一索引(UNIQUE):数据列不允许重复,允许为NULL,一个表允许多个列创建唯一索引…

AssertionError: Torch not compiled with CUDA enabled

目录 报错查看已安装的torch的版本卸载安装GPU版本的torch查看cuda版本手工安装通过pip命令手工安装。 结果更新cuda到12.1大功告成 报错 经查阅,这个问题是因为conda默认安装的是CPU版本的torch,应该使用GPU版本的。 查看已安装的torch的版本 pip li…

Apipost数据库连接使用

Apipost提供了数据库连接功能,在接口调试时可以使用数据库获取入参或进行断言校验。目前的Apipost支持:Mysql、SQL Sever、Oracle、Clickhouse、达梦数据库、PostgreSQL、Redis、MongoDB 8种数据库的连接操作 新建数据库连接: 在「项目设置…

Doris 与 Clickhouse 对比(一)

1. 常用引擎 ☕️ Doris 表数据模型 duplicate key 🎬 场景:适用于数据无需提前聚合的分析业务。 ⚠️ 注意点:只指定排序列,相同的行并不会合并。 unique key 🎬 场景:适用于有更新需求的业务。 ⚠…

Optional lab: Linear Regression using Scikit-LearnⅠ

scikit-learn是一个开源的、可用于商业的机器学习工具包,此工具包包含本课程中需要使用的许多算法的实现 Goals In this lab you will utilize scikit-learn to implement linear regression using Gradient Descent Tools You will utilize functions from sci…

计算机设计大赛 垃圾邮件(短信)分类算法实现 机器学习 深度学习

文章目录 0 前言2 垃圾短信/邮件 分类算法 原理2.1 常用的分类器 - 贝叶斯分类器 3 数据集介绍4 数据预处理5 特征提取6 训练分类器7 综合测试结果8 其他模型方法9 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 垃圾邮件(短信)分类算…

MySQL DDL DML DQL DCL 通用语法

文章目录 DDL(数据定义语言)数据库操作表操作 DML(数据操作语言)添加数据注意事项 更新和删除数据 DQL(数据查询语言)基础查询条件查询聚合查询(聚合函数)分组查询排序查询分页查询D…

计算机网络:体系结构知识点汇总

文章目录 一、计算机网络概述1.1概念及功能1.2组成和分类1.3性能指标 二、体系结构与参考模型2.1分层结构、协议、接口、服务2.2OSI参考模型2.3TCP/IP参考模型 一、计算机网络概述 1.1概念及功能 计算机网络就是通过各个节点,这个节点包括终端的电脑,手…

0127-2-Vue深入学习5—Vue-Router路由模式

1、Vue-Router三种路由模式: hash:#️⃣使用URL hash 值来做路由,支持所有路由器;history:📖依赖HTML5 History API和服务器配置;abstract:⛓支持所有JS运行环境,Node.js服务端; 1.1…

[网鼎杯 2018]Fakebook1

join一个用户后,点进去发现是这样的 查看这个页面的源代码,发现一个base64编码后的字串 decode之后就是我们join新用户时填入的blog网址 那我们是不是可以通过填入存储flag的地址,从而回显出来呢?当然,先按照常规sqli…

九、Kotlin 注解

1. 什么是注解 注解是对程序的附件信息说明。 注解可以作用在类、函数、函数参数、属性等上面。 注解的信息可用于源码级、编译期、运行时。 2. 注解类的定义 使用元注解 Retention 声明注解类的作用时期。 使用元注解 Target 声明注解类的作用对象。 定义注解类时可以声…

Centos7 双机单网卡安装 OpenStack

虚拟机配置 1:准备虚拟机2台,配置如下 openstack master----192.168.20.205 2cpu,8G内存,200G硬盘,网络桥接方式--静态IP----单网卡 node1计算节点---192.168.20.215 2cpu,8G内存,200G硬盘&a…

专业120+总分400+海南大学838信号与系统考研高分经验海大电子信息与通信

今年专业838信号与系统120,总分400,顺利上岸海南大学,这一年的复习起起伏伏,但是最后还是坚持下来的,吃过的苦都是值得,总结一下自己的复习经历,希望对大家复习有帮助。首先我想先强调一下专业课…

scrapy的概念作用和工作流程

1. scrapy的概念 Scrapy是一个Python编写的开源网络爬虫框架。它是一个被设计用于爬取网络数据、提取结构性数据的框架。 Scrapy 使用了Twisted[twɪstɪd]异步网络框架,可以加快我们的下载速度。 Scrapy文档地址:http://scrapy-chs.readthedocs.io/zh_…

05 双向链表

目录 1.双向链表 2.实现 3.OJ题 4.链表和顺序表对比 1. 双向链表 前面写了单向链表,复习一下 无头单向非循环链表:结构简单,一般不会单独用来存数据。实际中更多作为其他数据结构的子结构,如哈希桶、图的邻接等。另外这种结构在…

dubbo和eureka的区别

dubbo可以作为客户端,也可以作为服务端,因此他内置了很多序列化框架可供选择,通过配置可以进行选择。默认是hession,还有gson,fastJson,jdk自带的序列化。 eureka只能作为服务端,他序列要与客户…

解析MySQL生产环境CPU使用率过高的排查与解决方案

引言 在生产环境中,MySQL作为一个关键的数据库组件,其性能对整个系统的稳定性至关重要。然而,有时候我们可能会遇到MySQL CPU使用率过高的问题,这可能导致系统性能下降,应用页面访问减慢,甚至影响到用户体…

软件包管理:在CentOS 7中部署Tengine

目录 下载: 方法一: 方法二: 部署: 实验操作 下载: 方法一: 1、打开浏览器搜索tengine并点击官网 2、选择需要安装的版本并复制链接链接 标题栏处可以更改为中文界面 下滑选择版本单击下载 在远程连…

Python字符串:基础要点与实践应用

文章目录 一、Python字符串1.介绍2.与C语言字符串比较2.1 相同点2.2 不同点 3.创建Python字符串3.1 使用单引号3.2 使用双引号3.3 使用三引号 二、访问字符串中的值1.索引方式2.截取方式 三、Python 转义字符1.续行符\(在行尾时)2.反斜杠符号\\3.单引号\4.双引号\"5.响铃\…