Configure a Cloud SQL (PostgreSQL) instance

Cloud SQL (PostgreSQL) is a fully managed database service that lets you set up, maintain, manage, and administer your relational databases on Google Cloud. For more information, see the following:

This document describes the connections and parameters you can configure when using App Design Center to create a Cloud SQL (PostgreSQL) instance. The configuration parameters are based on the terraform-google-sql-db Terraform module.

Component connections

The following table includes the components that you can connect to a Cloud SQL (PostgreSQL) instance, and the resulting updates to your application and its generated Terraform code.

Connected component

Application updates

Background information

Compute Engine instance template

  • The Compute Engine instances can connect and read and write data to the Cloud SQL (PostgreSQL) instance.
  • The Cloud SQL connection metadata is added to the Compute Engine instance template.
  • The roles/cloudsql.instanceUser and roles/cloudsql.client roles are added to the Compute Engine instance template service account.
  • The Compute Engine service account is added as an IAM user to the Cloud SQL instance.
Connect from Compute Engine
Secret Manager
  • The Secret Manager Secret Data field contains the password for the default user.
Use Secret Manager to handle secrets in Cloud SQL

Service account

  • The service account can connect to the Cloud SQL (PostgreSQL) instance.
  • The roles/cloudsql.instanceUser and roles/cloudsql.client roles are added to the service account.
  • The service account IAM information is added to the Cloud SQL instance.
Roles and permissions

Cloud Run

  • The Cloud Run service can read and write data to the Cloud SQL (PostgreSQL) instance.
  • The Cloud SQL connection metadata is added to the Cloud Run service.
  • The roles/cloudsql.instanceUser and roles/cloudsql.client roles are added to the Cloud Run service account.
  • The Cloud Run service account is added as an IAM user to the Cloud SQL instance.
Connect from Cloud Run

Required configuration parameters

If your template includes a Cloud SQL (PostgreSQL) component, you must configure the following parameters before you deploy.

Parameter name

Description and constraint information

Background information

Project ID

The project where you want to deploy the Cloud SQL resource.

Configure components

Name

name Create a PostgreSQL instance

Database Version

databaseVersion Create a PostgreSQL instance

Region

region Manage instance locations

Optional configuration parameters

The following parameters are optional. To display advanced parameters, in the Configuration area, select Show advanced fields.

Feature

Parameter name

Description and constraint information

Background information

Zone

gceZone Manage instance locations

Edition

edition edition

Availability Type

availabilityType Availability in Cloud SQL

Enable Default Db

If selected, create a default database. In the Db Name field, enter the name of the default database.

Create a database on the Cloud SQL instance

Enable Default User

If selected, create a default user. Enter a User Name and User Password for the default user.

Default PostgreSQL users

Root Password

rootPassword

Initial root password when the instance is created.

Database Deletion Policy

To allow the database to be abandoned rather than deleted, enter ABANDON.

PostgreSQL databases cannot be deleted if users other than cloudsqlsuperuser have access.

Data Cache Enabled

Data cache Data cache overview

Machine

Select a machine series and type for your instance. The options that you select determine available storage type and configuration options. You can't change the machine series after you create your instance.

Machine series overview

Disk Autoresize

Disk Autoresize

storageAutoResize Enable automatic storage increases

Disk Autoresize Limit

storageAutoResizeLimit Automatic storage increase limit

Disk Size

dataDiskSizeGb Storage capacity

Disk Type

dataDiskType Storage type