Application Design Center で Cloud SQL(PostgreSQL)を構成する

Cloud SQL(PostgreSQL)は、 Google Cloudでのリレーショナル データベースの設定、維持、管理に役立つフルマネージド データベース サービスです。詳しくは以下をご覧ください。

このドキュメントでは、App Design Center を使用して Cloud SQL(PostgreSQL)インスタンスを作成するときに構成できる接続とパラメータについて説明します。構成パラメータは、terraform-google-sql-db Terraform モジュールに基づいています。

コンポーネント接続

次の表に、Cloud SQL(PostgreSQL)インスタンスに接続できるコンポーネントと、アプリケーションとその生成された Terraform コードに対する更新結果を示します。

連結成分

アプリケーションの更新

背景情報

Compute Engine インスタンス テンプレート

  • Compute Engine インスタンスは、Cloud SQL(PostgreSQL)インスタンスに接続してデータの読み取りと書き込みを行うことができます。
  • Cloud SQL 接続メタデータが Compute Engine インスタンステンプレートに追加されます。
  • roles/cloudsql.instanceUser ロールと roles/cloudsql.client ロールが Compute Engine インスタンス テンプレートのサービス アカウントに追加されます。
  • Compute Engine サービス アカウントが IAM ユーザーとして Cloud SQL インスタンスに追加されます。
Compute Engine から接続する
Secret Manager
  • Secret Manager の [シークレット データ] フィールドには、デフォルト ユーザーのパスワードが含まれています。
Secret Manager を使用して Cloud SQL でシークレットを処理する

サービス アカウント

  • サービス アカウントは Cloud SQL(PostgreSQL)インスタンスに接続できます。
  • roles/cloudsql.instanceUser ロールと roles/cloudsql.client ロールがサービス アカウントに追加されます。
  • サービス アカウントの IAM 情報が Cloud SQL インスタンスに追加されます。
ロールと権限

Cloud Run

  • Cloud Run サービスは、Cloud SQL(PostgreSQL)インスタンスに対してデータの読み取りと書き込みを行うことができます。
  • Cloud SQL 接続メタデータが Cloud Run サービスに追加されます。
  • roles/cloudsql.instanceUser ロールと roles/cloudsql.client ロールが Cloud Run サービス アカウントに追加されます。
  • Cloud Run サービス アカウントが IAM ユーザーとして Cloud SQL インスタンスに追加されます。
Cloud Run から接続する

必要な構成パラメータ

テンプレートに Cloud SQL(PostgreSQL)コンポーネントが含まれている場合は、デプロイする前に次のパラメータを構成する必要があります。

パラメータ名

説明と制約に関する情報

背景情報

プロジェクト ID

Cloud SQL リソースをデプロイするプロジェクト。

コンポーネントを構成する

名前

name PostgreSQL インスタンスを作成する

データベースのバージョン

databaseVersion PostgreSQL インスタンスを作成する

リージョン

region インスタンスのロケーションを管理する

オプションの構成パラメータ

次のパラメータは省略可能です。詳細パラメータを表示するには、[構成] 領域で [詳細フィールドを表示] を選択します。

機能

パラメータ名

説明と制約に関する情報

背景情報

ゾーン

gceZone インスタンスのロケーションを管理する

エディション

エディション エディション

可用性タイプ

availabilityType Cloud SQL での可用性

Enable Default Db

選択されている場合は、デフォルトのデータベースを作成します。[Db Name] フィールドに、デフォルトのデータベースの名前を入力します。

Cloud SQL インスタンスにデータベースを作成する

デフォルト ユーザーを有効にする

選択すると、デフォルトのユーザーが作成されます。デフォルト ユーザーの [User Name] と [User Password] を入力します。

デフォルトの PostgreSQL ユーザー

Root Password

rootPassword

インスタンスの作成時の初期 root パスワード。

データベースの削除ポリシー

データベースを削除せずに破棄できるようにするには、ABANDON と入力します。

cloudsqlsuperuser 以外のユーザーがアクセスできる場合、PostgreSQL データベースは削除できません。

データ キャッシュが有効

データ キャッシュ データ キャッシュの概要

マシン

インスタンスのマシンシリーズとタイプを選択します。選択したオプションによって、使用可能なストレージ タイプと構成オプションが決まります。インスタンスの作成後にマシンシリーズを変更することはできません。

マシンシリーズの概要

ディスクの自動サイズ変更

ディスクの自動サイズ変更

storageAutoResize ストレージの自動増量を有効にする

ディスクの自動サイズ変更の上限

storageAutoResizeLimit ストレージの自動増量の上限

ディスクサイズ

dataDiskSizeGb ストレージ容量

ディスクタイプ

dataDiskType ストレージの種類

料金プラン

pricingPlan SqlPricingPlan

バックアップ構成

有効

有効 PostgreSQL インスタンスを作成する

開始時刻

BackupConfiguration

PostgreSQL インスタンスを作成する

リージョン

location カスタム バックアップ ロケーション

ゾーン

location カスタム バックアップ ロケーション

ポイントインタイム リカバリが有効

pointInTimeRecoveryEnabled pointInTimeRecoveryEnabled

Transaction Log Retention Days(トランザクション ログの保持日数)

BackupConfiguration ログの保持期間

保持されたバックアップ

transactionLogRetentionDays ログとディスクの使用状況

保持単位

retentionUnit retentionUnit

IP 構成

承認済みネットワーク キー

authorizedNetworks[] 承認済みネットワークを使用して承認する

承認済みネットワークの値

authorizedNetworks[] 承認済みネットワークを使用して承認する

IPv4 Enabled

ipv4Enabled パブリック IP を構成する

プライベート ネットワーク

privateNetwork プライベート IP を構成する

SSL モード

sslMode SSL モード

IP 範囲を割り当てる

allocatedIpRange サービスに割り振られた IP アドレス範囲

Google Cloud サービスのプライベート パスを有効にする

Google Cloud サービスのプライベート パス プライベート サービス アクセスと Private Service Connect をサポートするインスタンスを作成する

PSC が有効

psc_enabled Private Service Connect の概要

PSC で許可されているコンシューマー プロジェクト

allowedConsumerProjects[] プライベート サービス アクセスと Private Service Connect をサポートするインスタンスを作成する

メンテナンス バージョン

maintenanceVersion セルフサービス メンテナンス

削除からの保護

選択すると、Cloud SQL インスタンスを削除できなくなります。 インスタンスの削除を防止する

データベース フラグ

名前

databaseFlags データベース フラグを構成する

databaseFlags データベース フラグを構成する

ユーザーの削除に関するポリシー

ユーザーを削除ではなく破棄できるようにするには、ABANDON と入力します。

SQL ロールが付与されている PostgreSQL ユーザーは削除できません。

追加ユーザー

名前

name PostgreSQL のユーザーとロールについて

パスワード

パスワードを入力するか、[ランダム パスワード] を選択してパスワードを生成します。

PostgreSQL のユーザーとロールについて

その他のデータベース

名前

name データベースを作成して管理する

照合

照合順序 データベースを作成して管理する

マスター インスタンス名

masterInstanceName リードレプリカを作成する

インスタンスのタイプ

instanceType SqlInstanceType

ランダム インスタンス名

インスタンス名の末尾にランダムな接尾辞を追加します。

random_instance_name

セカンダリ ゾーン

レプリカ インスタンスの優先ゾーン。

secondaryZone

GAE アプリケーションをフォローする

フォローする App Engine アプリケーション。Cloud SQL インスタンスと同じリージョンに存在する必要があります。

followGaeApplication

アクティベーション ポリシー

activationPolicy アクティベーション ポリシー

削除保護が有効

deletionProtectionEnabled インスタンスの削除を防止する

リードレプリカの削除保護が有効

Terraform がレプリカ SQL インスタンスを削除しないようにするには、チェックボックスをオンにします。

リードレプリカの削除保護の検討

メンテナンス時間枠

メンテナンス時間枠の日

Cloud SQL インスタンスでのメンテナンスについて

メンテナンス時間枠(時間)

時間 Cloud SQL インスタンスでのメンテナンスについて

メンテナンス ウィンドウの更新トラック

updateTrack Cloud SQL インスタンスでのメンテナンスについて

ユーザーラベル

Key(キー)

Cloud SQL インスタンスのキーラベル

userLabels

Cloud SQL インスタンスの値ラベル

userLabels

メンテナンス拒否期間

終了日

endDate メンテナンス拒否期間を構成する

開始日

startDate メンテナンス拒否期間を構成する

時間

時間 メンテナンス拒否期間を構成する

インサイト構成

1 分あたりのクエリプラン数

queryPlansPerMinute Query Insights を使用してクエリのパフォーマンスを向上させる

クエリ文字列の長さ

queryStringLength Query Insights を使用してクエリのパフォーマンスを向上させる

アプリケーション タグを記録する

recordApplicationTags Query Insights を有効にする

クライアント アドレスを記録

recordClientAddress Query Insights を有効にする

パスワード検証ポリシーの構成

最小の長さ

minLength パスワード ポリシーの設定

複雑さ

複雑さ パスワード ポリシーの設定

再利用間隔

reuseInterval パスワード ポリシーの設定

ユーザー名の部分文字列を許可しない

disallowUsernameSubstring パスワード ポリシーの設定

パスワード変更間隔

passwordChangeInterval パスワード ポリシーの設定

リードレプリカ

名前

read_replicas リードレプリカ

名前オーバーライド

デフォルトのリードレプリカ名をオーバーライドする文字列。 read_replicas

リードレプリカ名の接尾辞

読み取りインスタンス名に追加する接尾辞(省略可)。

リードレプリカ

DB 文字セット

charset Cloud SQL インスタンスにデータベースを作成する

DB 照合順序

照合順序 Cloud SQL インスタンスにデータベースを作成する

IAM ユーザー

ID

IAM ユーザーの ID。

IAM 認証

メール

IAM ユーザーのメールアドレス。

個々の IAM ユーザーまたはサービス アカウントを Cloud SQL インスタンスに追加する

type 個々の IAM ユーザーまたはサービス アカウントを Cloud SQL インスタンスに追加する

作成タイムアウト

長いデータベース作成を制限するために適用されるオプションのタイムアウト。

create_timeout

Update Timeout

長いデータベース更新を制限するために適用されるオプションのタイムアウト。

update_timeout

削除タイムアウト

長時間にわたるデータベースの削除を制限するために適用されるオプションのタイムアウト。

delete_timeout

暗号鍵の名前

encryption_key_name クライアントサイド暗号化について

リードレプリカの削除保護

選択すると、Terraform がレプリカ SQL インスタンスを削除できなくなります。

deletion_protection

Enable Random Password Special

選択すると、生成されるランダムなパスワードで特殊文字が有効になります。

enable_random_password_special

コネクタの適用

connectorEnforcement Cloud SQL 言語コネクタの概要

Google ML 統合を有効にする

enable_google_ml_integration Cloud SQL を使用して生成 AI アプリケーションを作成する

データベース統合のロール

Google Cloud サービスとの統合に必要なデフォルトのデータベース インスタンス サービス アカウントのロール。

始める前に