ECS 的 CDK - 子网和架构类型

0

【以下的问题经过翻译处理】 大家好

我有 2 个关于如何使用 CDK 里的 python 语言部署 ECS 的问题。

1.我们如何通过CDK在集群上设置子网? VPC 使用 vpc 参数很简单,但是我找不到子网的参数。 2. 我们如何使用 CDK 设置架构(x64 或 ARM)?创建任务时,我需要将体系结构设置为特定值,因为出现以下错误:standard_init_linux.go:228: exec user process caused: exec format error

感谢您的帮助。

问候

profile picture
专家
已提问 5 个月前25 查看次数
1 回答
0

【以下的回答经过翻译处理】 您可以为您的 EC2 容器实例和/或您的 AWS VPC 网络配置指定特定的子网(如果您使用 Fargate 或 AWS VPC 网络来处理您的任务/服务)。

对于 EC2 实例,您可以传递给“add_capacity”(对于 EC2)的选项是此处 - 你想要 vpc_subnets 属性。

对于任务网络,您可以通过为 Ec2Service 指定“vpc_subnets”属性来指定 VPC 子网或 FargateService 声明。

如果您想在 Graviton2(arm64 架构)上运行您的任务,则无需声明 ECS 任务的架构,Fargate 除外。在撰写本文时,CDK 还没有对任务定义中的架构配置提供 Level 2 构造支持。您必须使用 Escape Hatch 来修改底层 L1 构造([CfnTaskDefinition](https:// docs.aws.amazon.com/cdk/api/v2/python/aws_cdk.aws_ecs/CfnTaskDefinition.html)来设置 runtime_platform 属性。

如果您在 EC2 实例上运行您的任务,您只需要确保您的 EC2 实例的架构与您的容器镜像的架构相匹配——或者,更好的是,创建一个多架构容器镜像。

profile picture
专家
已回答 5 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则