AWS構成図を無料で作ってCloudFormationに書き出す方法|ArchiCraftサンドボックス
ArchiCraft のサンドボックスは、ブラウザだけで AWS 構成図を作れる無料ツールです。ログインは不要。作った構成は、画像・共有リンク、そして そのまま AWS にデプロイできる CloudFormation テンプレートとして書き出せます。
使い方(3ステップ)
- 配置する:画面下のパレットから AWS サービスをドラッグ(スマホはタップ)。75種類の AWS サービスを使えます
- つなぐ:ノードを順にクリックすると矢印でつながります。矢印は「呼び出す側 → 呼ばれる側」の向きで引きます。ダブルクリックで「Webサーバー」などの名前も付けられます
- 書き出す:右上の「書き出し」から、画像・共有リンク・CloudFormation・JSON を選びます
迷ったら「サンプル」から、3層Webアプリ・サーバーレスAPI・ファンアウトの構成を読み込んで改造するのがおすすめです。
書き出しできる形式
| 形式 | 用途 |
|---|---|
| 画像(PNG) | タイトル付きの構成図。ブログ・SNS・設計資料にそのまま貼れる |
| 共有リンク | URL を開くだけで同じ構成図が表示される。勉強仲間やチームへの共有に |
| CloudFormation(YAML) | AWS にデプロイできるテンプレートの雛形 |
| JSON | 保存して、あとで読み込んで続きを編集 |
CloudFormation 書き出しの特徴
単にリソースを並べるだけではなく、矢印の意味を読み取って設定を組み立てるのが特徴です。
- ALB → EC2:EC2 をターゲットグループに登録し、EC2 の SG は ALB の SG からだけ許可
- EC2 → RDS:RDS の SG に「EC2 の SG から 3306」を追加し、RDS はプライベートサブネットへ
- Lambda → DynamoDB / S3 / SQS / SNS:そのリソースだけを操作できる最小権限の IAM ポリシーと、テーブル名などの環境変数を設定
- API Gateway → Lambda:HTTP API と呼び出し権限を作成
- CloudFront → S3:OAC とバケットポリシーで、S3 を非公開のまま配信
- SNS → SQS:サブスクリプションとキューポリシーをセットで作成
- VPC が必要なリソースがあれば、2AZ のパブリック/プライベートサブネットを自動で用意
上の図を書き出すと、Lambda には「このテーブルへの読み書き」と「このキューへの送信」だけが許可された IAM ロールが付きます。教科書の「最小権限の原則」が、実際のテンプレートでどう書かれるのかを確認できます。
デプロイするときの注意
課金に注意:NAT Gateway・RDS・ALB などは、起動している間ずっと料金がかかります。試したら
aws cloudformation delete-stack でスタックを必ず削除してください。S3 バケットは中身が残っていると削除に失敗するので、先に空にします。- デプロイ例:
aws cloudformation deploy --template-file template.yaml --stack-name archicraft-sandbox --capabilities CAPABILITY_IAM - 自動生成に対応していないサービスや接続は、テンプレートの冒頭にコメントで一覧表示されます。手動で追加してください
- 出力は学習用の雛形です。本番で使う場合は、要件に合わせて見直してください
学習への活かし方
- 記事や問題集で見た構成をサンドボックスで再現し、何も見ずに組めるか試す
- 書き出した CloudFormation を読み、SG や IAM がどう書かれるかを確認する
- 構成図を画像にして SNS に投稿し、学習記録にする