当前位置: 首页 > 知识库问答 >
问题:

在AWS-ECS的新集群上获取"资源:内存"错误

梁丘德寿
2023-03-14

我在AWS上使用ecs-cli设置了一个带新集群,命令如下:

配置群集:ecs cli配置--群集群集名称--区域名称--默认启动类型EC2--配置名称配置名称

使用默认配置文件:ecs cli配置默认--配置名称配置名称

创建群集:ecs-cli up--key对key_name--ablece-iam--size 1实例类型t2.micro安全组sg_id--vpcvpc_id子网subnet_id集群配置config_name

集群已在ECS上成功创建。但是当我试图运行我的docker-comment文件来运行jenkins和jenkins数据卷容器(已经推送到ECR)时,我得到了资源:内存错误,即使CPU和内存利用率为0%。

将docker compose文件部署到群集:ecs cli compose up--群集配置id

实际结果:

警告[0000]跳过服务不支持的YAML选项。。。选项名称=网络服务名称=jenkins WARN[0000]跳过服务不支持的YAML选项。。。选项名称=网络服务名称=jenkins_dv INFO[0000]使用ECS任务定义TaskDefinition=“aws infra:4”INFO[0000]无法运行容器原因=“资源:内存”

    jenkins:
      image: jenkins:latest
      cpu_shares: 50
      mem_limit: 524288000
      ports: ["8080:8080", "50000:50000"]
      volumes_from: ['jenkins_dv']
    jenkins_dv:
      image: jenkins_dv:latest
      cpu_shares: 50
      mem_limit: 524288000   

即使在删除cpu_共享和mem_限制后运行docker compose文件(因为EC2实例不需要),我也会遇到同样的错误。由于集群是新的,没有任何CPU或内存被使用,因此应成功创建任务。我做错了什么?

共有1个答案

万高畅
2023-03-14

我已经找到了这个问题的解决办法。我已经为这两个容器分配了500MB(字节)的内存限制。根据AWS文档,tc.micro有1GB内存,但如果您打开实例(群集

 类似资料:
  • 我想知道我正在使用的整个K8s集群中有哪些可用资源。 明确地说,我不是在谈论资源配额,因为它们只定义每个名称空间的资源。我想知道整个集群的功能是什么(内存、cpu等等)。请注意,所有资源配额的总和并不等于集群的能力。与集群的资源相比,总和可以更大(为名称空间之间的资源创建竞争条件)或更小(集群未充分利用其潜力)。 我能用kubectl回答这个问题吗?

  • 我创建了一个启动类型为EC2的AWS ECS集群。基于ec2+windows的集群。我必须在这个集群内运行java应用程序的docker映像。我创建了基于linux的docker映像,但它不能在windows集群中工作。我得到以下错误:状态原因cannotpullcontainererror:映像操作系统“Linux”不能在此平台上使用 我的docker文件是:

  • 我刚刚设置了一个AWS EMR集群(带有Spark 2.3.2的EMR版本5.18)。我ssh进入主maschine,并运行spark-shell或pyspark,得到以下错误: 我是新的火花和EMR,不知道该怎么做。是否有一些配置步骤我错过了或任何其他我必须提供使其工作? 谢谢你的帮助!

  • 我怀疑与ECS fargate内存使用有关。 我用fargate创建了一个任务定义(0.5vCpu 1GB RAM),并通过服务启动了它。 谁能给我解释一下吗?就像有任何Docker master或某些守护程序从任务定义中获取内存一样。

  • 多集群资源即统一管理集群的命名空间、角色、集群角色等资源并将其映射到多个集群中。 命名空间 命名空间用于逻辑上隔离Kubernetes集群中的资源。 角色 角色定义了对集群的指定命名空间下资源的权限。 集群角色 集群角色定义了对集群下资源的权限。 角色绑定 角色绑定定义了角色绑定和服务账户的绑定关系。 集群角色绑定 集群角色绑定定义了集群角色和服务账户的绑定关系。

  • 但它有说明: 此操作仅由Amazon ECS代理使用,不打算在代理之外使用。 看起来不像是有效的解决方案。 所以我: > 通过名为“test-cluster”的CreateCluster方法创建新的集群。 通过RegisterTaskDefinition创建新任务 创建了新的EC2实例,该实例具有ECS优化的AMI类型的ecsInstanceRole角色,这对我所在的区域是正确的。那里是问题开始的