【Claude】Claude Design に AWS 構成図を作らせてみた

【Claude】Claude Design に AWS 構成図を作らせてみた

2026.05.21

はじめに

こんにちは、フニです。
本記事では、Claude Design に AWS 構成図を作らせてみた結果についてご紹介します。

早速、やってみた

事前準備

データソースとして AWS 公式の構成図 pptx ファイルを利用します。以下の URL から用意してください。
本記事では AWS-Architecture-Icons-Deck_For-Light-BG_07312025.pptx を利用しました。

https://aws.amazon.com/jp/architecture/icons/

CleanShot 2026-05-21 at 19.11.58@2x.png

1. プロジェクト作成

Claude Design にアクセスし、プロジェクトを作成します。

https://claude.ai/design

CleanShot 2026-05-21 at 19.21.36@2x.png

2. データソース登録

ダウンロードした pptx ファイルをデータソースとして登録します。

CleanShot 2026-05-21 at 19.27.28@2x.png

3. AWS 構成図を作らせてみた

以下のサンプルパラメータシートとプロンプトで AWS 構成図を作らせてみました。
今回は、完成までに約10分ほど時間がかかりました。

CleanShot 2026-05-21 at 19.42.12@2x.png

プロンプト

pptx ファイルに含まれている AWS アイコン画像を使って、
以下の構成の AWS アーキテクチャ図を HTML + SVG で作成してください。

【構成】
VPC - ALB - EC2(AP サーバー)- RDS の WEB 3層アーキテクチャ
(命名規則: sample- プレフィックス、Multi-AZ 構成)

【要件】
1. AWS 公式アイコンを使用すること(pptx から画像を抽出して埋め込む)
2. VPC・サブネット(Public/Private)・AZ を枠線でグルーピングすること
3. サービス間のデータフローを矢印で示すこと
4. 各アイコンの下にリソース名ラベルを付けること(例: sample-alb)

サンプルパラメータシート

# WEB 3層アーキテクチャ サンプルパラメータシート

**命名規則:** `sample-{リソース種別}-{用途/層}-{AZ/番号}`

---

## 1. VPC

| パラメータ | 値 |
|---|---|
| **リソース名** | `sample-vpc` |
| **IPv4 CIDR ブロック** | `10.0.0.0/16` |
| **IPv6 CIDR ブロック** | なし |
| **テナンシー** | デフォルト |
| **DNS ホスト名** | 有効 |
| **DNS 解決** | 有効 |

---

## 2. サブネット

| リソース名 | 用途 | AZ | CIDR | ルートテーブル |
|---|---|---|---|---|
| `sample-subnet-public-1a` | Web層(Public) | ap-northeast-1a | `10.0.1.0/24` | `sample-rtb-public` |
| `sample-subnet-public-1c` | Web層(Public) | ap-northeast-1c | `10.0.2.0/24` | `sample-rtb-public` |
| `sample-subnet-private-app-1a` | AP層(Private) | ap-northeast-1a | `10.0.11.0/24` | `sample-rtb-private-1a` |
| `sample-subnet-private-app-1c` | AP層(Private) | ap-northeast-1c | `10.0.12.0/24` | `sample-rtb-private-1c` |
| `sample-subnet-private-db-1a` | DB層(Private) | ap-northeast-1a | `10.0.21.0/24` | `sample-rtb-private-1a` |
| `sample-subnet-private-db-1c` | DB層(Private) | ap-northeast-1c | `10.0.22.0/24` | `sample-rtb-private-1c` |

> ℹ️ Amazon RDS は最低2つの AZ にサブネットが必要です(Multi-AZ 対応)

---

## 3. インターネットゲートウェイ / NAT ゲートウェイ

| リソース名 | 種別 | 用途 | 配置場所 |
|---|---|---|---|
| `sample-igw` | Internet Gateway | Public サブネットからインターネット接続 | `sample-vpc` にアタッチ |
| `sample-natgw-1a` | NAT Gateway | Private サブネットからの外向き通信 | `sample-subnet-public-1a` |
| `sample-natgw-1c` | NAT Gateway | Private サブネットからの外向き通信 | `sample-subnet-public-1c` |

---

## 4. ルートテーブル

| リソース名 | 関連サブネット | 送信先 | ターゲット |
|---|---|---|---|
| `sample-rtb-public` | Public 系全て | `0.0.0.0/0` | `sample-igw` |
| `sample-rtb-private-1a` | Private 系 1a | `0.0.0.0/0` | `sample-natgw-1a` |
| `sample-rtb-private-1c` | Private 系 1c | `0.0.0.0/0` | `sample-natgw-1c` |

---

## 5. セキュリティグループ

### 5-1. Web層(ALB 用)

| パラメータ | 値 |
|---|---|
| **リソース名** | `sample-sg-alb` |
| **VPC** | `sample-vpc` |
| **インバウンド:HTTP** | 送信元 `0.0.0.0/0` / Port `80` |
| **インバウンド:HTTPS** | 送信元 `0.0.0.0/0` / Port `443` |
| **アウトバウンド** | 全許可 `0.0.0.0/0` |

### 5-2. AP層(EC2 用)

| パラメータ | 値 |
|---|---|
| **リソース名** | `sample-sg-ec2` |
| **VPC** | `sample-vpc` |
| **インバウンド:HTTP** | 送信元 `sample-sg-alb` / Port `80` |
| **インバウンド:SSH** | 送信元 管理者IP(例: `203.0.113.0/32`) / Port `22` |
| **アウトバウンド** | 全許可 `0.0.0.0/0` |

### 5-3. DB層(RDS 用)

| パラメータ | 値 |
|---|---|
| **リソース名** | `sample-sg-rds` |
| **VPC** | `sample-vpc` |
| **インバウンド:MySQL** | 送信元 `sample-sg-ec2` / Port `3306` |
| **アウトバウンド** | 全許可 `0.0.0.0/0` |

---

## 6. EC2 インスタンス(AP サーバー)

| パラメータ | 値 |
|---|---|
| **リソース名** | `sample-ec2-app-1a` / `sample-ec2-app-1c` |
| **AMI** | Amazon Linux 2023(最新) |
| **インスタンスタイプ** | `t3.medium` |
| **サブネット** | `sample-subnet-private-app-1a` / `1c` |
| **セキュリティグループ** | `sample-sg-ec2` |
| **IAM ロール** | `sample-role-ec2` |
| **ストレージ** | gp3 / 20 GiB |
| **パブリック IP 自動割り当て** | 無効 |
| **キーペア** | `sample-keypair` |

---

## 7. ALB(Application Load Balancer)

| パラメータ | 値 |
|---|---|
| **リソース名** | `sample-alb` |
| **スキーム** | Internet-facing |
| **サブネット** | `sample-subnet-public-1a`, `sample-subnet-public-1c` |
| **セキュリティグループ** | `sample-sg-alb` |
| **リスナー** | HTTP:80 → ターゲットグループ `sample-tg-ec2` |
| **ターゲットグループ名** | `sample-tg-ec2` |
| **ターゲットタイプ** | instance |
| **ヘルスチェックパス** | `/health` |

---

## 8. RDS インスタンス(DB 層)

| パラメータ | 値 |
|---|---|
| **DBインスタンス識別子** | `sample-rds-mysql` |
| **エンジン** | MySQL 8.0 |
| **インスタンスクラス** | `db.t3.medium` |
| **マルチ AZ** | 有効 |
| **ストレージタイプ** | gp3 |
| **ストレージ容量** | 20 GiB |
| **DB サブネットグループ** | `sample-rds-subnetgroup` |
| **セキュリティグループ** | `sample-sg-rds` |
| **DBサブネットグループ対象** | `sample-subnet-private-db-1a`, `sample-subnet-private-db-1c` |
| **マスターユーザー名** | `admin` |
| **初期 DB 名** | `sampledb` |
| **バックアップ保持期間** | 7 日 |
| **暗号化** | 有効(AWS KMS) |
| **パブリックアクセス** | 無効 |

---

## 9. アーキテクチャ概要図(テキスト)

インターネット

  [IGW: sample-igw]

  Public Subnet (1a/1c)
  [ALB: sample-alb]

  Private Subnet APP (1a/1c)  ← NATGWで外向き通信
  [EC2: sample-ec2-app-1a/1c]

  Private Subnet DB (1a/1c)
  [RDS: sample-rds-mysql] (Multi-AZ)

結果

今回は、こんな感じの構成図を作ってもらうことができました!
ちなみに、今回の検証では約$3.5程度のコストが発生しました。

CleanShot 2026-05-21 at 19.56.43@2x.png

さいごに

今回は Claude Design に AWS 構成図を作らせてみました!
パラメータシートに基づいて、公式 AWS アイコンで作ってくれたので感動しました。
この記事が、誰かの助けになれば幸いです。


生成AI活用はクラスメソッドにお任せ

過去に支援してきた生成AIの支援実績100+を元にホワイトペーパーを作成しました。御社が抱えている課題のうち、どれが解決できて、どのようなサービスが受けられるのか?4つのフェーズに分けてまとめています。どうぞお気軽にご覧ください。

生成AI資料イメージ

無料でダウンロードする

この記事をシェアする

AWSのお困り事はクラスメソッドへ

関連記事