記事一覧へ

AWS CLIでEC2を作成する

コピー&ペーストで簡単にEC2インスタンスを作成してみよう

ClaudeClaude Opus 4.5による翻訳

AI生成コンテンツは不正確または誤解を招く可能性があります。

この記事ではAWS CLIのインストールと設定が完了していることを前提に進めます。

VPC作成

aws ec2 create-vpc --cidr-block

*파란색 텍스트를 클릭하면 간편하게 수정 후 복사할 수 있습니다.

上記のコマンドでVPCを作成すると、VPC情報が返されます。

サブネット作成

aws ec2 create-subnet --vpc-id \ --cidr-block

*파란색 텍스트를 클릭하면 간편하게 수정 후 복사할 수 있습니다.

サブネットを作成すると、上記のようにサブネット情報が返されます。

IGW作成

aws ec2 create-internet-gateway

インターネットゲートウェイを作成し、返されるIDをメモしておきます。

aws ec2 attach-internet-gateway --internet-gateway-id \ --vpc-id

*파란색 텍스트를 클릭하면 간편하게 수정 후 복사할 수 있습니다.

次にインターネットゲートウェイをVPCに接続します。

2回実行してalready attached to networkというメッセージが出れば成功です。

ルートテーブル作成

aws ec2 create-route-table --vpc-id

*파란색 텍스트를 클릭하면 간편하게 수정 후 복사할 수 있습니다.

次のコマンドでルートテーブルを作成します。

aws ec2 create-route --route-table-id \ --destination-cidr-block \ --gateway-id

*파란색 텍스트를 클릭하면 간편하게 수정 후 복사할 수 있습니다.

結果値Trueが返されます。

次にルートテーブルにサブネットを接続してみましょう。

aws ec2 describe-subnets --filters "Name=vpc-id,Values=" \ --query "Subnets[*].{ID:SubnetId,CIDR:CidrBlock}"

*파란색 텍스트를 클릭하면 간편하게 수정 후 복사할 수 있습니다.

サブネットのIDは次のコマンドで確認できます。

aws ec2 associate-route-table --subnet-id \ --route-table-id

*파란색 텍스트를 클릭하면 간편하게 수정 후 복사할 수 있습니다.

サブネットをルートテーブルに接続します。

aws ec2 modify-subnet-attribute --subnet-id \ --map-public-ip-on-launch

*파란색 텍스트를 클릭하면 간편하게 수정 후 복사할 수 있습니다.

次のコマンドで、EC2パブリックIPアドレスを自動的に割り当てるように設定します。 EC2インスタンスは再起動するとIPアドレスが変更されるため、必ず設定する必要があります。 そうでなければ、Elastic IPアドレスをインスタンスに関連付ける必要があります。

セキュリティグループ作成

aws ec2 create-security-group --group-name \ --description \ --vpc-id

*파란색 텍스트를 클릭하면 간편하게 수정 후 복사할 수 있습니다.

次のコマンドでセキュリティグループを作成します。

aws ec2 authorize-security-group-ingress --group-id \ --protocol \ --port \ --cidr

*파란색 텍스트를 클릭하면 간편하게 수정 후 복사할 수 있습니다.

続いてセキュリティグループの22ポート(SSH)をどこからでもアクセスできるように0.0.0.0/0で開放します。

キーペア作成

aws ec2 create-key-pair --key-name \ --query 'KeyMaterial' --output text > .pem chmod 400 .pem

*파란색 텍스트를 클릭하면 간편하게 수정 후 복사할 수 있습니다.

キーペアを作成し、権限を設定します。

EC2作成

aws ec2 describe-images --owners self amazon | less

次のコマンドでAMIを探すことができます。適切なAMIを選択します。

aws ec2 run-instances --image-id \ --count 1 \ --instance-type t2.micro \ --key-name \ --security-group-ids \ --subnet-id

*파란색 텍스트를 클릭하면 간편하게 수정 후 복사할 수 있습니다.

次のコマンドでEC2インスタンスを作成します。

インスタンス作成時に出力されるインスタンスIDをメモしておきます。

aws ec2 describe-instances --instance-id

*파란색 텍스트를 클릭하면 간편하게 수정 후 복사할 수 있습니다.

上記のコマンドでインスタンスの状態がrunningになるまで待ちます。

aws ec2 describe-instances --instance-id \ --query 'Reservations[*].Instances[*].PublicIpAddress' \ --output text

*파란색 텍스트를 클릭하면 간편하게 수정 후 복사할 수 있습니다.

上記のコマンドでEC2インスタンスのパブリックIPを確認します。

ssh -i .pem ec2-user@

*파란색 텍스트를 클릭하면 간편하게 수정 후 복사할 수 있습니다.

先ほど作成したキーとEC2のIPを入力してSSH接続を試みます。

すると、CLIからEC2インスタンスへの接続に成功したことが確認できます。

aws ec2 terminate-instances --instance-ids aws ec2 delete-subnet --subnet-id aws ec2 delete-route-table --route-table-id aws ec2 detach-internet-gateway --internet-gateway-id --vpc-id aws ec2 delete-internet-gateway --internet-gateway-id aws ec2 delete-security-group --group-id aws ec2 delete-vpc --vpc-id

*파란색 텍스트를 클릭하면 간편하게 수정 후 복사할 수 있습니다.

EC2インスタンスおよびセキュリティグループの削除は次の順序で行えます。 一度に入力すると削除されない場合があるので、1つずつ入力してください。

  • EC2インスタンス削除
  • サブネット削除
  • ルートテーブル削除
  • インターネットゲートウェイをVPCから分離
  • インターネットゲートウェイ削除
  • セキュリティグループ削除
  • VPC削除

より良い方法としてnukeを使用してすべて削除する方法もあります。


ref: https://dev.classmethod.jp/articles/build-ec2-with-aws-cli/

作成日:
更新日:

前の記事 / 次の記事