AWS CLIでインスタンスを作った

参考サイト

Amazon VPCを使ったミニマム構成のサーバ環境を構築する

VPCについて非常にわかりやすかった。

AWSでVPCを作る

コマンドが新しくなって変わってしまいましたが流れは参考になりました。

というわけでVPCに1インスタンスを作成してみたのでそのメモ。

VPCを作る

aws ec2 create-vpc --cidr-block 192.168.1.0/24

確認

aws ec2 describe-vpcs

サブネット(パブリック)を作る

aws ec2 create-subnet \
--vpc-id vpc-239b7447 \
--cidr-block 192.168.1.0/24 \
--availability-zone us-east-1e

確認

aws ec2 describe-subnets

VPCのセキュリティグループを作る

aws ec2 create-security-group --group-name グループ名 --description "説明" --vpc-id vpc-239b7447

確認

aws ec2 describe-security-groups

VPCのセキュリティグループにルールを追加する

aws ec2 authorize-security-group-ingress --group-id sg-2e77f949 --protocol tcp --port 22 --cidr 0.0.0.0/0
aws ec2 authorize-security-group-ingress --group-id sg-2e77f949 --protocol tcp --port 80 --cidr 0.0.0.0/0

EC2インスタンスを起動する

aws ec2 run-instances \
--image-id ami-1ecae776 \
--instance-type t2.micro \
--security-group-ids sg-2e77f949 \
--subnet-id subnet-e82ccfd5 \
--key-name "鍵は登録済だったので指定"\
--region us-east-1

確認

aws ec2 describe-instances

GateWayを作成する

aws ec2 create-internet-gateway

確認

aws ec2 describe-internet-gateways

VPCにアタッチする

aws ec2 attach-internet-gateway --internet-gateway-id igw-fc81de99 --vpc-id vpc-239b7447

Elastic IPを取得する

aws ec2 allocate-address --domain vpc

確認

aws ec2 describe-addresses

Elastic IPをEC2にアタッチする

aws ec2 associate-address --instance-id i-d95dc030 --allocation-id eipalloc-c1240aa4

ルーティングテーブルの確認

aws ec2 describe-route-tables

ルーティングテーブルにルールを追加する

aws ec2 create-route --route-table-id rtb-7c66b118 --destination-cidr-block 0.0.0.0/0 --gateway-id igw-fc81de99

SSHで接続

ssh ec2-user@elestic-ip

接続できたのでひとまず止める

aws ec2 stop-instances --instance-ids i-d95dc030

次に再開するときは起動から

aws ec2 start-instances --instance-ids i-d95dc030