基于Amazon CloudWatch Container Insights为Amazon EKS提供的增强可观测性,亚马逊云科技针对在Amazon ECS上运行的容器工作负载,推出具有增强可观测性的Container Insight,旨在缩短整体应用程序的平均检测时间(MTTD)和平均修复时间(MTTR),从而规避影响用户体验的问题。
借助这一功能,Amazon CloudWatch和Amazon ECS可自动收集任务级别和容器级别的CPU使用率等细粒度性能指标,同时提供可视化深入探索功能以分析根本原因。由此,无需手动搜索以及深入了解应用程序架构,即可关联指标与日志和事件,极大节省时间,从而有效解决容器监控中这一关键缺陷。
下图是关于Amazon ECS中具有增强可观测性的Container Insights的简要介绍。
支持用例
这一新功能支持以下用例:
通过查看详细的资源使用模式和相关的遥测数据,快速识别根本原因。
使用基于亚马逊云科技最佳实践的精选仪表板主动管理Amazon ECS资源。
跟踪最近的部署以及部署失败的根本原因,并匹配相应的基础架构异常,以便更快发现问题并在必要时快速回滚。
无需手动设置,即可轻松监控多个账户中的资源。内置的跨账户支持通过单一视图的可观测性降低运营开销。
与Amazon CloudWatch其他服务(如Amazon CloudWatch Application Signals和Amazon CloudWatch Logs)集成,可无缝关联基础架构与正在运行的服务,并识别受影响的服务。
开始使用
有两种方法可以启用具有增强可观测性的Container Insights:
集群级启用:您可以分别为特定集群启用。
账户级启用:您还可以在账户级别启用,这将自动为您账户中创建的所有新集群启用可观测性。使用这种方法,无需为每个新集群手动启用,节省时间和精力。
要在账户级别启用此功能,需要导航到Amazon ECS控制台并选择“账户设置”,在“Amazon CloudWatch Container Insights可观测性”部分,显示当前处于禁用状态,随后选择“更新”。
该页面有一个名为“增强可观测性的Container Insights”的新选项,选择该选项,然后选择“保存更改”。
如果您需要在集群级别启用此功能,则可以在创建新集群时进行。
您也可以为现有的集群启用此功能:选择“更新集群”,然后选择该选项。
启用后,您可以在集群概览控制台的“指标”选项卡中查看任务级指标。要访问跨集群的健康状况和性能指标,您可以选择“查看Container Insights”,这将重新定向跳转到Container Insights页面。
为了全面了解不同集群上的所有工作负载,您可以导航到Amazon CloudWatch,然后进入Container Insights。
此视图通过提供蜂窝状可视化视图,直观概括地显示集群的健康状况,从而有效解决了监控集群、服务、任务和容器的难题。仪表板采用了双状态监控方法:
警报状态(红色或绿色):反映客户定义的阈值和警报,使团队能够根据其特定需求配置监控。
利用率状态(深蓝色或浅蓝色):利用Amazon CloudWatch内置的最佳实践,来监控跨容器的资源使用模式。深蓝色表示集群的利用率较高,使团队能够在潜在的资源限制影响性能之前将其主动识别出来。
比如其中一个集群出现问题,您可以将鼠标悬停在集群上,以显示从集群层到容器层的不同层级为该集群创建的所有警报。
您还可以选择以列表形式查看所有集群。列表形式对于跨账户可观测性至关重要,因为它可以显示集群所有权的账户ID和标签,这有助于DevOps工程师快速识别并与账户所有者协作,以解决潜在的应用程序问题。
如果您想进一步探索,可以点击集群链接,将跳转至Container Insights的详细仪表板视图,它显示该集群的内存利用率出现一个峰值。
您可以深入了解容器级别的详细信息,这有助于您快速识别导致这一问题的服务。
选择“过滤器”功能,将帮助您更彻底地调查该集群中的容器、服务或任务。
如果需要深入研究应用程序日志以了解该问题的根本原因,您可以选择任务,然后选择“操作”,并选择要查看的日志。
除了使用Amazon X-Ray跟踪外,您还可以调查另外两种日志。
首先,您可以使用性能日志(包含指标数据的结构化日志)来深入探究并识别容器级别的根本原因。其次,您可以检查收集的应用程序或容器日志,这些日志能让您深入了解容器内应用程序的行为,从而帮助追踪导致任何问题的事件序列。
Amazon X-Ray:
https://aws.amazon.com/cn/xray/
本演示使用应用程序日志。
这将简化应用程序故障排除流程。本文演示的问题是出在向第三方应用程序发出的下游调用上,这些调用返回了超时错误。
这一增强功能还可与Amazon CloudWatch Application Signals配合使用,以自动检测应用程序。您可以监控当前应用程序的健康状况,并跟踪应用程序相对于服务水平目标的长期性能表现。
Amazon CloudWatch Application Signals:
https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Application-Monitoring-Sections.html
service-level objectives:
https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-ServiceLevelObjectives.html
选择Amazon CloudWatch Application Signals。
与Amazon CloudWatch Application Signals的集成提供了端到端的可视性,有助于您将容器性能与终端用户体验关联起来。
在图表中选择数据点时,您可以看到相关的跟踪信息,这些跟踪信息会显示所有相关的服务及其影响,您还可以访问相关日志以了解根本原因。
现已推出
Amazon ECS中具有增强可观测性的Container Insights现已在所有亚马逊云科技区域推出。
立即开始使用,体验针对容器工作负载的增强可观测性。您可复制下方链接访问Amazon CloudWatch文档,了解更多信息。
Amazon CloudWatch文档:
https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/ContainerInsights.html
星标不迷路,开发更极速!
关注后记得星标「亚马逊云开发者」
听说,点完下面4个按钮
就不会碰到bug了!
点击阅读原文查看博客!获得更详细内容!