【发布时间】:2020-08-10 08:06:21
【问题描述】:
我有一个启动一些 ECS 任务的脚本。要运行任务,我必须提供可以运行任务的私有子网。但是,目前我正在将私有子网 ID 从 AWS 控制台复制并粘贴到我的脚本中,这有点笨拙,所以我尝试使用 AWS CLI 以脚本方式获取私有子网。
我已经想出了如何获取 VPC Id,但我似乎在过滤子网结果时遇到了问题:
a) 我只得到私有子网 b) 我只得到那些子网的 ID
我现在拥有的是:
aws ec2 describe-subnets --filter Name=vpc-id,Values=vpc-0123456789
如何在此命令中添加“a”和“b”(首选没有任何外部或第 3 方工具)?
【问题讨论】:
-
最简单的方法是将子网标记为私有和公共。否则,区分私有子网和公共子网并不容易。
-
在我看来
MapPublicIpOnLaunch表示子网是公共的还是私有的,我的意思是,AWS 必须能够区分公共和私有。更多的是,如何在结果集中查询具有特定值的属性。 -
技术上私有实例也可以将
MapPublicIpOnLaunch设置为true。但是,如果您始终如一地创建具有不同MapPublicIpOnLaunch值的子网,那么它也可以工作。
标签: amazon-web-services command-line-interface amazon-vpc