Set up Application Design Center
This document guides administrators through the initial setup for Application Design Center, which helps you design, share, and manage cloud infrastructure using an application-centric model. The setup process configures the following:
- Application management, which helps you define the boundary for your application and manage its lifecycle.
- An initial space where your team can collaborate.
- A default catalog to store templates.
- A Google-managed catalog with templates based on best practices.
- A Cloud Storage bucket for Terraform storage. Alternatively, you can use your own bucket.
Before you begin
Choose your setup model
Before you set up App Design Center, choose an application management boundary. The boundary is a centralized place for application management tasks, including API enablement, access control, billing, and quotas. Within the boundary, you can monitor, troubleshoot, optimize costs, and manage your Google Cloud resources in the context of your application.
Choose one of the following boundary models:
| Single-project boundary (Preview) | Folder-level boundary | |
|---|---|---|
| Fit | Best for new users or small organizations where all resources reside in one project. | Best for large organizations that manage resources across multiple projects and subfolders. |
| Flexibility | Complete the setup using default settings. |
|
| Integrated products |
|
|
Enable application management
When you enable application management, the system does one of the following to help you manage quotas and billing for your application:
- Single-project (Preview): The system configures your project as a management project.
- Folder-level: The system creates a new management project in the folder.
To enable application management, do the following:
Single-project (Preview)
Make sure that your project has a linked billing account.
Make sure that you have the required roles to enable application management and complete the automated setup, which creates your space.
Enable application management when you create an initial space.
Folder-level
Make sure that you have an organization resource.
Make sure that you have the required roles to enable application management.
Configure the observability scope for the management project.
Make sure that you have the required roles to complete the automated setup, which creates your space.
Required IAM roles
The following roles are required to perform the following automated setup, which creates a space and ensures that the erquired APIs are enabled.
Single-project (Preview)
You must have one of the following sets of roles on the project:
- Project Owner (
roles/owner): The system automatically assigns other required roles. - If you don't have Project Owner (
roles/owner), you must have the following:- Application Design Center Admin (
roles/designcenter.admin) - Service Usage Admin (
roles/serviceusage.serviceUsageAdmin)
- Application Design Center Admin (
Folder-level
You must have the following roles on the management project:
- Application Design Center Admin (
roles/designcenter.admin). - Application Admin (
roles/designcenter.applicationAdmin).
Create an initial space
Before you start using App Design Center, you must complete an automated initial setup to create a space and storage bucket, and enable the following required APIs:
App Hub: Provides a central registry for your applications.
Infrastructure Manager: Deploys your generated Terraform configurations.
Cloud Storage: Stores your generated Terraform code and configuration files.
Service Usage: Manages interactions with other Google Cloud services.
Single-project (Preview)
To enable application management on a single project and set up App Design Center, do the following:
Go to the Application Design Center Overview page.
From the project picker, select the project where you want to configure application management.
Click Go to Setup.
In the Setup your project for application management pane, review the list of APIs that will be enabled.
Click Enable. The system enables the APIs, and creates the storage bucket and default-space space.
To store the Google Cloud resources that you deploy with App Design Center, create standard projects in your organization.
Folder-level
To set up App Design Center on your app-enabled folder, do the following:
Go to the Application Design Center Overview page.
Click Select folder and select your app-enabled folder.
Click Set up ADC.
In the My space name field, enter a name for your space. You can't edit this name later.
By default, the space contains components and application templates that are created by Google. To remove Google components and application templates from the space, clear the Enable Google opinionated templates checkbox.
If you remove Google opinionated templates, space users can only use the components that you import and the application templates that you create.
Click Complete setup. The system enables the APIs, and creates the storage bucket and space.
To store the Google Cloud resources that you deploy with App Design Center, create standard projects in your app-enabled folder.
Use your own storage bucket
The setup process creates a Cloud Storage bucket to store application details and generated Terraform. Alternatively, you can use your own bucket to store application information. For example, you might use an existing bucket if your organization policies prevent you from creating new storage buckets.
To set up App Design Center and use your own Cloud Storage bucket, you must use the App Design Center API. Do the following:
Make sure that you have access to use APIs. For more information, see Set up API access.
Make sure that your bucket is in the same management project where you plan to create your space.
Make sure that you have the following permissions on the bucket:
storage.buckets.getstorage.objects.create
For more information, see IAM permissions for Cloud Storage.
Identify the bucket name.
Create your API call using the
projects.locations.spacesresource:Specify your bucket name in the
gcs_bucketfield. For example, if the bucket URI isgs://my-bucket, the bucket name ismy-bucket.Use the
projects.locations.spaces.createmethod to create the space.
Your space is created, your bucket is used as the storage location for application information, the required APIs are enabled, and the App Design Center setup process is completed.
What's next
- Provide access to space users.
- Create additional spaces, where you can share templates from your initial space.
- Learn more about Application Design Center.
- Manage catalogs.