小编gsa*_*gsa的帖子

AWS ECS部署:内存不足

我配置了一个包含 3 个实例 (m5.large) 的 AWS ECS 集群,每个可用区(A、B 和 C)各有一个实例。该服务配置如下:

  • 服务类型:复制品
  • 任务数量:3
  • 最低健康百分比:30
  • 最大百分比:100
  • 展示位置模板:AZ 平衡点差
  • 服务自动缩放:否。

在任务定义中,我使用了以下内容:

  • 网络模式:awsvpc
  • 任务记忆:--
  • 任务CPU:--

在容器级别,我仅配置了内存软限制:

  • 软限制:2048 MB
  • 硬限制:--

我使用 awslogs 进行日志记录。上述配置有效,当我启动服务时,每个实例中都会运行一个 docker。其中一个实例中的“docker stats”显示以下内容:

MEM USAGE / LIMIT  
230MiB    / 7.501GiB
Run Code Online (Sandbox Code Playgroud)

容器实例(ECS控制台)显示如下:

Resources   Registered  Available  
CPU             2048       2048  
Memory          7680       5632  
Ports        5 ports
Run Code Online (Sandbox Code Playgroud)

上述结果在所有 3 个实例中都是相同的 - 已预留 2 GB 内存(软限制),内存上限为近 8 GB 的实例内存(未设置硬限制)。到目前为止,一切都按预期进行。

但是当我从 Jenkins 重新部署代码(使用强制部署)时,我在 Jenkins 日志中收到以下错误:

"message": "(service App-V1-Service) was unable to place a task because no container instance met …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services amazon-ecs docker

9
推荐指数
1
解决办法
8685
查看次数

标签 统计

amazon-ecs ×1

amazon-web-services ×1

docker ×1