My Tracking

My Tracking

記憶力の低下が気になるアラフォー男の備忘録

【AWS学習記】WordPress 環境構築②~VPC作成

WordPress構築を行うにあたり、まずはVPCを作成してサブネットを作成する。 ここでも、極力aws-cliを利用する。

目次

構成

(構成図)

VPCの作成

まずは、今回作成するネットワーク全体を表すCIDRを入力し、VPCを作成する。 今回は、10.0.0.0/16をアドレス範囲とした。

[root@Linux ~]# aws ec2 create-vpc --cidr-block 10.0.0.0/16
{
    "Vpc": {
        "VpcId": "vpc-xxx4027b",
        "InstanceTenancy": "default",
        "State": "pending",
        "DhcpOptionsId": "dopt-027a3367",
        "CidrBlock": "10.0.0.0/16",
        "IsDefault": false
    }
}
[root@Linux ~]#
[root@Linux ~]# aws ec2 describe-vpcs
{
    "Vpcs": [
        {
            "VpcId": "vpc-xxx4027b",
            "InstanceTenancy": "default",
            "State": "available",
            "DhcpOptionsId": "dopt-027a3367",
            "CidrBlock": "10.0.0.0/16",
            "IsDefault": false
        }
    ]
}
[root@Linux ~]#

作成された際のVpcIdを控えておく。(ここでは、vpc-xxx4027b)

サブネットの作成

作成したVPCにサブネットを作成する。

http://dev.classmethod.jp/cloud/aws/minimum-amazon-vpc-server-environment/

上記参照サイトを参考に、下記3つのサブネットを作成する。

  • 10.0.0.0/24 WEBサーバを収容する。AZはap-northeast-1aとした。
  • 10.0.0.1/24 RDSを収容する。AZはap-northeast-1cとした。
  • 10.0.0.2/24 今回はさしあたり利用しない

コマンドを流して、実行する。

まずは、10.0.0.0/24

[root@Linux ~]# aws ec2 create-subnet --vpc-id vpc-xxx4027b --cidr-block 10.0.0.0/24 --availability-zone ap-northeast-1a
{
    "Subnet": {
        "VpcId": "vpc-xxx4027b",
        "CidrBlock": "10.0.0.0/24",
        "State": "pending",
        "AvailabilityZone": "ap-northeast-1a",
        "SubnetId": "subnet-xxxbf105",
        "AvailableIpAddressCount": 251
    }
}
[root@Linux ~]#

次に、10.0.0.1/24

[root@Linux ~]# aws ec2 create-subnet --vpc-id vpc-xxx4027b --cidr-block 10.0.1.0/24 --availability-zone ap-northeast-1c
{
    "Subnet": {
        "VpcId": "vpc-xxx4027b",
        "CidrBlock": "10.0.1.0/24",
        "State": "pending",
        "AvailabilityZone": "ap-northeast-1c",
        "SubnetId": "subnet-xxx9c098",
        "AvailableIpAddressCount": 251
    }
}
[root@Linux ~]#
~]#

最後に、10.0.0.2/24

[root@Linux ~]# aws ec2 create-subnet --vpc-id vpc-xxx4027b --cidr-block 10.0.2.0/24 --availability-zone ap-northeast-1a
{
    "Subnet": {
        "VpcId": "vpc-xxx4027b",
        "CidrBlock": "10.0.2.0/24",
        "State": "pending",
        "AvailabilityZone": "ap-northeast-1a",
        "SubnetId": "subnet-xxxbf1bf",
        "AvailableIpAddressCount": 251
    }
}
[root@Linux ~]#

作成されたサブネットを下記のコマンドで確認しておく。

[root@Linux ~]# aws ec2 describe-subnets

インターネットゲートウェイの作成

VPCはデフォルトで、VPC内部のEC2インスタンスがインターネットと 接続できないとのことで、EC2インスタンスがインターネットに接続するための インターネットゲートウェイを作成する。

[root@Linux ~]# aws ec2 create-internet-gateway
{
    "InternetGateway": {
        "Tags": [],
        "InternetGatewayId": "igw-xxx0463b",
        "Attachments": []
    }
}
[root@Linux ~]#

作成された際のインターネットゲートウェイを控えておく。(ここでは、igw-xxx0463b)

作成されたインターネットゲートウェイを先に作成したvpc(ここでは、vpc-xxx4027b)にアタッチする。

[root@Linux ~]# aws ec2 attach-internet-gateway 
>  --internet-gateway-id igw-xxx0463b \
>  --vpc-id vpc-xxx4027b
[root@Linux ~]#

※実行後の出力はされない。

下記のコマンドで確認しておく。

[root@Linux ~]# aws ec2 describe-internet-gateways
{
    "InternetGateways": [
        {
            "Tags": [],
            "InternetGatewayId": "igw-xxx0463b",
            "Attachments": [
                {
                    "State": "available",
                    "VpcId": "vpc-xxx4027b"
                }
            ]
        }
    ]
}
[root@Linux ~]#

ルートテーブルの作成

VPCからインターネットへの接続するためのルートテーブルを作成する。 今回は、aws-cliでのやり方がよくわからなかっため、AWSコンソールから設定した。

VPCのダッシュボード画面より、[ルートテーブル]を選択する。その後、作成したvpc(ここでは、vpc-xxx4027b)を選択する。

[編集]する。

[別ルールの追加]をする。

下記を入力し、[保存]

* 送信先(0.0.0.0/0)
* ターゲットインターネットゲートウェイ(ここでは、igw-xxx0463b)

ルートテーブルが追加されたことを確認する。

最後に[サブネット]の画面で、下記のサブネットが作成したvpc(ここでは、vpc-xxx4027b)に 紐づいていることを確認する。

  • 10.0.0.0/24
  • 10.0.0.1/24
  • 10.0.0.2/24