Back to list
CloudFormation Diagram Generator — AWS テンプレートを瞬時に可視化
CloudFormation Diagram Generator — Visualize AWS Templates Instantly
Translated: 2026/4/24 23:02:04
Japanese Translation
InfraSketch は現在 CloudFormation のサポートを追加しました。慣れ親しんだ !Ref、!GetAtt、!Sub 等を含む CloudFormation YAML または JSON テンプレートを入力してください。数秒でクリーンなアーキテクチャ図を生成できます。ログインなし、バックエンドなし、すべてブラウザで動作します。
InfraSketch を開く →
なぜ CloudFormation サポートが重要なのか
CloudFormation はまだ AWS 中心の組織で最も広く展開されている IaC(Infrastructure as Code)ツールです。すべての AWS アカウントに組み込まれており、CDK、SAM、AWS Service Catalog ともネイティブに統合されています。さらに、多くのプラットフォームチームは既に数年分のテンプレートを維持しています。しかし、CloudFormation は常に自分が何をしているかを伝えるのに非常に苦手でした。400 ラインの YAML ファイルはアーキテクチャではなく、仕様です。それを図にするためには、従来 draw.io や Lucidchart で手作業を行ってきました。
InfraSketch はそのステップを消去しました。テンプレートを貼り付け、[Generate]をクリックし、共有またはエクスポートできる図を取得してください。
CloudFormation テンプレートには !Ref や !GetAtt といった標準 YAML ではない略記タグが含まれており、ほとんどのパーサーはこれらを処理できません。InfraSketch はパーシング前にすべての CloudFormation 固有機能用カスタム YAML タイプを登録することで、事前処理を不要にクリーンにテンプレートを読み込みます。
パーシング後、エンジンではリソースの Properties ブロックをすべて通り、以下の処理を行います:
Type フィールド(例:AWS::ECS::Service)を適切な AWS アイコンを含む視覚カテゴリに対応させる
VpcId: !Ref MyVPC を検出し、リソースを VPC コンテナ内に配置する
SubnetId / SubnetIds / Subnets の参照を検出し、リソースを適切なサブネットレイヤーに配置する
サポートされるリソース間の他の Ref または GetAtt から方向付き接続を推測する
結果は、InfraSketch が Terraform に使用するための同じゾーミングなレイアウトになります。インターネットゾーンが上部にあり、入層、VPC とサブネット、データゾーン、メッセージングゾーン、セキュリティゾーン—すべてあなたのテンプレートから自動的に推測されます。
infraSketch.cloud を開く
CloudFormation タブをクリックし、テンプレートを貼り付け(YAML または JSON)、[Generate Diagram] をクリックしてください。
PNG、SVG、または draw.io XML としてエクスポート—または [Share] をクリックして共有 URL をコピーします。
パーサーはテンプレートが { から始まるかどうかに基づいて YAML か JSON かを自動的に検出します。
AWSTemplateFormatVersion: '2010-09-09'
Resources:
VPC:
Type: AWS::EC2::VPC
Properties:
CidrBlock: 10.0.0.0/16
PublicSubnet:
Type: AWS::EC2::Subnet
Properties:
VpcId: !Ref VPC
CidrBlock: 10.0.1.0/24
AppLoadBalancer:
Type: AWS::ElasticLoadBalancingV2::LoadBalancer
Properties:
Subnets:
- !Ref PublicSubnet
AppFunction:
Type: AWS::Lambda::Function
Properties:
Role: !GetAtt LambdaRole.Arn
Environment:
Variables:
QUEUE_URL: !Ref AppQueue
AppQueue:
Type: AWS::SQS::Queue
LambdaRole:
Type: AWS::IAM::Role
これにより、VPC コンテナ、ALB が含まれた PublicSubnet、SQS と IAM Role へ接続する Lambda、クォーンのメッセージングゾーン—すべてテンプレートの参照から生成された図が作成されます。
カテゴリ
CloudFormation タイプ
ネットワーク
AWS::EC2::VPC、AWS::EC2::Subnet、AWS::EC2::InternetGateway、AWS::EC2::NatGateway、AWS::EC2::EIP、AWS::EC2::RouteTable、AWS::EC2::TransitGateway、AWS::EC2::VPNGateway、AWS::EC2::NetworkInterface
計算
AWS::EC2::Instance、AWS::EC2::LaunchTemplate、AWS::AutoScaling::AutoScalingGroup、AWS::EKS::Cluster、AWS::EKS::Nodegroup、AWS::ECS::Cluster、AWS::ECS::Service、AWS::ECS::TaskDefinition、AWS::Lambda::Function
データ
AWS::RDS::DBInstance、AWS::RDS::DBCluster、AWS::DynamoDB::Table、AWS::ElastiCache::CacheCluster、AWS::ElastiCache::ReplicationGroup
ストレージ
AWS::S3::Bucket
ロードバランシング
AWS::ElasticLoadBalancingV2::LoadBalancer (ALB/NLB の自動検出)、AWS::ElasticLoadBalancingV2::TargetGroup、AWS::ElasticLoadBalancing::LoadBalancer
セキュリティ
AWS::EC2::SecurityGroup、AWS::IAM::Role、AWS::KMS::Key、AWS::WAFv2::WebACL
エッジ / DNS
AWS::CloudFront::Distribution、AWS::Route53::HostedZone、AWS::Route53::RecordSet、AWS::Route53::RecordSetGroup
メッセージング
AWS::SQS::Queue、AWS::SNS::Topic
コンテナ
AWS::ECR::Repository
可観性
AWS::CloudWatch::Alarm、AWS::Logs::LogGroup
すべて
Original Content
InfraSketch now supports CloudFormation. Paste a CloudFormation YAML or JSON template — including all the !Ref, !GetAtt, and !Sub shorthand you're used to writing — and get a clean architecture diagram in seconds. No login, no backend, everything runs in your browser.
Open InfraSketch →
Why CloudFormation support matters
CloudFormation is still the most widely deployed IaC tool in AWS-heavy organizations. It ships with every AWS account, it integrates natively with CDK, SAM, and AWS Service Catalog, and most platform teams have years of existing templates they maintain. But CloudFormation has always been terrible at communicating what it actually does. A 400-line YAML file is not an architecture — it's a specification. Turning it into a diagram has always meant manual work in draw.io or Lucidchart.
InfraSketch eliminates that step. Paste the template, click Generate, get a diagram you can share or export.
CloudFormation templates use YAML shorthand tags like !Ref and !GetAtt that are not standard YAML — most parsers choke on them. InfraSketch registers custom YAML types for all CloudFormation intrinsic functions before parsing, so your templates load cleanly without any preprocessing.
Once parsed, the engine walks every resource's Properties block and:
Maps the Type field (e.g. AWS::ECS::Service) to a visual category with the correct AWS icon
Detects VpcId: !Ref MyVPC and draws the resource inside the VPC container
Detects SubnetId / SubnetIds / Subnets references and places the resource in the correct subnet lane
Infers directed connections from any other Ref or GetAtt between supported resources
The result is the same zoned layout InfraSketch uses for Terraform — Internet zone at the top, ingress layer, VPC with subnets, data zone, messaging zone, security zone — all inferred automatically from your template.
Open infrasketch.cloud
Click the CloudFormation tab
Paste your template (YAML or JSON) and click Generate Diagram
Export as PNG, SVG, or draw.io XML — or click Share to copy a shareable URL
The parser auto-detects YAML vs JSON based on whether the template starts with {.
AWSTemplateFormatVersion: '2010-09-09'
Resources:
VPC:
Type: AWS::EC2::VPC
Properties:
CidrBlock: 10.0.0.0/16
PublicSubnet:
Type: AWS::EC2::Subnet
Properties:
VpcId: !Ref VPC
CidrBlock: 10.0.1.0/24
AppLoadBalancer:
Type: AWS::ElasticLoadBalancingV2::LoadBalancer
Properties:
Subnets:
- !Ref PublicSubnet
AppFunction:
Type: AWS::Lambda::Function
Properties:
Role: !GetAtt LambdaRole.Arn
Environment:
Variables:
QUEUE_URL: !Ref AppQueue
AppQueue:
Type: AWS::SQS::Queue
LambdaRole:
Type: AWS::IAM::Role
This produces a diagram with the VPC container, PublicSubnet with the ALB inside, Lambda connecting to SQS and IAM Role, and the messaging zone for the queue — all from the references in the template.
Category
CloudFormation types
Networking
AWS::EC2::VPC, AWS::EC2::Subnet, AWS::EC2::InternetGateway, AWS::EC2::NatGateway, AWS::EC2::EIP, AWS::EC2::RouteTable, AWS::EC2::TransitGateway, AWS::EC2::VPNGateway, AWS::EC2::NetworkInterface
Compute
AWS::EC2::Instance, AWS::EC2::LaunchTemplate, AWS::AutoScaling::AutoScalingGroup, AWS::EKS::Cluster, AWS::EKS::Nodegroup, AWS::ECS::Cluster, AWS::ECS::Service, AWS::ECS::TaskDefinition, AWS::Lambda::Function
Data
AWS::RDS::DBInstance, AWS::RDS::DBCluster, AWS::DynamoDB::Table, AWS::ElastiCache::CacheCluster, AWS::ElastiCache::ReplicationGroup
Storage
AWS::S3::Bucket
Load balancing
AWS::ElasticLoadBalancingV2::LoadBalancer (ALB/NLB auto-detected), AWS::ElasticLoadBalancingV2::TargetGroup, AWS::ElasticLoadBalancing::LoadBalancer
Security
AWS::EC2::SecurityGroup, AWS::IAM::Role, AWS::KMS::Key, AWS::WAFv2::WebACL
Edge / DNS
AWS::CloudFront::Distribution, AWS::Route53::HostedZone, AWS::Route53::RecordSet, AWS::Route53::RecordSetGroup
Messaging
AWS::SQS::Queue, AWS::SNS::Topic
Containers
AWS::ECR::Repository
Observability
AWS::CloudWatch::Alarm, AWS::Logs::LogGroup
Any resource with VpcId: !Ref X is drawn inside the VPC box for resource X.
SubnetId, SubnetIds, and Subnets properties place resources in the correct subnet lane.
Type: network on a load balancer property selects the NLB icon; anything else is ALB.
Every !Ref and !GetAtt between supported resources that isn't a VPC/subnet reference becomes a directed arrow.
The YAML parser handles all standard CloudFormation shorthand tags without requiring you to expand them to long form:
!Ref — logical resource reference
!GetAtt — attribute reference (!GetAtt Resource.Attribute or list form)
!Sub — string substitution (scalar and list forms)
!If, !And, !Or, !Not — conditionals
!Select, !Join, !Split, !FindInMap
!Base64, !ImportValue, !Condition
JSON templates are also supported — { "Ref": "MyVPC" } and { "Fn::GetAtt": ["MyRole", "Arn"] } both work exactly the same way.
A few features remain Terraform-specific for now: module expansion (ZIP upload and registry auto-fetch), and the plan JSON workflow. CloudFormation doesn't have an equivalent to terraform show -json, but the template itself is already the resolved source of truth — there's no variable evaluation step needed.
Code reviews — paste the template diff, see what changed in the diagram
Onboarding — new team member needs to understand the stack without reading 500 lines of YAML
Documentation — export as PNG or SVG and embed in a wiki, Confluence page, or design doc
draw.io integration — export as draw.io XML to get a fully editable diagram in diagrams.net or Confluence
Audit prep — show reviewers the actual infrastructure topology without sharing credentials
Open InfraSketch →