🖌️

Amazon Q Developer for CLI:EC2作成とAWS構成図(draw.io)の出力

に公開

前提条件

  • WindowsOSであること
  • WSL2(Ubuntu)がインストール済みであること
  • AWSのアクセスキー、シークレットアクセスキーが払い出し済みであること
  • Amazon Q Developer for CLIをインストール済みであること
  • VScodeの拡張機能にDraw.io Integrationがインストール済みであること

概要

本記事はAWSが提供する生成AIアシスタントを自然言語で操作するAmazon Q Developer for CLIを使用してEC2インスタンスを作成し、作成したEC2への接続経路をdrow.ioを利用して出力する方法をまとめた記事です

Amazon QによるEC2インスタンス作成

チャットの起動

まずはAmazon Qの状態を確認しつつ、チャットを起動していきましょう

  • バージョン確認
$ q --version
q 1.12.1
  • 環境の確認
$ q doctor
✔ Everything looks good!
Amazon Q still not working? Run q issue to let us know!
  • チャットの開始
$ q chat

EC2インスタンスの作成

Amazon Qにインスタンスの要件を伝えてEC2を作成してもらいましょう

  • 以下のプロンプトを実行
$ 以下の条件でEC2インスタンスを起動してください
  インスタンスタイプ:t2.micro
  AMI:Amazon Linux 2023
  ストレージ:gp2
  • 作成するEC2インスタンスの設定が表示されるため問題なければ「y」を入力
🛠️  Using tool: use_aws

 ● Running aws cli command:

Service name: ec2
Operation name: run-instances
Parameters:
- associate-public-ip-address
- key-name: "XXX"
- subnet-id: "XXX"
- image-id: "XXX"
- tag-specifications: [{"ResourceType":"instance","Tags":[{"Key":"Name","Value":"XXX"}]}]
- instance-type: "t2.micro"
- block-device-mappings: [{"DeviceName":"/dev/xvda","Ebs":{"DeleteOnTermination":true,"VolumeSize":8,"VolumeType":"gp2"}}]
Profile name: default
Region: XXX
Label: t2.micro EC2インスタンスを起動
Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:
> y
  • AWSコンソールにて対象のEC2インスタンスが作成されていれば成功!

EC2インスタンスへのSSH接続設定

ここでは作成したEC2インスタンスにSSH接続するために必要な設定や他リソースの作成を行っていきます
※記事が長くなってしまうので詳細な手順は割愛

  • チャットにて以下を作成、設定
    • インターネットゲートウェイ作成
    • ルートテーブル作成
    • セキュリティグループのインバウンドルールにおけるSSH許可(ポート22)設定
  • WSLから以下コマンドを実行し、EC2に接続出来たら成功!
$ ssh -i {キーペア} ec2-user@{パブリックIPアドレス}
   ~\_  ####_        Amazon Linux 2023

AWS構成図の作成(draw.io)

今回作成したEC2インスタンスまでの接続経路をdrow.ioを使用して作図してもらいました

  • 以下のプロンプトを実行
$ AWS構成図を.drawioファイルで作成してください。
  アイコン図形はAWS 2025を利用してください。
  • WSL上に.drowioファイルが出力される

  • VScodeにて「Draw.io Integration」が有効化されていることを確認

  • VScodeにて対象のファイルを開き、AWS構成図が表示されれば成功!

感想

  • 今回はAmazon Q Developer for CLIにてEC2の作成とAWS構成図の出力を実施してみました。

EC2作成についてはプロンプト次第で意図したインスタンスが作成できそうだなという実感と設定値が誤っていた場合でも代替案を提示してくれるなどコマンドと異なる利点がありそうだなと感じました!

AWS構成図についてはデザイン崩れがあったものの実行結果を簡単に出力でき、設定値誤りの確認やドキュメント作成の効率化ができそうだなと感じました、面白い!

次はMCPサーバーをAmazonQに接続して何ができるのかを調べてみようと思います

参考サイト

Discussion