LoginSignup
9
9

More than 5 years have passed since last update.

[AWS]コマンドラインからVPCを作成してみよう!その1[AWSCLI]

Posted at

気温上がりましたね・・・暑いの苦手です。吉田です。
前回までリファレンスを書いてきました。じゃあ実際に作るのはどうすりゃいいんじゃ!
ってことでやっていきます。
前の投稿でも書きましたが、regionは適宜指定してください。


awscliでVPC環境を構築しよう!

今回のゴールはこちら

150713-0002.jpg

publicサブネットを1つ持つ一般的なVPCを作成します。
本投稿の目標は

150713-0003.jpg

  1. VPCを作成する
  2. IGWを作成する
  3. 作成したIGWをVPCにアタッチする

ところまでやってみたいと思います。

1.VPCの作成

[aws ec2 create-vpc]コマンド

早速VPCを作成していきます。まず使用するのがcreate-vpcコマンド
名前通り、VPCを作成します。
使用するオプションは以下の通りです。

オプション   意味     何を書けば良いか
--cidr-block CIDRを書きます 192.168.0.0/16とか
--region リージョンを書きます ap-northeast-1など

サンプル
aws ec2 create-vpc --cidr-block 10.0.0.0/16 

VPCのCIDRを指定して作成します。
コマンドライン上でサンプルコードを実行してください。
東京リージョンに10.0.0.0/16の範囲を持つVPCが一つ作成されます。
成功すると以下のように出力が帰ってくるのでVpcIdを控えておいて下さい。後ほど使用します。

表示
{
    "Vpc": {
        "InstanceTenancy": "default", 
        "State": "pending", 
        "VpcId": "vpc-xxxxxxxx",  
        "CidrBlock": "10.0.0.0/16", 
        "DhcpOptionsId": "dopt-xxxxxxxx"
    }
}

[aws ec2 create-tags]コマンド

作成したVPCには名前をつけておきましょう。
AWS上のリソースにタグ付けをしておくことは非常に大事です。
CLIで操作する際にタグが付いていると簡単に値を取得できるメリットは大きいですが、やはりそこそこ使っていると「これ、そもそもなんだっけ?必要だっけ?」ってなってきます。名前の管理は大切です。

オプション   意味     何を書けば良いか
--resources タグをつけたいサービスのid vpc-XXXXXXXX

今回はVPCなのでVPCのidを指定します。インスタンスならinstanceidを指定します。

サンプル
aws ec2 create-tags --resources vpc-XXXXXXXX --tags Key=Name,Value=testVPC

VPCidを先ほど作成したvpcのidに指定して作成してください。
成功しても何も帰ってこないのでできたか確認してみましょう。

[describe-tags]コマンド

確認
aws ec2 describe-tags --filters "Name=resource-id,Values=vpc-xxxxxxxx"

表示
{
    "Tags": [
        {
            "ResourceType": "vpc", 
            "ResourceId": "vpc-xxxxxxxx", 
            "Value": "testVPC", 
            "Key": "Name"
        }
    ]
}

このように表示されれば無事VPCにタグ付けがされています。
マネジメントコンソールでもtestVPCが確認できますよ!

2.IGWを作成する

[create-internet-gateway]コマンド

次にIGWを作成していきます。

サンプル
aws ec2 create-internet-gateway

このコマンドは特にオプションは必要ないのでそのまま実行してください。
強いて言えばregionの指定くらいです。

表示
{
    "InternetGateway": {
        "Tags": [], 
        "InternetGatewayId": "igw-xxxxxxxx", 
        "Attachments": []
    }
}

上記の「InternetGatewayId」を控えておいて下さい。後ほど使います。

3.作成したIGWをVPCにアタッチする

[attach-internet-gateway]コマンド

先ほど作ったIGWをVPCにアタッチします。

オプション  意味     何を書けばいいか
--internet-gateway-id IGWのidを指定する igw-XXXXXXXX
--vpc-id IGWをアタッチするVPCを指定する  vpc-xxxxxxxx
サンプル
aws ec2 attach-internet-gateway --internet-gateway-id igw-XXXXXXXX --vpc-id vpc-xxxxxxxx

上記サンプルを自分のメモに沿って修正し実行してください。
特に何も表示されなければ大丈夫です。


どうでしょうか?
VPCの作成からIGWのアタッチまでをCLIで実行することができました。
フィルターやjqを使って取得したidを変数化しておけばこれらの操作を自動化することもできますよ♪

次回はサブネットの作成なんかを見ていきたいと思います!

9
9
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
9