Amazon Elastic Container Service 监控集成
Amazon Elastic Container Service 可让您轻松在 EC2 实例的托管集群上运行 Docker 化应用程序。通过 Site24x7 集成,您现在可以针对 EC2 启动类型和 Fargate 启动类型,在集群级别和服务级别监控利用率统计信息。

使用场景
Amazon ECS 是一种高度可扩展的容器管理服务。设想这样一个使用场景:您有一个容器在 ECS 监视器中运行。当您将 Amazon ECS 与 Site24x7 集成后,系统将创建 ECS Cluster 和 ECS Cluster Service 监视器。如果您的集群监视器出现宕机或问题,您可以通过配置的告警来识别并跟踪该问题。
Site24x7 与 Amazon ECS 集成的优势
Site24x7 与 Amazon Elastic Container Service (ECS) 的集成使您能够在集群、容器、服务和任务级别监控 Amazon ECS。
通过 Site24x7 与 Amazon ECS 的集成,您可以:
- 使用多个指标监控您的资源。
- 配置阈值,并在集群或容器实例宕机时接收告警。
- 以图表形式获取服务、任务和容器实例的详细概述,以及容器洞察详情。
前提条件
- 对于 EC2 启动类型,请确保 Amazon ECS 容器实例运行的容器代理版本为 1.4.0 或更高版本。同时,确保启动时分配给容器实例的 IAM 角色具有 ecs:StartTelemetrySession 权限。
- 对于 Fargate 启动类型,CloudWatch CPU 和内存利用率指标将自动收集。
配置
- 如果尚未完成,请通过创建 IAM 用户或 IAM 角色,授予 Site24x7 访问您 AWS 账户的权限。 了解更多
- 在"集成 AWS 账户"页面,请确保在"要发现的服务"字段中选中了 ECS Cluster 复选框。 了解更多。
权限
请确保为 Site24x7 创建的 IAM 用户或 IAM 角色分配的 IAM 策略中包含以下只读级别操作。了解更多。
- "ecs:ListServices",
- "ecs:ListAccountSettings",
- "ecs:ListTagsForResource",
- "ecs:DescribeServices",
- "ecs:ListContainerInstances",
- "ecs:DescribeContainerInstances",
- "ecs:DescribeClusters",
- "ecs:ListClusters",
- "ecs:ListTasks",
- "ecs:DescribeTasks"
轮询频率
ECS 聚合指标数据按照设定的轮询频率(1 分钟至 1 天)进行收集。了解更多。
许可
- 每个 ECS 集群被视为一个基本监视器。
- 集群中运行的每个 ECS 服务被视为一个基本监视器。
支持的指标
集群
以下指标在集群范围内收集:
| 属性 | 描述 | 统计值 | 数据类型 |
|---|---|---|---|
| CPU reservation | 衡量集群中正在运行的任务所预留的 CPU 单元百分比。 | Average | Percent |
| Cluster CPU utilization | 衡量集群中已使用的 CPU 单元百分比。 | Average | Percent |
| Memory Reservation | 衡量集群中运行任务所预留的内存百分比。 | Average | Percent |
| Cluster Memory utilization | 衡量集群中已使用的内存百分比。 | Average | Percent |
| Active Services | 衡量集群中正在运行的活跃服务数量。 | Sum | count |
| Pending task | 衡量处于 PENDING 状态的任务数量。 | Sum | count |
| Running task | 衡量处于 RUNNING 状态的任务数量。 | Sum | count |
| Container instances | 衡量已注册到集群的容器实例数量。 | Sum | count |
服务
以下指标在服务级别收集:
| 属性 | 描述 | 统计值 | 数据类型 |
|---|---|---|---|
| Service CPU utilization | 衡量服务中已使用的 CPU 单元百分比 | Average | Percent |
| Service memory utilization | 衡量服务中已使用的内存百分比。 | Average | Percent |
| Pending tasks | 衡量服务中处于 PENDING 状态的任务数量。 | Sum | count |
| Running tasks | 衡量服务中处于 RUNNING 状态的任务数量。 | Sum | count |
容器实例
| 属性 | 描述 | 统计值 | 数据类型 |
|---|---|---|---|
| EC2 pending tasks | 衡量每个容器实例处于 PENDING 状态的任务数量。 | Sum | Count |
| EC2 running tasks | 衡量每个容器实例处于 RUNNING 状态的任务数量。 | Sum | Count |
| CPU available | 衡量每个容器实例可用的 CPU 单元数量。 | Average | Unit |
| Memory available | 衡量容器实例上剩余的内存单元数量。 | Average | MiB |
容器洞察
| 属性 | 描述 | 统计值 | 数据类型 |
|---|---|---|---|
| CPU Utilized | 集群中任务使用的 CPU 单元数。 | Average | Unit |
| CPU Reserved | 集群中任务预留的 CPU 单元数。 | Average | Unit |
| Memory Utilized | 集群中任务正在使用的内存。 | Average | MB |
| Memory Reserved | 集群中任务预留的内存。 | Average | MB |
| Network Recieve Bytes | 集群中资源接收的字节数。 | Sum | MB |
| Network Transmit Bytes | 集群中资源发送的字节数。 | Sum | MB |
| Storage Read Bytes | 集群中从存储读取的字节数。 | Sum | MB |
| Storage Write Bytes | 集群中写入存储的字节数。 | Sum | MB |
| Container Instance Count | 已注册到集群的、运行 Amazon ECS 代理的 EC2 实例数量。 | Maximum | Count |
| Deployment Count | 集群中的部署数量。 | Maximum | Count |
| Desired Task Count | 集群中期望的任务数量。 | Maximum | Count |
| Pending Task Count | 当前处于 PENDING 状态的任务数量。 | Maximum | Count |
| Running Task Count | 当前处于 RUNNING 状态的任务数量。 | Maximum | Count |
| Task Set Count | 服务中的任务集数量。 | Maximum | Count |
任务
| 属性 | 描述 |
|---|---|
| Tasks Failed | 报告任务因错误停止或无法启动的情况。 |
任务定义
| 属性 | 描述 | 统计值 | 数据类型 |
|---|---|---|---|
| CPU Utilized | 集群中任务定义使用的 CPU 单元数。 | Average | Unit |
| CPU Reserved | 集群中任务定义预留的 CPU 单元数。 | Average | Unit |
| Memory Utilized | 集群中任务定义使用的内存。 | Average | MB |
| Memory Reserved | 集群中任务定义预留的内存。 | Average | MB |
| Number of Bytes Received | 集群中资源接收的字节数。 | Average | MB |
| Number of Bytes Sent | 集群中资源发送的字节数。 | Average | MB |
| Storage Read Bytes | 集群中从存储读取的字节数。 | Average | MB |
| Storage Write Bytes | 集群中写入存储的字节数。 | Average | MB |
| Ephemeral Storage | 临时存储的大小。 | Average | GB |
元数据
此任务详情提供有关任务状态和配置的以下信息。
| 属性 | 描述 |
|---|---|
| Task ID | 任务的唯一 ID。 |
| Task Definition | 完整的任务定义描述。 |
| Cluster Name | 集群的简称。 |
| Launch type | 任务运行所用的启动类型。有效值为 EC2 和 Fargate。 |
| Desired Status | 显示任务的期望状态。 |
| Last Status | 显示任务的最后已知状态。 |
| CPU | 显示任务使用的 CPU 单元数量。 |
| Memory | 显示任务使用的内存量。 |
| Started by | 显示任务启动时指定的标签。 |
| Version | 任务的版本计数器。 |
| Created at | 显示任务创建时的时间戳。 |
| Stopped at | 显示任务停止时的时间戳。 |
| Task Duration | 显示任务创建时间与停止时间之间的差值。 |
| Stopped Reason | 显示任务从 RUNNING 状态转换时的持续时间 |
| Connectivity | 显示任务的连接状态。 |
| Connectivity at | 显示任务进入 CONNECTED 状态时的时间戳。 |
| Execution stopped at | 显示执行停止时的时间戳。 |
| Group | 与您的任务关联的任务组名称。 |
| Platform version | 您的任务运行所在的平台版本。 |
阈值配置
为 Site24x7-AWS ECS 集成监视器配置阈值:
- 登录您的 Site24x7 账户,导航至管理 > 配置文件 > 阈值与可用性。
- 点击添加阈值配置文件。
- 从监视器类型下拉菜单中选择 ECS Cluster/ECS Cluster Service,并在显示名称字段中提供适当的名称。
预测
估算以下 Amazon ECS Cluster Service 性能指标的未来值,并就增加容量或扩展 AWS 基础设施做出明智决策。
- Service CPU utilization(服务 CPU 利用率)
- Service Memory utilization(服务内存利用率)
- Running Tasks(运行中的任务)
同样,您也可以查看以下 Amazon ECS Cluster 指标的预测:
- CPU Reservation(CPU 预留)
- Cluster CPU Utilization(集群 CPU 利用率)
- Memory Reservation(内存预留)
- Cluster Memory Utilization(集群内存利用率)
- Container Instances(容器实例)
查看 Site24x7 的 ECS 数据
查看 ECS 数据:
- 登录 Site24x7 控制台。
- 点击 AWS。
- 选择已监控的 AWS 账户。
- 从下拉菜单中选择 ECS Cluster(或)ECS Cluster Service。
- 从已监控的集群或服务列表中,选择您要查看指标的 ECS 资源。
将 Amazon ECS 日志转发至 AppLogs,以识别和排查容器化应用程序的问题。
Site24x7 的 ECS 监控界面
您可以在 Site24x7 的 ECS 监控界面中查看以下数据:
摘要
在摘要标签页中,通过时间序列图表获取集群级别指标的概述。这些图表提供有关 CPU 利用率、CPU 预留、内存预留和内存利用率的信息。该标签页还提供整体统计数据,例如集群中创建的服务数量、待处理任务、运行中的任务和容器实例。
容器洞察
Container Insights 收集并分析来自容器化应用程序和微服务的指标与日志。为集成的监视器配置 Container Insights 后,您可以通过时间序列图表获取 Fargate/EC2 级别的指标信息,例如 CPU 利用率、CPU 预留、内存预留、内存利用率、网络流量、存储流量和容器实例。
拓扑视图
拓扑视图标签页提供实时的、以资源为中心的依赖关系图。它动态追踪您的 ECS 资源与周围 AWS 基础设施的实时连接关系,在告警触发时能更快速地定位根本原因。如果任何连接的组件处于严重状态,拓扑视图中会相应标记,并显示中断原因,让您无需离开监视器页面即可精准定位故障点。与账户范围的拓扑视图不同,此标签页将可视化范围限定为单个资源,精确回答以下问题:此 ECS 资源连接到哪些资源,以及它出现故障时会影响什么?您可以从单个资源追踪完整的依赖链,直至其主要父实体、服务类型、区域和 AWS 账户级别。
服务
服务用于在 ECS Cluster 中同时运行一定数量的任务定义。此标签页列出集群中的服务数量及其配置详情,并显示服务级别 CPU 利用率、内存利用率以及待处理和运行状态下任务数量的时间序列图表。
任务定义
在 Amazon ECS 中运行 Docker 容器需要任务定义。任务定义标签页显示用于在特定 ECS 集群中创建任务的任务定义列表。
实例
实例标签页显示 ECS Cluster 中的容器实例列表以及实例相关信息,例如可用内存、可用 CPU、待处理任务和运行中的任务。
已监控资源标签页显示与 ECS Cluster 关联的 EC2 实例。
任务
在 Amazon ECS 中,容器在任务定义中定义,用于运行任务。任务是在集群中执行任务定义的实例。任务标签页显示运行中、已停止和待处理任务的详情。
容器
容器标签页显示容器专属数据,包括任务定义、任务及其状态。
