一、简介
1. Amazon CloudWatch简介
1.1 CloudWatch简介
Amazon CloudWatch 实时监控您的 Amazon Web Services (AWS) 资源以及您在 AWS 中运行的应用程序。您可以使用 CloudWatch 收集和跟踪指标,这些指标是您可衡量的相关资源和应用程序的变量。
CloudWatch 主页自动显示有关您使用的每项 AWS 服务的指标。此外,您还可以创建自定义控制面板,以显示有关自定义应用程序的指标,并显示您选择的指标的自定义集合。
您可以创建警报,这些警报监视指标,当超出阈值时,它们会发送通知或者对您所监控的资源自动进行更改。例如,您可以监控您的 Amazon EC2 实例的 CPU 使用率以及磁盘读写情况,然后使用此数据确定您是否应启动其他实例来处理增加的负载。您还可以使用此数据停止未完全利用的实例以节省开支。
您可通过使用 CloudWatch 全面地了解资源使用率、应用程序性能和运行状况。
1.2 CloudWatch访问方式
可以使用下面任何方式访问CloudWatch
Amazon CloudWatch控制台
AWS CLI
CloudWatch API
AWS开发工具包
1.3 可关联的AWS服务
以下服务可与Amazon CloudWatch一起使用
Amazon Simple Notification Service (Amazon SNS)
可用于协调和管理向订阅终端节点或客户交付或发送消息的过程。可结合使用 Amazon SNS 与 CloudWatch 以便在达到警报阈值时发送消息
Amazon EC2 Auto Scaling
可用于根据用户定义的策略、运行状况检查和时间表自动启动或终止 Amazon EC2 实例。可将 CloudWatch 警报与 Amazon EC2 Auto Scaling 一起使用以根据需求扩展 EC2 实例
AWS CloudTrail
可用于监控对您的账户的 Amazon CloudWatch API 的调用(包括由 AWS 管理控制台、AWS CLI 和其他服务进行的调用)
AWS Identity and Access Management (IAM)
可帮助您安全地控制用户对 AWS 资源的访问
2.CloudWatch的工作原理
Amazon CloudWatch 基本上是一个指标存储库。AWS 服务—例如 Amazon EC2—将指标放在存储库中,您可以根据这些指标来检索统计数据。如果将自己的自定义指标放在存储库中,则还可以检索有关这些指标的统计数据。
您可以在 CloudWatch 控制台中使用指标计算统计数据,然后以图形化的方式显示数据
在满足特定条件时,您可以配置警报操作以停止、启动或终止 Amazon EC2 实例。此外,您还可以创建代表您启动 Amazon EC2 Auto Scaling 和 Amazon Simple Notification Service (Amazon SNS) 操作的警报
3.CloudWatch的核心术语和概念
3.1 命名空间
命名空间 是 CloudWatch 指标的容器。不同命名空间中的指标彼此独立,因此来自不同应用程序的指标不会被错误地聚合到相同的统计信息中。
3.2 指标
指标 是 CloudWatch 中的基本概念。指标表示一个发布到 CloudWatch 并且按时间排序的数据点集。可将指标视为要监控的变量,而数据点代表该变量随时间变化的值。
3.2.1 时间戳
每个指标数据点必须与一个时间戳关联。时间戳最长可以为过去的两周和将来的两小时。如果不提供时间戳,CloudWatch 会根据收到数据点的时间创建一个时间戳。
3.2.2 指标保留
CloudWatch 将保留指标数据,如下所示
时间段短于 60 秒的数据点的可用时间为 3 小时。这些数据点是高精度自定义指标
时间段为 60 秒 (1 分钟) 的数据点可用 15 天
时间段为 300 秒 (5 分钟) 的数据点可用 63 天
时间段为 3600 秒 (1 小时) 的数据点可用 455 天 (15 个月)
3.3维度
维度是一个名称/值对,它是指标标识的一部分。您可以为一个指标分配最多 10 个维度
每个指标包含用于描述该指标的特定特征,您可以将维度理解为这些特征的类别。维度可以帮助您设计统计数据计划的结构。因为维度是指标的唯一标识符的一部分,因此无论您在何时向一个指标添加唯一名称/值对,都会创建该指标的一个新变体
3.3.1 维度组合
CloudWatch 将维度的每种唯一组合视为一个单独的指标,即使指标具有相同的指标名称也是如此。您只能使用已发布的特定维度组合检索统计数据。当您检索统计数据时,为命名空间、指标名称和维度参数指定创建指标时使用的相同值。您还可为 CloudWatch 指定要用于聚合的开始和结束时间
3.4 统计数据
CloudWatch 将维度的每种唯一组合视为一个单独的指标,即使指标具有相同的指标名称也是如此。您只能使用已发布的特定维度组合检索统计数据。当您检索统计数据时,为命名空间、指标名称和维度参数指定创建指标时使用的相同值。您还可为 CloudWatch 指定要用于聚合的开始和结束时间
3.4.1 单位
所有统计数据都有度量单位。示例单位包括 Bytes、Seconds、Count 和 Percent等
3.4.2 时间段
时间段是与特定 Amazon CloudWatch 统计信息关联的时间的长度。每项统计信息代表在指定时间段内对收集的指标数据的聚合。时间段以秒为单位定义,时间段的有效值为 1、5、10、30 或 60 的任意倍数
3.4.3 聚合
Amazon CloudWatch 将根据您在检索统计数据时指定的时间段长度聚合统计数据。您可以根据需要发布包含相同或类似时间戳的任意数量的数据点。CloudWatch 会根据指定的时间段长度对其进行聚合。CloudWatch 不会跨区域聚合数据
3.5 百分位数
百分位数指示某个值在数据集中的相对位置。例如,第 95 个百分位数表示 95% 的数据低于此值,5% 的数据高于此值。百分位数可帮助您更好地了解指标数据的分布情况
3.6 警报
您可使用警报 代表您自动发起操作。警报在指定的时间段内监控单个指标,并根据指标值相对于阈值的变化情况执行一项或多项指定操作。操作是向 Amazon SNS 主题或 Auto Scaling 策略发送的通知。您还可以将警报添加到控制面板
二、创建Amazon CloudWatch控制面板
此次会以为一台EC2添加常用的监控指标为例,详细说明整个添加监控指标的过程。
1. 创建控制面板
首先先创建一个对应的EC2控制面板,登录CloudWatch主页控制台,做如下操作
2. 搜寻需要的指标
此次根据EC2的实例ID,搜寻单个EC2现有的所有指标
可以看到一共有13个相关指标,包括了磁盘、网络流量、CPU使用率、实例状态检查等
3.添加指标绘制成图标
此次挑选磁盘、网络、CPU以及实例状态检查几个指标添加至图表中
其中统计数据的类型、时段可根据具体的需求自由选择。选择完成后,点击“创建小部件”生成图标。
4.调整并保存控制面板