Mengonfigurasi Penggabungan Koneksi Terkelola

Halaman ini menjelaskan cara mengonfigurasi Managed Connection Pooling untuk instance Cloud SQL Anda.

Sebelum memulai

  • Konfirmasi bahwa instance Anda memenuhi semua persyaratan untuk menggunakan Managed Connection Pooling.
  • Jika Anda menggunakan gcloud CLI, gunakan perintah gcloud beta dan konfirmasi bahwa versi gcloud CLI Anda adalah 515.0.0 atau yang lebih baru.
  • Pastikan instance Anda menggunakan arsitektur jaringan Cloud SQL yang baru. Jika instance Anda masih menggunakan arsitektur jaringan lama, upgrade ke arsitektur jaringan baru.

Anda dapat mengaktifkan Managed Connection Pooling untuk instance pada saat pembuatan, atau mengedit instance yang ada untuk mengaktifkannya.

Mengaktifkan Managed Connection Pooling untuk instance baru

Untuk membuat instance dengan Managed Connection Pooling yang diaktifkan, lihat Membuat instance. Anda dapat mengaktifkan Penggabungan Koneksi Terkelola untuk instance menggunakan gcloud CLI atau Cloud SQL API.

Mengaktifkan Managed Connection Pooling untuk instance yang ada

Anda dapat mengaktifkan Managed Connection Pooling untuk instance yang sudah ada menggunakan Google Cloud konsol, gcloud CLI, atau Cloud SQL API. Anda harus mengaktifkan Managed Connection Pooling sebelum mengubah opsi Managed Connection Pooling.

Konsol

  1. Di konsol Google Cloud , buka halaman Instance Cloud SQL.

    Buka Instance Cloud SQL

  2. Temukan instance yang ingin Anda aktifkan Managed Connection Pooling-nya. Untuk membuka halaman Ringkasan instance, klik nama instance.

  3. Klik Edit.

  4. Di bagian Customize your instance, luaskan Connections.

  5. Untuk mengaktifkan Managed Connection Pooling, centang kotak untuk Enable Managed Connection Pool.

  6. Klik Simpan.

gcloud

Gunakan perintah gcloud beta sql instances untuk mengaktifkan Managed Connection Pooling.

  gcloud beta sql instances patch INSTANCE_NAME \
  --enable-connection-pooling

Ganti kode berikut:

  • INSTANCE_NAME: nama instance Cloud SQL yang ingin Anda aktifkan Managed Connection Pooling-nya.

REST v1

Untuk mengaktifkan Managed Connection Pooling untuk instance yang sudah ada, gunakan perintah berikut dan tetapkan connectionPoolingEnabled:

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_ID: project ID
  • INSTANCE_ID: ID instance

Metode HTTP dan URL:

PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID

Meminta isi JSON:

{
  "settings": {
    "connectionPoolConfig": {
      "connectionPoolingEnabled": true
    }
  }
}

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "operationType": "UPDATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_ID",
  "selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}

REST v1beta4

Untuk mengaktifkan Managed Connection Pooling untuk instance yang sudah ada, gunakan perintah berikut dan tetapkan connectionPoolingEnabled:

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_ID: project ID
  • INSTANCE_ID: ID instance

Metode HTTP dan URL:

PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID

Meminta isi JSON:

{
  "settings": {
    "connectionPoolConfig": {
      "connectionPoolingEnabled": true
    }
  }
}

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "operationType": "UPDATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_ID",
  "selfLink": "https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}

Mengubah Managed Connection Pooling untuk instance

Setelah mengaktifkan Managed Connection Pooling, Anda dapat menyesuaikan Managed Connection Pooling menggunakan opsi konfigurasi yang tersedia. Opsi konfigurasi ini disebut flag pool Managed Connection Pooling. Konfigurasi yang ditambahkan ke Managed Connection Pooling diterapkan ke semua pooler yang digunakan oleh instance. Untuk mengetahui informasi selengkapnya tentang opsi konfigurasi yang tersedia, nilai default, dan rentangnya, lihat opsi konfigurasi yang tersedia.

Untuk mengubah opsi konfigurasi Managed Connection Pooling yang tersedia untuk instance, lakukan hal berikut:

Konsol

  1. Di konsol Google Cloud , buka halaman Instance Cloud SQL.

    Buka Instance Cloud SQL

  2. Temukan instance yang ingin Anda aktifkan Managed Connection Pooling-nya. Untuk membuka halaman Ringkasan instance, klik nama instance.

  3. Klik Edit.

  4. Di bagian Customize your instance, luaskan Connections.

  5. Di bagian Managed connection pool, luaskan Advanced pooling options.

    Ubah opsi penggabungan yang tersedia yang ingin Anda perbarui.

  6. Klik Simpan.

gcloud

Gunakan perintah gcloud beta sql instances untuk mengubah opsi konfigurasi.

  gcloud beta sql instances patch INSTANCE_NAME \
  --connection-pool-flags=CONFIGURATION_NAME=CONFIGURATION_VALUE

Ganti kode berikut:

  • INSTANCE_NAME: nama instance Cloud SQL yang ingin Anda ubah Managed Connection Pooling-nya.
  • CONFIGURATION_NAME: nama opsi konfigurasi yang ingin Anda ubah. Untuk mengetahui daftar semua opsi konfigurasi yang tersedia, lihat opsi konfigurasi yang tersedia.
  • CONFIGURATION_VALUE: nilai baru untuk opsi konfigurasi yang Anda pilih.

REST v1

Untuk mengubah konfigurasi yang tersedia Managed Connection Pooling, gunakan perintah berikut dan tetapkan ConnectionPoolConfig:

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_ID: project ID
  • INSTANCE_ID: ID instance

Metode HTTP dan URL:

PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID

Meminta isi JSON:

{
  "settings": {
    "connectionPoolConfig": {
      "flags":
      [
        {
          "name": "CONFIGURATION_NAME",
          "value":"CONFIGURATION_VALUE"
        }
      ]
    }
  }
}

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "operationType": "UPDATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_ID",
  "selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}

REST v1beta4

Untuk mengubah konfigurasi yang tersedia Managed Connection Pooling, gunakan perintah berikut dan tetapkan ConnectionPoolConfig:

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_ID: project ID
  • INSTANCE_ID: ID instance

Metode HTTP dan URL:

PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID

Meminta isi JSON:

{
  "settings": {
    "connectionPoolConfig": {
      "flags":
      [
        {
          "name": "CONFIGURATION_NAME",
          "value":"CONFIGURATION_VALUE"
        }
      ]
    }
  }
}

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "operationType": "UPDATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_ID",
  "selfLink": "https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}

Menonaktifkan Penggabungan Koneksi Terkelola untuk instance

Anda dapat menonaktifkan Managed Connection Pooling untuk instance yang ada menggunakan Google Cloud konsol, gcloud CLI, atau Cloud SQL API.

Untuk menonaktifkan Managed Connection Pooling untuk instance, lakukan hal berikut:

Konsol

  1. Di konsol Google Cloud , buka halaman Instance Cloud SQL.

    Buka Instance Cloud SQL

  2. Temukan instance yang ingin Anda nonaktifkan Managed Connection Pooling-nya. Untuk membuka halaman Ringkasan instance, klik nama instance.

  3. Klik Edit.

  4. Di bagian Customize your instance, luaskan Connections.

  5. Untuk menonaktifkan Managed Connection Pooling, hapus centang pada kotak Enable Managed Connection Pool.

  6. Klik Simpan.

gcloud

Gunakan perintah gcloud beta sql instances untuk menonaktifkan Managed Connection Pooling.

  gcloud beta sql instances patch INSTANCE_NAME \
  --no-enable-connection-pooling

Ganti kode berikut:

  • PROJECT_ID: nama instance Cloud SQL yang ingin Anda nonaktifkan Managed Connection Pooling-nya.

REST v1

Untuk menonaktifkan Managed Connection Pooling untuk instance, gunakan perintah berikut dan tetapkan connectionPoolingEnabled:

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_ID: project ID
  • INSTANCE_ID: ID instance

Metode HTTP dan URL:

PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID

Meminta isi JSON:

{
  "settings": {
    "connectionPoolConfig": {
      "connectionPoolingEnabled": false
    }
  }
}

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "operationType": "UPDATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_ID",
  "selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}

REST v1beta4

Untuk menonaktifkan Managed Connection Pooling untuk instance, gunakan perintah berikut dan tetapkan connectionPoolingEnabled:

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_ID: project ID
  • INSTANCE_ID: ID instance

Metode HTTP dan URL:

PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID

Meminta isi JSON:

{
  "settings": {
    "connectionPoolConfig": {
      "connectionPoolingEnabled": false
    }
  }
}

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "operationType": "UPDATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_ID",
  "selfLink": "https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}

Melihat status Managed Connection Pooling untuk instance

Anda dapat melihat status Managed Connection Pooling untuk instance menggunakan Google Cloud konsol, gcloud CLI, atau Cloud SQL API.

Untuk melihat status Managed Connection Pooling untuk instance edisi Cloud SQL Enterprise Plus, lakukan hal berikut:

Konsol

  1. Di konsol Google Cloud , buka halaman Instance Cloud SQL.

    Buka Instance Cloud SQL

  2. Temukan instance yang ingin Anda lihat status Managed Connection Pooling-nya. Untuk membuka halaman Ringkasan instance, klik nama instance.

    Bagian Koneksi menunjukkan apakah Managed Connection Pooling diaktifkan atau dinonaktifkan.

gcloud

  gcloud beta sql instances describe INSTANCE_NAME
  --format="value(settings.connectionPoolConfig.connectionPoolingEnabled)"

Ganti kode berikut:

  • PROJECT_ID: nama instance Cloud SQL yang ingin Anda lihat status Managed Connection Pooling-nya.

    Jika Managed Connection Pooling diaktifkan, respons berikut akan ditampilkan:

    connectionPoolingEnabled: true

REST v1

Untuk melihat status Managed Connection Pooling untuk instance Cloud SQL Anda, gunakan perintah berikut dan cari connectionPoolingEnabled:

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

Metode HTTP dan URL:

GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME

Untuk mengirim permintaan, perluas salah satu opsi berikut:

Anda akan menerima respons JSON seperti berikut:

{
  "kind": "sql#instance",
  "state": "RUNNABLE",
  "databaseVersion": "POSTGRES_13",
  "settings": {
    "authorizedGaeApplications": [],
    "tier": "db-custom-2-7680",
    "kind": "sql#settings",
    "availabilityType": "REGIONAL",
    "pricingPlan": "PER_USE",
    "replicationType": "SYNCHRONOUS",
    "activationPolicy": "ALWAYS",
    "ipConfiguration": {
      "authorizedNetworks": [],
      "pscConfig": {
        "allowedConsumerProjects": [
          "ALLOWED_PROJECTS"
        ],
        "pscEnabled": true
      },
      "ipv4Enabled": false
    },
  ...
  "createTime": "2023-06-14T18:48:34.975Z",
  "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE",
  "pscServiceAttachmentLink": "projects/PROJECT_ID/regions/REGION_NAME/serviceAttachments/SERVICE_ATTACHMENT_ID",
  "dnsName": "DNS_NAME"
}

REST v1beta4

Untuk melihat status Managed Connection Pooling untuk instance Cloud SQL Anda, gunakan perintah berikut dan cari connectionPoolingEnabled:

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

Metode HTTP dan URL:

GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME

Untuk mengirim permintaan, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
  "kind": "sql#instance",
  "state": "RUNNABLE",
  "databaseVersion": "POSTGRES_13",
  "settings": {
    "authorizedGaeApplications": [],
    "tier": "db-custom-2-7680",
    "kind": "sql#settings",
    "availabilityType": "REGIONAL",
    "pricingPlan": "PER_USE",
    "replicationType": "SYNCHRONOUS",
    "activationPolicy": "ALWAYS",
    "ipConfiguration": {
      "authorizedNetworks": [],
      "pscConfig": {
        "allowedConsumerProjects": [
          "ALLOWED_PROJECTS"
        ],
        "pscEnabled": true
      },
      "ipv4Enabled": false
    },
  ...
  "createTime": "2023-06-14T18:48:34.975Z",
  "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE",
  "pscServiceAttachmentLink": "projects/PROJECT_ID/regions/REGION_NAME/serviceAttachments/SERVICE_ATTACHMENT_ID",
  "dnsName": "DNS_NAME"
}

Memantau Penggabungan Koneksi Terkelola

Anda dapat memantau cara Managed Connection Pooling berjalan di instance Cloud SQL menggunakan metrik Managed Connection Pooling Cloud SQL berikut:

Nama metrik Deskripsi
num_pools Jumlah total kumpulan koneksi per database.
client_connection Melacak jumlah koneksi berdasarkan status koneksi klien. Status yang disertakan dalam metrik ini adalah:
  • active: jumlah koneksi aktif per database, termasuk klien tidak aktif yang tidak memiliki permintaan kueri tertunda.
  • waiting: jumlah klien yang menunggu koneksi server per database.
server_connections Melacak jumlah koneksi server berdasarkan status koneksi server. Status yang disertakan dalam metrik ini adalah:
  • active: jumlah koneksi aktif per database.
  • waiting: jumlah koneksi server yang tidak aktif per database.
client_connections_avg_wait_time Waktu rata-rata yang dihabiskan oleh semua klien dalam status menunggu server.

Untuk mengetahui informasi selengkapnya tentang metrik ini, lihat Metrik Cloud SQL. Untuk melihat metrik ini menggunakan konsol Google Cloud , lihat Melihat metrik di halaman ringkasan instance Cloud SQL.

Langkah berikutnya