服务
关于
CloudProse博客

2018年7月10日,星期二

这是有关在AWS中监视生产工作负载的系列文章中的第二篇。 在第一篇文章中,我们对云监控进行了高层概述,并将其分为六种您应该监控的指标。在这里,我们将深入研究其中之一CloudWatch指标,并向您提供一些技巧,以使您在生产中充分利用CloudWatch。

CloudWatch Metrics是一项非常知名且直接的AWS服务。如果您要监视AWS中的生产环境,则应该将其放在列表的顶部,以便深入了解它并感到满意。特别是如果您正在建造&运行越来越关注非EC2世界的应用程序(又名平台服务或无服务器),例如 Trek10,CloudWatch是Linux的新亮点:对您的运行环境的最基本的了解。对于初学者,首先我们将做一个快速概述。随意地 跳过 提示,如果这对您来说是旧帽子。

CloudWatch指标概述

CloudWatch实际上包括三个(仅与松散相关的)服务:CloudWatch指标,CloudWatch日志和CloudWatch事件。我们在这里只关注指标。查看 我们去年的帖子 有关CloudWatch预定事件的信息,并在CloudWatch Logs上查找即将到来的事件。

以下是CloudWatch指标的简短摘要:

  • CloudWatch指标只是从AWS服务发出或由API放入AWS的时间序列数据点。
  • 借助EC2,CloudWatch可以从“虚拟机外部”(即虚拟机监控程序级别)为您提供指标。对于没有公开VM的其他服务,CloudWatch数据使您仅能洞悉该服务的操作。
  • 您可以从交互式控制台浏览器,控制台仪表板,API中访问指标,也可以将其引入自己的监视工具中。
  • 现在,地球上几乎所有的监视工具都支持导入CloudWatch指标。如果您不喜欢,请尝试我们的最爱, 数据狗.
  • 一分钟分辨率数据存储15天,5分钟分辨率存储3个月,1小时分辨率存储15个月
  • 大多数服务以一分钟的分辨率提供指标,但有些则不那么频繁。
  • 您可以将自定义指标推送到CloudWatch中,并且可以以1秒的分辨率存储这些指标。
  • 您可以根据指标触发CloudWatch警报,也可以将其导入您自己的工具中进行警报。

如果您有兴趣进一步深入,ACloudGuru会提供有关CloudWatch指标的大量课程,作为其一部分 SysOps认证管理员助理课程.

充分利用CloudWatch的一些技巧

足够的基础知识。让我们来看看Trek10的CloudWatch经验带来的更多有趣的注释和技巧。

公制可见性延迟

我们经常从习惯于近乎实时地查看其VM指标的人员那里获得有关此问题的疑问。我们发现CloudWatch指标通常在显示在AWS上(在控制台和API中)大约有2分钟的延迟……换句话说,10:15的数据点大约在10:17可见。

如果您使用外部监视工具导入您的CloudWatch指标,则此导入轮询会增加额外的延迟。我们相信,只要延迟最小,拥有一个可以汇总您所有指标的工具就很值得这样做。借助Trek10的首选监控平台, 数据狗,从指标生成到Datadog中可用的总延迟大约为10-12分钟。至关重要的是(我们向Datadog开发这一出色的功能致敬),它们可以加快后台的轮询速度,使总延迟仅约4-5分钟(比仅能在本地访问数据多2分钟左右)。 CloudWatch)。我们发现这几乎适用于所有用例。如果您想启用此功能,请联系Datadog支持。 一个重要警告……这将增加您的AWS CloudWatch成本。继续阅读…

观看GetMetrics费用

如果您使用的是外部监视工具,请注意GetMetricData API调用的成本。每1000个请求的通话费用为$ 0.01。关于可以从一个请求中获得什么的一些细节,但是最重要的是,成本将随着您使用的AWS服务数量,这些服务中的指标维度以及轮询频率成倍增加。例如:对于Lambda,一个典型的函数发出了四个CloudWatch指标:调用次数,持续时间,错误和限制。如果您的帐户中有50个Lambda函数,则您的监视工具需要对50 x 4 = 200公制/维度组合进行GetMetrics API调用。此数学运算适用于CloudWatch使用的任何维度:自动缩放组,S3存储桶,SNS主题,等等。值得简要浏览一下CloudWatch控制台,以了解可能影响此成本的指标:

如果您每两分钟对AWS进行一次轮询,以获取数百甚至数千个指标/维度组合,那么您会发现这笔费用如何快速地每月增加总计数百美元。

AWSWishList:对CloudWatch指标的轮询效率非常低:AWS确实需要创建一个更好的系统,用于高频批量导出指标。

彻底

好的CloudWatch监控计划的关键是深度。如果仅监视一些明显的问题,例如RDS CPU和Lambda错误,则可能会错过一些生产问题的严重警告信号。每个AWS服务都有可用的CloudWatch指标的详尽文档。为了给您一个想法,以下是清单 物联网核心 而另一个 步骤功能。对于您正在使用的每项服务,请深入了解此列表并了解可用的内容及其重要性。

某些指标显然很容易发出警报,例如DynamoDB节流阀:如果发生,这是一个关键的生产问题。但是,即使对于那些您可能不会发出警报的应用程序,您也可以构建非常有见地的仪表板,以便在问题出现时进行分析。例如,假设您有一个简单的无服务器REST API,具有API Gateway,Lambda和DynamoDB。您的关键指标可能是API网关上HTTP 5XX错误的比率,但是当该比率达到令人关注的阈值时,您需要能够快速更深入地研究。您的仪表板可能包含API网关错误率和请求量,以及Lambda错误率,Lambda节流阀以及各种DynamoDB错误度量标准,例如Read和WriteThrottleEvents和SystemErrors。在单个屏幕上查看所有这些CloudWatch指标将使您快速深入了解问题的根源。

可信顾问指标

我们最喜欢的隐藏CloudWatch指标之一是最近才发布的: 可信顾问指标。 Trusted Advisor是AWS的一项服务,可与业务或企业支持一起使用,并检查整个AWS账户中的各种使用细节,以深入了解成本优化,性能,安全性和容错能力。

有两组CloudWatch Trusted Advisor指标。绿色/红色/黄色指标仅计算适合每个警报级别的检查或检查资源的数量。因此,例如,如果您至少有一个红色复选标记,则可以轻松设置警报。不过,更有趣的是第二组:服务限制指标。有各种各样的 整个AWS的服务限制 达到生产中的这些极限之一是令人惊讶的停机原因。这些指标报告针对该服务限制的利用率百分比,从而为您提供了简单的一站式服务,以警告这些问题。只需将警告阈值设置为每个ServiceLimit,Service和Region的75%,就可以设置好了。

目前为止就这样了。在未来几周内寻找更多有关监控其他方面的信息,同时关注我们 @ Trek10Inc让我们知道 如果我们可以帮助您进行云监控。

这是有关监视AWS中生产工作负载的系列文章中的第二篇。相关文章包括。

  1. 所有指标-云监控蓝图
  2. 当前职位…
  3. 自定义指标深入研究
作者
安迪·沃宗(Andy Warzon)Trek10
安迪·沃宗(Andy Warzon)

创办人& CTO

创办人&CTO Andy一直在AWS上进行开发已有十多年,并且是AWS认证解决方案架构师-专业人士。