AWSのVPCに対してサブネットを、AWS CLIで作成、削除、表示します。
記事の目次
サブネットを作成する!(aws ec2 create-subnet)
VPCとAZとCIDRを指定してサブネットを作成します。AZは、Zone IDを指定して作成します。
$ aws ec2 create-subnet \ --vpc-id vpc-09e9993280674f6ed \ --availability-zone-id apne1-az1 \ --cidr-block 10.111.1.0/24 { "Subnet": { "AvailabilityZone": "ap-northeast-1c", "AvailabilityZoneId": "apne1-az1", "AvailableIpAddressCount": 251, "CidrBlock": "10.111.1.0/24", "DefaultForAz": false, "MapPublicIpOnLaunch": false, "State": "available", "SubnetId": "subnet-02afadc6bd9e8f59a", "VpcId": "vpc-09e9993280674f6ed", "OwnerId": "XXXXXXXXXXXX", "AssignIpv6AddressOnCreation": false, "Ipv6CidrBlockAssociationSet": [], "SubnetArn": "arn:aws:ec2:ap-northeast-1:580383548794:subnet/subnet-02afadc6bd9e8f59a", "EnableDns64": false, "Ipv6Native": false, "PrivateDnsNameOptionsOnLaunch": { "HostnameType": "ip-name", "EnableResourceNameDnsARecord": false, "EnableResourceNameDnsAAAARecord": false } } }
サブネットを表示する!(aws ec2 describe-subnets)
作成したサブネットを表示します。
$ aws ec2 describe-subnets --subnet-id=subnet-02afadc6bd9e8f59a { "Subnets": [ { "AvailabilityZone": "ap-northeast-1c", "AvailabilityZoneId": "apne1-az1", "AvailableIpAddressCount": 251, "CidrBlock": "10.111.1.0/24", "DefaultForAz": false, "MapPublicIpOnLaunch": false, "MapCustomerOwnedIpOnLaunch": false, "State": "available", "SubnetId": "subnet-02afadc6bd9e8f59a", "VpcId": "vpc-09e9993280674f6ed", "OwnerId": "XXXXXXXXXXXX", "AssignIpv6AddressOnCreation": false, "Ipv6CidrBlockAssociationSet": [], "SubnetArn": "arn:aws:ec2:ap-northeast-1:580383548794:subnet/subnet-02afadc6bd9e8f59a", "EnableDns64": false, "Ipv6Native": false, "PrivateDnsNameOptionsOnLaunch": { "HostnameType": "ip-name", "EnableResourceNameDnsARecord": false, "EnableResourceNameDnsAAAARecord": false } } ] }
タグをつける場合は、以下のコマンドを使用します。
$ aws ec2 create-tags --resources subnet-02afadc6bd9e8f59a --tags Key=Name,Value=vpc01-subnet01
サブネットを削除する!(aws ec2 delete-subnet)
サブネットを削除します。
$ aws ec2 delete-subnet --subnet-id=subnet-02afadc6bd9e8f59a
サブネットを削除したことを確認する!(aws ec2 describe-subnets)
サブネットが削除されたことを確認します。
$ aws ec2 describe-subnets --subnet-id=subnet-02afadc6bd9e8f59a An error occurred (InvalidSubnetID.NotFound) when calling the DescribeSubnets operation: The subnet ID 'subnet-02afadc6bd9e8f59a' does not exist
おわりに
サブネットは、VPCとアベイラビリティゾーンを指定して作成します。アベイラビリティゾーンを指定しないと任意のゾーンに作成されます。アベイラビリティゾーンを指定する場合ですが、ゾーン名はゾーンIDとの対応がアカウントごとに異なるので、ゾーンIDを指定したほうが無難だと思います。
関連記事