Inventory data model
This is the structure of the inventory data model, it can generated from the actual deployed resources with the inventory command or manually and used as input for the diagram one to generate the architecture diagram.
# Accounts map, the key must be the account ID
accounts:
# ID of the account
"000000000000":
# ID of the account
id: 000000000000
# Account's name
name: Production
# Regions map
regions:
# Region ID
us-east-1:
# Enabled availability zone flags
azs:
us-east-1a: true # Enable US-East-1a AZ
us-east-1b: false # Disable US-East-1b AZ
us-east-1c: false # Disable US-East-1c AZ
# List of Internet Gateways
internetGateways:
-
# ID
id: ig-0000
# Name
name: internet-gw
# List of VPC the Internet Gateway is attached to
vpcs:
- vpc-00000 # VPC ID as listed below
# Name
name: us-east-1
# Map of Transit Gateways
transitGateways:
# ID
main-tgw:
# ID
id: main-tgw
# Name
name: TGW
# Map of TGW attachments
attachments:
# ID
production:
# ID
id: tgw-attach-prod
# Name
name: tgw-attachment-production
# ID of the account where the attachment is deployed
accountId: 000000000000
# ID of the TGW this is attached to
tgwId: main-tgw
# Map of VPCs
vpcs:
# ID
vpc-00000:
# ID
id: vpc-00000
# Name
name: production-vpc
# CIDR block
cidr: 10.10.0.0/16
# RDS clusters map
dbClusters:
# ID
product-db-production:
# ID
id: rds-0000
# Name
name: product-db-production
# DB engine
engine: Aurora
# DB instances list
instances:
-
# ID
id: rds-0000-0
# Name
name: product-db-production-0
# ID of the subnet where the instance is deployed
subnet: subnet-00000000
# Flag to indicate the instance is a primary replica
isReplica: false
-
# ID
id: rds-0000-1
# Name
name: product-db-production-1
# ID of the subnet where the instance is deployed
subnet: subnet-00000000
# Flag to indicate if the instance is a read replica
isReplica: true
# Map of Elasticache clusters
elasticacheClusters:
# ID
product-production:
# ID
id: ec-0000
# Name
name: product-production
# Engine
engine: redis
# List of subnets where the resource is deployed into
subnets:
- subnet-00000000 # subnet ID as listed below
# Map of Elastic Load Balancers (ELBs)
elbs:
# ID
public-nlb:
# ID
id: public-nlb
# Name
name: public-nlb-production
# Flag to indicate whether the LB is public or not
isPublic: true
# List of subnets where the resource is deployed into
subnets:
- subnet-00000000 # subnet ID as listed below
# LB type
type: network
# Flag to indicate whether the VPC is the default one
isDefault: true
# Map of Managed Streaming for Apache Kafka (MSK) clusters
mskClusters:
# ID
product-production:
# ID
id: msk-0000
# Name
name: product-production
# List of subnets where the resource is deployed into
subnets:
- subnet-00000000 # subnet ID as listed below
# Map of OpenSearch clusters
openSearchClusters:
# ID
logging-production:
# ID
id: os-0000
# Name
name: logging-production
# List of subnets where the resource is deployed into
subnets:
- subnet-00000000 # subnet ID as listed below
# Map of subnets
subnets:
# ID
subnet-00000000:
# ID
id: subnet-00000000
# Name
name: public-production-us-east-1a
# CIDR block
cidr: 10.10.0.0/24
# Flag to indicate that network interfaces attached to instances created in the specified subnet should be assigned a public IPv4 address
autoAssignPublicIp: true
# Map of EC2 instances
instances:
# ID
i-00000000000000003:
# ID
id: i-00000000000000003
# Name
name: "production-vpn"
# Public IP
publicIp: 15.184.23.228
# Private IP
privateIp: 10.10.0.9
# AZ where the subnet is deployed to
az: us-east-1a
# List of NAT gateways
natGateways:
-
# ID
id: ngw-0000
# Name
name: production-nat-1
# Public IP
publicIp: 15.184.23.229
# Private IP
privateIp: 10.10.0.50
# TGW Attachments map
tgwAttachments:
# ID
tgw-attach-prod-0000:
# ID
id: tgw-attach-prod-0000
# Name
name: tgw-main
# TGW ID
tgwId: main-tgw
# List of subnets where the resource is deployed into
subnets:
- subnet-00000000 # subnet ID as listed below