[AWS] I want to tell you how good InfraStructureComposer is [DevTools]
Introduction He was selected this year as an AWS Commmunity Builders in the DevTools area. Because of this, we have been speaking at LT meetings and disseminating information on our blog to convey the advantages of CDK and other DevTools. In this article, we will discuss the DevTools in the DevTools AWS InfraStructure Composer (formerly AWS Application Composer) We will tell you about Related materials ※The images attached to this article are PowerPoint presentations used at events in Japan.Therefore, the text in the images is in Japanese. Here is a link to the material I presented at a previous JAWS event JAWS-UG Tokyo Lunchtime LT Meeting #22 ※Events in Japan ↓materials https://speakerdeck.com/naonana777/aws-infrastructure-composernoliang-sawochuan-etai ↓Japanese Article https://qiita.com/Nana_777/items/a523947a03647bb4b224 What is AWS InfraStructure Composer? A tool to create/edit/visualize configuration of Cfn templates through GUI operation. Resource definitions in CloudFormation templates are managed in units called “cards” and the relationships between resources are visualized, so that CloudFormation templates can be visualized in the form of architecture and configuration diagrams. AWS InfraStructure Composer Thrust Points Existing CloudFormation templates can be visualized as a configuration diagram When there is not You need to read through the long IaC code in the CloudFormation template to organize and understand what is defined and what the dependencies between resources are. It is a difficult task to visually read and understand each line of IaC code in CloudFormation templates, which tend to have many lines, rather than abstracted IaC code such as CDK. when there is Visualization of the contents of CloudFormation templates in a configuration diagram, so you can understand at a glance the types of resources defined and their dependencies By selecting a card for a displayed resource, you can also view the property definitions for that resource on a resource-by-resource basis Fill-in-the-blanks resource property definitions When there is not You must remember what property names and values should be set for each type of resource and write them manually. The round-trip of searching for properties to be defined for a resource and manually writing definitions is a daunting task. when there is Only for the definition of resource types called extended components, it is possible to define properties using the fill-in-the-blank method ・The types of properties to be defined are presented, making property definition much easier. StepFunctions Workflow Studio can be run locally (on VSCode). When there is not When creating a StepFunctions state machine, a complex flow must be defined by combining predefined resources. It is a daunting task to manually write code and define flows such as errors, loops, and branches by referencing existing resources. when there is ・State machines can be defined through GUI operations using StepFunctions Workflow Studio, which makes definition much easier. Other points of interest Easy association between resources Only GUI operation is required to tie resources together, like pulling a string. Required policies are also added automatically Capable of displaying changed code differences IaC codes are automatically added in the GUI operation, and the changes can be viewed on the screen where the GUI is being operated. Resources (cards) can be grouped If there are many resources to manage or if a template contains multiple functional classifications, it may be easier to manage if it is possible to visualize which resources are managed under which classification. Grouping makes it easier to manage resources by displaying groups on the configuration diagram Notes on AWS InfraStructure Composer Difference between Extended Components and Standard Components Extended Components 14 types of resources for serverless systems Maximize Infrastructure Composer features such as fill-in-the-blank property definitions Standard Components 1,374 (as of April 2025) resources supported by CloudFormation One-click code suggestions by AmazonQ are available, although hole-in-the-wall format definitions are not available The one-click code proposal is only a template or reference. One-click code suggestions, available in the standard components, suggest example property definitions for the currently selected resource. Therefore, property definitions are not always appropriate for actual projects Beware of automatically created policy settings The linkage between resources can be easily configured via GUI operation, and policies are automatically set at this time. While this is convenient because it
![[AWS] I want to tell you how good InfraStructureComposer is [DevTools]](https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdqgoluw00oxbh5nhlkas.png)
Introduction
He was selected this year as an AWS Commmunity Builders in the DevTools area.
Because of this, we have been speaking at LT meetings and disseminating information on our blog to convey the advantages of CDK and other DevTools.
In this article, we will discuss the DevTools in the DevTools
AWS InfraStructure Composer (formerly AWS Application Composer)
We will tell you about
Related materials
※The images attached to this article are PowerPoint presentations used at events in Japan.Therefore, the text in the images is in Japanese.
Here is a link to the material I presented at a previous JAWS event
JAWS-UG Tokyo Lunchtime LT Meeting #22
※Events in Japan
↓materials
https://speakerdeck.com/naonana777/aws-infrastructure-composernoliang-sawochuan-etai
↓Japanese Article
https://qiita.com/Nana_777/items/a523947a03647bb4b224
What is AWS InfraStructure Composer?
A tool to create/edit/visualize configuration of Cfn templates through GUI operation.
Resource definitions in CloudFormation templates are managed in units called “cards” and the relationships between resources are visualized, so that CloudFormation templates can be visualized in the form of architecture and configuration diagrams.
AWS InfraStructure Composer Thrust Points
Existing CloudFormation templates can be visualized as a configuration diagram
When there is not
- You need to read through the long IaC code in the CloudFormation template to organize and understand what is defined and what the dependencies between resources are.
- It is a difficult task to visually read and understand each line of IaC code in CloudFormation templates, which tend to have many lines, rather than abstracted IaC code such as CDK.
when there is
- Visualization of the contents of CloudFormation templates in a configuration diagram, so you can understand at a glance the types of resources defined and their dependencies
- By selecting a card for a displayed resource, you can also view the property definitions for that resource on a resource-by-resource basis
Fill-in-the-blanks resource property definitions
When there is not
- You must remember what property names and values should be set for each type of resource and write them manually.
- The round-trip of searching for properties to be defined for a resource and manually writing definitions is a daunting task.
when there is
- Only for the definition of resource types called extended components, it is possible to define properties using the fill-in-the-blank method ・The types of properties to be defined are presented, making property definition much easier.
StepFunctions Workflow Studio can be run locally (on VSCode).
When there is not
- When creating a StepFunctions state machine, a complex flow must be defined by combining predefined resources.
- It is a daunting task to manually write code and define flows such as errors, loops, and branches by referencing existing resources.
when there is
・State machines can be defined through GUI operations using StepFunctions Workflow Studio, which makes definition much easier.
Other points of interest
Easy association between resources
- Only GUI operation is required to tie resources together, like pulling a string.
- Required policies are also added automatically
Capable of displaying changed code differences
- IaC codes are automatically added in the GUI operation, and the changes can be viewed on the screen where the GUI is being operated.
Resources (cards) can be grouped
- If there are many resources to manage or if a template contains multiple functional classifications, it may be easier to manage if it is possible to visualize which resources are managed under which classification.
- Grouping makes it easier to manage resources by displaying groups on the configuration diagram
Notes on AWS InfraStructure Composer
Difference between Extended Components and Standard Components
Extended Components
- 14 types of resources for serverless systems
- Maximize Infrastructure Composer features such as fill-in-the-blank property definitions
Standard Components
- 1,374 (as of April 2025) resources supported by CloudFormation
- One-click code suggestions by AmazonQ are available, although hole-in-the-wall format definitions are not available
The one-click code proposal is only a template or reference.
- One-click code suggestions, available in the standard components, suggest example property definitions for the currently selected resource.
- Therefore, property definitions are not always appropriate for actual projects
Beware of automatically created policy settings
- The linkage between resources can be easily configured via GUI operation, and policies are automatically set at this time.
- While this is convenient because it does not require manual code definition, the policy settings may allow more actions than necessary. ・The example below shows a policy that is automatically set when Lambda is connected to S3, and you can see that many actions are allowed.
- If the minimum necessary policy settings are required, it is necessary to take action to delete unnecessary policies from here.
in the end
In this article, we introduced the InfraStructureComposer.
I thought that the InfraStructureComposer could be used, for example, when reading design documents to new members of a project, to have them look at the CloudFormation template with the InfraStructureComposer and understand the actual configuration and definitions. I thought it would be useful, for example, to have new members of the project read the design documents by viewing the CloudFormation template with InfraStructureComposer to understand the actual configuration and definitions.
I will continue to introduce various tools (mainly DevTools) and try my best to get everyone interested in the tools and to contribute to the efficiency of development and operation.