ぶろとよ

ネットワーク系クラウドエンジニア(AWS)の技術ブログ。自動化に興味があるためAWS CLIを勉強&アウトプット中。

AWS CLI:サブネットの作成・表示・削除コマンド

AWS CLI:サブネットの作成・表示・削除コマンド

検証環境や前提について

  • 検証日: 2021/03/29
  • PC環境:

    • Windows10 Pro Ver1909
      • AWS CLI Ver2.1.3
        • profile default: 読み取り専用
        • profile aws_RW: 書き込み権限あり
      • PowerShell Ver7.0.3
  • 本コマンドはPowerShelで検証しています。

  • 作成や削除をする場合「--profile aws_RW」オプションを付与します。
  • 表示の場合は「profile default」のためprofileオプションを使用しません。
  • コマンド内のパラメータやIDは検証で作成したものをそのまま使用しています。自身の環境に書き換えて使用してください。
  • 個人で検証しているため実行結果に責任は持てません。必ずご自身でも検証してから使用してください。


目次


関連記事

  1. AWS CLI:VPCの作成・表示・削除コマンド
  2. AWS CLI:サブネットの作成・表示・削除コマンド
  3. AWS CLI:ネットワークACLの作成・表示・削除コマンド
  4. AWS CLI:セキュリティグループの作成・表示・削除コマンド
  5. AWS CLI:マネージドプレフィックスリストの作成・表示・削除コマンド


1. サブネットの作成

1.1. 作成するサブネット構成

項目 CLIオプション 設定値
VPC ID --vpc-id vpc-09ff13fba3e354e62
アベイラビリティーゾーン --availability-zone ap-northeast-1a
IPv4 CIDR ブロック --cidr-block 10.1.0.0/24
タグ(Name) --tag-specifications Key: Name, Value: Test-Sub1a
タグ(System) --tag-specifications Key: System, Value: Test


1.2. サブネット作成コマンド

AWS CLI v2 リファレンスガイド: create-subnet

aws ec2 create-subnet `
    --profile aws_RW `
    --vpc-id vpc-09ff13fba3e354e62 `
    --availability-zone ap-northeast-1a `
    --cidr-block 10.1.0.0/24 `
    --tag-specifications "ResourceType=subnet, `
        Tags=[{Key=Name,Value=Test-Sub1a}, `
              {Key=System,Value=Test}]"


1.3. サブネット表示コマンド

AWS CLI v2 リファレンスガイド: describe-subnets

# すべてのサブネットを表示する
aws ec2 describe-subnets

# CIDR==10.1.0.0/24 のサブネットのみを表示する
aws ec2 describe-subnets --filters "Name=cidr-block,Values=10.1.0.0/24"

# Nameタグ==Test-Sub1a のサブネットのみを表示する
aws ec2 describe-subnets --filters "Name=tag:Name,Values=Test-Sub1a"

# 特定VPCのサブネットのみを表示する
aws ec2 describe-subnets --filters "Name=vpc-id,Values=vpc-09ff13fba3e354e62"


1.4. サブネット削除コマンド

AWS CLI v2 リファレンスガイド: delete-subnet

削除するサブネットのIDを調べる。

aws ec2 describe-subnets `
    --filters "Name=tag:Name,Values=Test-Sub1a" `
    --query "Subnets[].SubnetId" `
    --output text

> subnet-07e3fb23e9e5135eb

サブネットを削除するコマンド。

aws ec2 delete-subnet `
    --profile aws_RW `
    --subnet-id subnet-07e3fb23e9e5135eb


1.5. パブリックIPアドレスを自動取得できるようにするコマンド

サブネットをパブリックにし、パブリックIPアドレスを自動取得できるようにするには、インターネットに接続できるRouteTableとの関連付けや下記コマンドが必要になります。

aws ec2 modify-subnet-attribute `
    --profile aws_RW `
    --subnet-id subnet-07e3fb23e9e5135eb `
    --map-public-ip-on-launch

# 逆で、OFFにする時は「--no-map-public-ip-on-launch」にする。

インターネットに接続できるRouteTableとの関連付けは、以下URLを参照。

ステップ 2: サブネットをパブリックにする