Menghubungkan ke instance menggunakan Private Service Connect

Halaman ini menjelaskan cara menggunakan Private Service Connect untuk terhubung ke instance Cloud SQL.

Anda dapat menggunakan Private Service Connect untuk terhubung ke instance Cloud SQL utama atau replika baca-nya dari beberapa jaringan Virtual Private Cloud (VPC) yang termasuk dalam grup, tim, project, atau organisasi yang berbeda.

Sebelum memulai

Dukungan untuk menggunakan Private Service Connect dengan instance Cloud SQL tersedia untuk gcloud CLI versi 416.0.0 dan yang lebih baru.

Peran pengguna

Tabel berikut memberikan informasi tentang peran yang diperlukan untuk menggunakan Private Service Connect dengan instance Cloud SQL:

Peran Deskripsi
compute.networkAdmin

Memberikan kontrol penuh atas jaringan VPC yang memulai koneksi ke instance Cloud SQL. Anda dapat membuat dan mengelola alamat IP, aturan firewall, dan endpoint Private Service Connect.

Jika Anda menggunakan Private Service Connect untuk terhubung ke instance Cloud SQL dari beberapa jaringan VPC, maka setiap jaringan memiliki administratornya sendiri.

dns.admin Memberikan kontrol penuh atas resource Cloud DNS, termasuk zona dan data DNS.
cloudsql.admin Memberikan kontrol penuh atas instance Cloud SQL dan mengontrol instance melalui siklus prosesnya.
cloudsql.instanceUser Memberikan akses ke instance Cloud SQL. Jika terhubung melalui klien Cloud SQL Auth Proxy, Anda harus memiliki peran Klien Cloud SQL. Jika terhubung langsung, Anda tidak memerlukan peran dan izin Identity and Access Management (IAM) apa pun.

Membuat instance Cloud SQL

Anda dapat membuat instance dan mengaktifkan Private Service Connect untuknya menggunakan gcloud CLI, Terraform, atau API.

gcloud

Untuk membuat instance dan mengaktifkan Private Service Connect untuknya, gunakan perintah gcloud sql instances create:

gcloud sql instances create INSTANCE_NAME \
--project=PROJECT_ID \
--region=REGION_NAME \
--enable-private-service-connect \
--allowed-psc-projects=ALLOWED_PROJECTS \
--availability-type=AVAILABILITY_TYPE \
--no-assign-ip \
--tier=MACHINE_TYPE \
--database-version=DATABASE_VERSION

Lakukan penggantian berikut:

  • INSTANCE_NAME: nama instance.
  • PROJECT_ID: ID atau nomor project project Google Cloud yang berisi instance.
  • REGION_NAME: nama region untuk instance.
  • ALLOWED_PROJECTS: daftar ID atau nomor project yang diizinkan, yang dipisahkan dengan koma. Jika project tidak ada dalam daftar ini, Anda tidak dapat menggunakannya untuk membuat instance dan mengaktifkan Private Service Connect untuknya.

  • AVAILABILITY_TYPE: mengaktifkan ketersediaan tinggi untuk instance. Untuk parameter ini, tentukan salah satu nilai berikut:
    • REGIONAL: mengaktifkan ketersediaan tinggi dan direkomendasikan untuk instance produksi. Instance gagal ke zona lain dalam region yang Anda pilih.
    • ZONAL: tidak memberikan kemampuan failover. Ini adalah nilai defaultnya.

    Untuk mengetahui informasi selengkapnya tentang cara menetapkan dan menghapus ketersediaan tinggi untuk instance, lihat Mengonfigurasi instance yang ada untuk ketersediaan tinggi dan Menonaktifkan ketersediaan tinggi untuk instance.

  • MACHINE_TYPE: jenis mesin untuk instance.
  • DATABASE_VERSION: versi database untuk instance (misalnya, POSTGRES_13).

Terraform

Untuk membuat instance dengan Private Service Connect yang diaktifkan, gunakan google_sql_database_instanceresource Terraform.

resource "google_sql_database_instance" "default" {
  name             = "postgres-instance"
  region           = "us-central1"
  database_version = "POSTGRES_14"
  settings {
    tier              = "db-custom-2-7680"
    availability_type = "REGIONAL"
    backup_configuration {
      enabled = true
    }
    ip_configuration {
      psc_config {
        psc_enabled               = true
        allowed_consumer_projects = []
      }
      ipv4_enabled = false
    }
  }
  deletion_protection = false # Set to "true" to prevent destruction of the resource
}

Untuk menerapkan konfigurasi Terraform di project Google Cloud, selesaikan langkah-langkah di bagian berikut.

Menyiapkan Cloud Shell

  1. Luncurkan Cloud Shell.
  2. Tetapkan project Google Cloud default tempat Anda ingin menerapkan konfigurasi Terraform.

    Anda hanya perlu menjalankan perintah ini sekali per project, dan dapat dijalankan di direktori mana pun.

    export GOOGLE_CLOUD_PROJECT=PROJECT_ID

    Variabel lingkungan akan diganti jika Anda menetapkan nilai eksplisit dalam file konfigurasi Terraform.

Menyiapkan direktori

Setiap file konfigurasi Terraform harus memiliki direktorinya sendiri (juga disebut modul root).

  1. Di Cloud Shell, buat direktori dan file baru di dalam direktori tersebut. Nama file harus memiliki ekstensi .tf—misalnya main.tf. Dalam tutorial ini, file ini disebut sebagai main.tf.
    mkdir DIRECTORY && cd DIRECTORY && touch main.tf
  2. Jika mengikuti tutorial, Anda dapat menyalin kode contoh di setiap bagian atau langkah.

    Salin kode contoh ke dalam main.tf yang baru dibuat.

    Atau, salin kode dari GitHub. Tindakan ini direkomendasikan jika cuplikan Terraform adalah bagian dari solusi menyeluruh.

  3. Tinjau dan ubah contoh parameter untuk diterapkan pada lingkungan Anda.
  4. Simpan perubahan Anda.
  5. Lakukan inisialisasi Terraform. Anda hanya perlu melakukan ini sekali per direktori.
    terraform init

    Secara opsional, untuk menggunakan versi penyedia Google terbaru, sertakan opsi -upgrade:

    terraform init -upgrade

Menerapkan perubahan

  1. Tinjau konfigurasi dan pastikan resource yang akan dibuat atau diupdate oleh Terraform sesuai yang Anda inginkan:
    terraform plan

    Koreksi konfigurasi jika diperlukan.

  2. Terapkan konfigurasi Terraform dengan menjalankan perintah berikut dan memasukkan yes pada prompt:
    terraform apply

    Tunggu hingga Terraform menampilkan pesan "Apply complete!".

  3. Buka project Google Cloud Anda untuk melihat hasilnya. Di Konsol Google Cloud, buka resource Anda di UI untuk memastikan bahwa Terraform telah membuat atau mengupdatenya.

REST

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_ID: ID atau nomor project project Google Cloud yang berisi instance.
  • INSTANCE_NAME: nama instance.
  • REGION_NAME: nama region untuk instance.
  • AVAILABILITY_TYPE: mengaktifkan ketersediaan tinggi untuk instance. Untuk parameter ini, tentukan salah satu nilai berikut:
    • REGIONAL: mengaktifkan ketersediaan tinggi dan direkomendasikan untuk instance produksi. Instance gagal ke zona lain dalam region yang Anda pilih.
    • ZONAL: tidak memberikan kemampuan failover. Ini adalah nilai defaultnya.

    Untuk mengetahui informasi selengkapnya tentang cara menetapkan dan menghapus ketersediaan tinggi untuk instance, lihat Mengonfigurasi instance yang ada untuk ketersediaan tinggi dan Menonaktifkan ketersediaan tinggi untuk instance.

  • ALLOWED_PROJECTS: daftar ID atau nomor project yang diizinkan, yang dipisahkan dengan koma. Jika project tidak ada dalam daftar ini, Anda tidak dapat menggunakannya untuk membuat instance dan mengaktifkan Private Service Connect untuknya.

  • MACHINE_TYPE: jenis mesin untuk instance.

Metode HTTP dan URL:

POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances

Meminta isi JSON:

{
  "name": "INSTANCE_NAME",
  "project": PROJECT_ID",
  "region": "REGION_NAME",
  "databaseVersion": "POSTGRES_13",
  "kind": "sql#instance",
  "settings": {
    "availabilityType": "AVAILABILITY_TYPE",
    "ipConfiguration": {
      "ipv4Enabled": false,
      "pscConfig": {
        "allowedConsumerProjects": [
          "ALLOWED_PROJECTS"
        ],
        "pscEnabled": true
      }
    },
    "kind": "sql#settings",
    "pricingPlan": "PER_USE",
    "replicationType": "SYNCHRONOUS",
    "tier": "MACHINE_TYPE"
  }
}

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_NAME",
  "status": "RUNNING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "startTime": "2023-06-14T18:48:35.499Z",
  "operationType": "CREATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_NAME",
  "selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}

Mendapatkan lampiran layanan

Setelah membuat instance Cloud SQL dengan Private Service Connect diaktifkan, dapatkan URI lampiran layanan dan gunakan untuk membuat endpoint Private Service Connect.

gcloud

Untuk melihat informasi ringkasan tentang instance dengan Private Service Connect yang diaktifkan, seperti kolom pscServiceAttachmentLink yang menampilkan URI yang mengarah ke lampiran layanan instance, gunakan perintah gcloud sql instances describe:

gcloud sql instances describe INSTANCE_NAME \
--project=PROJECT_ID

Lakukan penggantian berikut:

  • INSTANCE_NAME: nama instance Cloud SQL yang dapat dihubungkan dengan endpoint Private Service Connect di jaringan VPC
  • PROJECT_ID: ID atau nomor project project Google Cloud yang berisi instance

Contoh berikut menunjukkan contoh output untuk perintah ini:

gcloud sql instances describe myinstance \
--project=12345

...
pscServiceAttachmentLink: projects/45678/regions/myregion/serviceAttachments/myserviceattachment

Terraform

Untuk mendapatkan URI lampiran layanan, gunakan google_compute_addressresource Terraform.

resource "google_compute_address" "default" {
  name         = "psc-compute-address"
  region       = "us-central1"
  address_type = "INTERNAL"
  subnetwork   = "default"     # Replace value with the name of the subnet here.
  address      = "10.128.0.42" # Replace value with the IP address to reserve.
}

data "google_sql_database_instance" "default" {
  name = resource.google_sql_database_instance.default.name
}

resource "google_compute_forwarding_rule" "default" {
  name                  = "psc-forwarding-rule-${google_sql_database_instance.default.name}"
  region                = "us-central1"
  network               = "default"
  ip_address            = google_compute_address.default.self_link
  load_balancing_scheme = ""
  target                = data.google_sql_database_instance.default.psc_service_attachment_link
}

Untuk menerapkan konfigurasi Terraform di project Google Cloud, selesaikan langkah-langkah di bagian berikut.

Menyiapkan Cloud Shell

  1. Luncurkan Cloud Shell.
  2. Tetapkan project Google Cloud default tempat Anda ingin menerapkan konfigurasi Terraform.

    Anda hanya perlu menjalankan perintah ini sekali per project, dan dapat dijalankan di direktori mana pun.

    export GOOGLE_CLOUD_PROJECT=PROJECT_ID

    Variabel lingkungan akan diganti jika Anda menetapkan nilai eksplisit dalam file konfigurasi Terraform.

Menyiapkan direktori

Setiap file konfigurasi Terraform harus memiliki direktorinya sendiri (juga disebut modul root).

  1. Di Cloud Shell, buat direktori dan file baru di dalam direktori tersebut. Nama file harus memiliki ekstensi .tf—misalnya main.tf. Dalam tutorial ini, file ini disebut sebagai main.tf.
    mkdir DIRECTORY && cd DIRECTORY && touch main.tf
  2. Jika mengikuti tutorial, Anda dapat menyalin kode contoh di setiap bagian atau langkah.

    Salin kode contoh ke dalam main.tf yang baru dibuat.

    Atau, salin kode dari GitHub. Tindakan ini direkomendasikan jika cuplikan Terraform adalah bagian dari solusi menyeluruh.

  3. Tinjau dan ubah contoh parameter untuk diterapkan pada lingkungan Anda.
  4. Simpan perubahan Anda.
  5. Lakukan inisialisasi Terraform. Anda hanya perlu melakukan ini sekali per direktori.
    terraform init

    Secara opsional, untuk menggunakan versi penyedia Google terbaru, sertakan opsi -upgrade:

    terraform init -upgrade

Menerapkan perubahan

  1. Tinjau konfigurasi dan pastikan resource yang akan dibuat atau diupdate oleh Terraform sesuai yang Anda inginkan:
    terraform plan

    Koreksi konfigurasi jika diperlukan.

  2. Terapkan konfigurasi Terraform dengan menjalankan perintah berikut dan memasukkan yes pada prompt:
    terraform apply

    Tunggu hingga Terraform menampilkan pesan "Apply complete!".

  3. Buka project Google Cloud Anda untuk melihat hasilnya. Di Konsol Google Cloud, buka resource Anda di UI untuk memastikan bahwa Terraform telah membuat atau mengupdatenya.

REST

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_ID: ID atau nomor project project Google Cloud yang berisi instance
  • INSTANCE_NAME: nama instance

Metode HTTP dan URL:

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

Untuk mengirim permintaan, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
  ...
  pscServiceAttachmentLink: "projects/PROJECT_ID/regions/REGION_NAME/serviceAttachments/SERVICE_ATTACHMENT_NAME"
}

Kolom pscServiceAttachmentLink menampilkan URI yang mengarah ke lampiran layanan instance.

Membuat endpoint Private Service Connect

Anda dapat mereservasi alamat IP internal untuk endpoint Private Service Connect dan membuat endpoint dengan alamat tersebut. Untuk membuat endpoint, Anda memerlukan URI lampiran layanan dan project yang diizinkan untuk instance.

gcloud

  1. Guna mereservasi alamat IP internal untuk endpoint Private Service Connect, gunakan perintah
    gcloud compute addresses create:

    gcloud compute addresses create ADDRESS_NAME \
    --project=PROJECT_ID \
    --region=REGION_NAME \
    --subnet=SUBNET_NAME \
    --addresses=INTERNAL_IP_ADDRESS

    Lakukan penggantian berikut:

    • ADDRESS_NAME: nama alamat IP internal.
    • PROJECT_ID: ID atau nomor project project Google Cloud untuk endpoint.
    • REGION_NAME: nama region untuk endpoint.
    • SUBNET_NAME: nama subnet untuk alamat IP.
    • INTERNAL_IP_ADDRESS: alamat IP yang akan direservasi. Alamat IP ini harus berada dalam rentang IP utama subnet. Alamat IP dapat berupa alamat RFC 1918 atau subnet dengan rentang non-RFC.
  2. Untuk memverifikasi bahwa alamat IP sudah dicadangkan, gunakan perintah gcloud compute addresses list:

    gcloud compute addresses list ADDRESS_NAME \
    --project=PROJECT_ID

    Dalam respons, verifikasi bahwa status RESERVED muncul untuk alamat IP.

  3. Untuk membuat endpoint Private Service Connect dan mengarahkannya ke lampiran layanan Cloud SQL, gunakan perintah gcloud compute forwarding-rules create:

    gcloud compute forwarding-rules create ENDPOINT_NAME \
    --address=ADDRESS_NAME \
    --project=PROJECT_ID \
    --region=REGION_NAME \
    --network=NETWORK_NAME \
    --target-service-attachment=SERVICE_ATTACHMENT_URI \
    --allow-psc-global-access

    Lakukan penggantian berikut:

    • ENDPOINT_NAME: nama endpoint
    • NETWORK_NAME: nama jaringan VPC untuk endpoint
    • SERVICE_ATTACHMENT_URI: URI lampiran layanan
  4. Untuk memastikan bahwa lampiran layanan menerima endpoint, gunakan perintah
    gcloud compute forwarding-rules describe:

    gcloud compute forwarding-rules describe ENDPOINT_NAME \
    --project=PROJECT_ID \
    --region=REGION_NAME

    Dalam respons, verifikasi bahwa status ACCEPTED muncul untuk kolom pscConnectionStatus. Endpoint dapat terhubung ke lampiran layanan.

Terraform

Untuk membuat endpoint Private Service Connect, gunakan google_sql_database_instanceresource Terraform.

resource "google_compute_address" "default" {
  name         = "psc-compute-address"
  region       = "us-central1"
  address_type = "INTERNAL"
  subnetwork   = "default"     # Replace value with the name of the subnet here.
  address      = "10.128.0.42" # Replace value with the IP address to reserve.
}

data "google_sql_database_instance" "default" {
  name = resource.google_sql_database_instance.default.name
}

resource "google_compute_forwarding_rule" "default" {
  name                  = "psc-forwarding-rule-${google_sql_database_instance.default.name}"
  region                = "us-central1"
  network               = "default"
  ip_address            = google_compute_address.default.self_link
  load_balancing_scheme = ""
  target                = data.google_sql_database_instance.default.psc_service_attachment_link
}

Untuk menerapkan konfigurasi Terraform di project Google Cloud, selesaikan langkah-langkah di bagian berikut.

Menyiapkan Cloud Shell

  1. Luncurkan Cloud Shell.
  2. Tetapkan project Google Cloud default tempat Anda ingin menerapkan konfigurasi Terraform.

    Anda hanya perlu menjalankan perintah ini sekali per project, dan dapat dijalankan di direktori mana pun.

    export GOOGLE_CLOUD_PROJECT=PROJECT_ID

    Variabel lingkungan akan diganti jika Anda menetapkan nilai eksplisit dalam file konfigurasi Terraform.

Menyiapkan direktori

Setiap file konfigurasi Terraform harus memiliki direktorinya sendiri (juga disebut modul root).

  1. Di Cloud Shell, buat direktori dan file baru di dalam direktori tersebut. Nama file harus memiliki ekstensi .tf—misalnya main.tf. Dalam tutorial ini, file ini disebut sebagai main.tf.
    mkdir DIRECTORY && cd DIRECTORY && touch main.tf
  2. Jika mengikuti tutorial, Anda dapat menyalin kode contoh di setiap bagian atau langkah.

    Salin kode contoh ke dalam main.tf yang baru dibuat.

    Atau, salin kode dari GitHub. Tindakan ini direkomendasikan jika cuplikan Terraform adalah bagian dari solusi menyeluruh.

  3. Tinjau dan ubah contoh parameter untuk diterapkan pada lingkungan Anda.
  4. Simpan perubahan Anda.
  5. Lakukan inisialisasi Terraform. Anda hanya perlu melakukan ini sekali per direktori.
    terraform init

    Secara opsional, untuk menggunakan versi penyedia Google terbaru, sertakan opsi -upgrade:

    terraform init -upgrade

Menerapkan perubahan

  1. Tinjau konfigurasi dan pastikan resource yang akan dibuat atau diupdate oleh Terraform sesuai yang Anda inginkan:
    terraform plan

    Koreksi konfigurasi jika diperlukan.

  2. Terapkan konfigurasi Terraform dengan menjalankan perintah berikut dan memasukkan yes pada prompt:
    terraform apply

    Tunggu hingga Terraform menampilkan pesan "Apply complete!".

  3. Buka project Google Cloud Anda untuk melihat hasilnya. Di Konsol Google Cloud, buka resource Anda di UI untuk memastikan bahwa Terraform telah membuat atau mengupdatenya.

REST

  1. Cadangkan alamat IP internal untuk endpoint Private Service Connect.

  2. Verifikasi bahwa alamat IP sudah dicadangkan.

    Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

    • PROJECT_ID: ID atau nomor project project Google Cloud yang berisi endpoint Private Service Connect
    • REGION_NAME: nama region
    • ADDRESS_NAME: nama alamat IP

    Metode HTTP dan URL:

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/addresses/ADDRESS_NAME

    Untuk mengirim permintaan, perluas salah satu opsi berikut:

    Anda akan melihat respons JSON seperti berikut:

    {
      "kind": "compute#address",
      "id": "ADDRESS_ID",
      "creationTimestamp": "2024-05-09T11:20:50.114-07:00",
      "name": "ADDRESS_NAME",
      "description": "This is the name of the internal IP address.",
      "address": "IP_ADDRESS",
      "status": "RESERVED",
      "region": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME",
      "selfLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/addresses/ADDRESS_NAME",
      "networkTier": "PREMIUM",
      "labelFingerprint": "LABEL_FINGERPRINT_ID",
      "addressType": "EXTERNAL"
    }
    

    Dalam respons, verifikasi bahwa status RESERVED muncul untuk alamat IP.

  3. Buat endpoint Private Service Connect dan arahkan ke lampiran layanan Cloud SQL.

  4. Pastikan lampiran layanan menerima endpoint.

    Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

    • PROJECT_ID: ID atau nomor project project Google Cloud yang berisi endpoint Private Service Connect
    • REGION_NAME: nama region
    • ENDPOINT_NAME: nama endpoint

    Metode HTTP dan URL:

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/forwardingRules/ENDPOINT_NAME

    Untuk mengirim permintaan, perluas salah satu opsi berikut:

    Anda akan melihat respons JSON seperti berikut:

    {
      "kind": "compute#forwardingRule",
      "id": "ENDPOINT_ID",
      "creationTimestamp": "2024-05-09T12:03:21.383-07:00",
      "name": "ENDPOINT_NAME",
      "region": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME",
      "IPAddress": "IP_ADDRESS",
      "target": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/serviceAttachments/SERVICE_ATTACHMENT_NAME",
      "selfLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/forwardingRules/ENDPOINT_NAME",
      "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/default",
      "serviceDirectoryRegistrations": [
        {
          "namespace": "goog-psc-default"
        }
      ],
      "networkTier": "PREMIUM",
      "labelFingerprint": "LABEL_FINGERPRINT_ID",
      "fingerprint": "FINGERPRINT_ID",
      "pscConnectionId": "CONNECTION_ID",
      "pscConnectionStatus": "ACCEPTED",
      "allowPscGlobalAccess": true
    }
    

    Dalam respons, verifikasi bahwa status ACCEPTED muncul untuk kolom pscConnectionStatus. Endpoint dapat terhubung ke lampiran layanan.

Menghubungkan ke instance Cloud SQL

Anda dapat terhubung ke instance Cloud SQL dengan Private Service Connect yang diaktifkan menggunakan alamat IP internal, data DNS, Proxy Auth Cloud SQL, Konektor Bahasa Cloud SQL, atau aplikasi Google Cloud lainnya.

Mengonfigurasi zona DNS terkelola dan data DNS

Cloud SQL tidak membuat data DNS secara otomatis. Sebagai gantinya, respons API pencarian instance memberikan nama DNS yang disarankan. Sebaiknya buat data DNS di zona DNS pribadi pada jaringan VPC yang sesuai. Hal ini memberikan cara yang konsisten untuk menggunakan Proxy Auth Cloud SQL untuk terhubung dari berbagai jaringan.

gcloud

  1. Untuk melihat informasi ringkasan tentang instance Cloud SQL, termasuk nama DNS instance, gunakan perintah gcloud sql instances describe:

    gcloud sql instances describe INSTANCE_NAME \
    --project=PROJECT_ID

    Lakukan penggantian berikut:

    • INSTANCE_NAME: nama instance Cloud SQL
    • PROJECT_ID: ID atau nomor project project Google Cloud yang berisi instance

    Dalam respons, verifikasi bahwa nama DNS muncul. Nama ini memiliki pola berikut: INSTANCE_UID.PROJECT_DNS_LABEL.REGION_NAME.sql.goog.. Contoh: 1a23b4cd5e67.1a2b345c6d27.us-central1.sql.goog..

  2. Untuk membuat zona DNS pribadi, gunakan perintah gcloud dns managed-zones create. Zona ini dikaitkan dengan jaringan VPC yang digunakan untuk terhubung ke instance Cloud SQL melalui endpoint Private Service Connect.

    gcloud dns managed-zones create ZONE_NAME \
    --project=PROJECT_ID \
    --description=DESCRIPTION \
    --dns-name=DNS_NAME \
    --networks=NETWORK_NAME \
    --visibility=private

    Lakukan penggantian berikut:

    • ZONE_NAME: nama zona DNS
    • PROJECT_ID: ID atau nomor project project Google Cloud yang berisi zona
    • DESCRIPTION: deskripsi zona (misalnya, zona DNS untuk instance Cloud SQL)
    • DNS_NAME: nama akhiran DNS untuk zona, seperti REGION_NAME.sql.goog. (dengan REGION_NAME adalah nama region untuk zona tersebut)
    • NETWORK_NAME: nama jaringan VPC
  3. Setelah Anda membuat endpoint Private Service Connect, untuk membuat data DNS di zona tersebut, gunakan perintah gcloud dns record-sets create:

    gcloud dns record-sets create DNS_RECORD \
    --project=PROJECT_ID \
    --type=RRSET_TYPE \
    --rrdatas=RR_DATA \
    --zone=ZONE_NAME

    Lakukan penggantian berikut:

    • DNS_RECORD: nama data DNS. Data ini ditetapkan ke nama DNS yang Anda ambil dari instance Cloud SQL sebelumnya dalam prosedur ini (misalnya, 1a23b4cd5e67.1a2b345c6d27.us-central1.sql.goog.).
    • RRSET_TYPE: jenis data resource dari kumpulan data DNS (misalnya, A).
    • RR_DATA: alamat IP yang dialokasikan untuk endpoint Private Service Connect (misalnya, 198.51.100.5). Anda juga dapat memasukkan beberapa nilai seperti rrdata1 rrdata2 rrdata3 (misalnya, 10.1.2.3 10.2.3.4 10.3.4.5).

REST

  1. Dapatkan nama DNS dari instance Cloud SQL.
  2. Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

    • PROJECT_ID: ID atau nomor project project Google Cloud yang berisi instance
    • INSTANCE_NAME: nama instance

    Metode HTTP dan URL:

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

    Untuk mengirim permintaan, perluas salah satu opsi berikut:

    Anda akan melihat respons JSON seperti berikut:

    {
      ...
      "dnsName": "INSTANCE_ID.PROJECT_DNS_LABEL.REGION_NAME.sql.goog."
    }
    

    Kolom dnsName menampilkan nama DNS instance Cloud SQL. Nama DNS selalu diakhiri dengan titik (.).

  3. Buat zona DNS pribadi. Zona ini dikaitkan dengan jaringan VPC yang digunakan untuk terhubung ke instance Cloud SQL melalui endpoint Private Service Connect.
  4. Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

    • PROJECT_ID: ID atau nomor project project Google Cloud yang berisi zona DNS
    • ZONE_NAME: nama zona
    • DESCRIPTION: deskripsi zona (misalnya, zona DNS untuk instance Cloud SQL)
    • DNS_NAME: nama akhiran DNS untuk zona, seperti REGION_NAME.sql.goog. (dengan REGION_NAME adalah nama region untuk zona tersebut)
    • NETWORK_NAME: nama jaringan VPC

    Metode HTTP dan URL:

    POST https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones

    Meminta isi JSON:

    {
      "name": "ZONE_NAME",
      "description": "DESCRIPTION",
      "dnsName": "DNS_NAME",
      "visibility": "private",
      "privateVisibilityConfig": {
        "kind": "dns#managedZonePrivateVisibilityConfig",
        "networks": [
          {
            "kind": "dns#managedZonePrivateVisibilityConfigNetwork",
            "networkUrl": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/NETWORK_NAME"
          }
        ]
      }
    }
    

    Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

    Anda akan melihat respons JSON seperti berikut:

    {
      "name": "ZONE_NAME",
      "dnsName": "DNS_NAME",
      "description": "DESCRIPTION",
      "id": "ID",
      "nameServers": [
        "ns-gcp-private.googledomains.com."
      ],
      "creationTime": "2024-05-10T17:05:34.607Z",
      "visibility": "private",
      "privateVisibilityConfig": {
        "networks": [
          {
            "networkUrl": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/NETWORK_NAME",
            "kind": "dns#managedZonePrivateVisibilityConfigNetwork"
          }
        ],
        "gkeClusters": [],
        "kind": "dns#managedZonePrivateVisibilityConfig"
      },
      "cloudLoggingConfig": {
        "kind": "dns#managedZoneCloudLoggingConfig"
      },
      "kind": "dns#managedZone"
    }
    
  5. Setelah Anda membuat endpoint Private Service Connect, buat data DNS di zona tersebut.
  6. Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

    • PROJECT_ID: ID atau nomor project project Google Cloud yang berisi zona DNS.
    • ZONE_NAME: nama zona.
    • DNS_RECORD: nama data DNS. Data ini ditetapkan ke nama DNS yang Anda ambil dari instance Cloud SQL sebelumnya dalam prosedur ini (misalnya, 1a23b4cd5e67.1a2b345c6d27.us-central1.sql.goog.).
    • RRSET_TYPE: jenis kumpulan data (misalnya, A).
    • TTL: time to live (TTL) untuk data yang ditetapkan dalam jumlah detik (misalnya, 300).
    • RR_DATA: alamat IP yang dialokasikan untuk endpoint Private Service Connect (misalnya, 198.51.100.5). Anda juga dapat memasukkan beberapa nilai seperti rrdata1 rrdata2 rrdata3 (misalnya, 10.1.2.3 10.2.3.4 10.3.4.5).

    Metode HTTP dan URL:

    POST https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones/ZONE_NAME

    Meminta isi JSON:

    {
      "deletions": []
      "additions": [
        {
          "name": "DNS_RECORD",
          "type": "RRSET_TYPE",
          "ttl": TTL,
          "rrdatas": [
            "RR_DATA"
          ]
        }
      ]
    }
    

    Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

    Anda akan melihat respons JSON seperti berikut:

    {
      "additions": [
        {
          "name": "DNS_RECORD",
          "type": "RRSET_TYPE",
          "ttl": TTL,
          "rrdatas": [
            "RR_DATA"
          ],
          "signatureRrdatas": [],
          "kind": "dns#resourceRecordSet"
        }
      ],
      "deletions": [],
      "startTime": "2024-05-10T17:29:44.375Z",
      "id": "CHANGE_ID",
      "status": "pending",
      "kind": "dns#change"
    }
    

Menghubungkan langsung menggunakan data DNS

Sebelum terhubung ke instance Cloud SQL menggunakan data DNS, selesaikan tindakan berikut:

  1. Membuat endpoint Private Service Connect.
  2. Pastikan lampiran layanan instance menerima endpoint. Untuk memverifikasi bahwa status endpoint adalah ACCEPTED, periksa status.
  3. Konfigurasikan zona terkelola DNS dan data DNS.

Setelah Anda memenuhi kondisi ini, gunakan data DNS untuk terhubung ke instance dari jaringan VPC mana pun tempat Anda membuat endpoint.

psql "sslmode=disable dbname=DATABASE_NAME user=USERNAME host=DNS_RECORD"

Lakukan penggantian berikut:

  • DATABASE_NAME: nama database Cloud SQL untuk PostgreSQL yang ada dalam instance
  • USERNAME: nama pengguna yang terhubung ke instance
  • DNS_RECORD: data DNS endpoint

Terhubung langsung melalui alamat IP internal

Sebelum terhubung ke instance Cloud SQL dengan Private Service Connect diaktifkan, selesaikan tindakan berikut:

  1. Membuat endpoint Private Service Connect.
  2. Pastikan lampiran layanan instance menerima endpoint. Untuk memverifikasi bahwa status endpoint adalah ACCEPTED, periksa status.

Setelah Anda memenuhi kondisi ini, gunakan alamat IP endpoint untuk mengakses instance dari jaringan VPC mana pun tempat Anda membuat endpoint.

  1. Ambil alamat IP internal endpoint Private Service Connect.

    gcloud

    Untuk mengambil alamat IP, gunakan perintah gcloud compute addresses describe:

    gcloud compute addresses describe ADDRESS_NAME \
    --project=PROJECT_ID \
    --region=REGION_NAME

    Lakukan penggantian berikut:

    • ADDRESS_NAME: nama alamat IP endpoint
    • PROJECT_ID: ID atau nomor project project Google Cloud yang berisi endpoint
    • REGION_NAME: nama region untuk endpoint

    Dalam respons, verifikasi bahwa alamat IP muncul untuk kolom address. Ini adalah alamat IP internal.

    REST

    Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

    • PROJECT_ID: ID atau nomor project project Google Cloud yang berisi endpoint
    • REGION_NAME: nama region untuk endpoint
    • ADDRESS_NAME: nama alamat IP endpoint

    Metode HTTP dan URL:

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/addresses/ADDRESS_NAME

    Untuk mengirim permintaan, perluas salah satu opsi berikut:

    Anda akan melihat respons JSON seperti berikut:

    {
      "kind": "compute#address",
      "id": "ADDRESS_ID",
      "creationTimestamp": "2024-05-09T11:20:50.114-07:00",
      "name": "ADDRESS_NAME",
      "description": "This is the name of the internal IP address.",
      "address": "IP_ADDRESS",
      "status": "RESERVED",
      "region": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME",
      "selfLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/addresses/ADDRESS_NAME",
      "networkTier": "PREMIUM",
      "labelFingerprint": "LABEL_FINGERPRINT_ID",
      "addressType": "EXTERNAL"
    }
    

    Alamat IP internal adalah nilai yang dikaitkan dengan kolom address.

  2. Untuk terhubung ke instance Cloud SQL, gunakan alamat IP internal.

    psql "sslmode=disable dbname=DATABASE_NAME user=USERNAME hostaddr=IP_ADDRESS"

    Lakukan penggantian berikut:

    • DATABASE_NAME: nama database Cloud SQL untuk PostgreSQL yang ada dalam instance
    • USERNAME: nama pengguna yang terhubung ke instance
    • IP_ADDRESS: alamat IP endpoint

Terhubung menggunakan Proxy Auth Cloud SQL

Cloud SQL Auth Proxy adalah konektor yang memberikan akses aman ke instance dengan Private Service Connect yang diaktifkan tanpa memerlukan jaringan yang diizinkan atau untuk mengonfigurasi SSL.

Untuk mengizinkan koneksi klien Proxy Auth Cloud SQL, siapkan data DNS yang cocok dengan nama DNS yang direkomendasikan yang diberikan untuk instance. Pencatatan DNS adalah pemetaan antara sumber daya DNS dan nama domain.

Download dan instal Proxy Auth Cloud SQL

Untuk terhubung ke instance dengan Private Service Connect diaktifkan, Anda harus mendownload dan menginstal biner untuk Proxy Auth Cloud SQL. Biner yang Anda unduh tergantung pada sistem operasi, dan apakah biner menggunakan kernel 32-bit atau 64-bit. Sebagian besar perangkat keras yang lebih baru menggunakan kernel 64-bit.

Jika tidak yakin apakah komputer Anda menjalankan kernel 32-bit atau 64-bit, gunakan perintah uname -a untuk Linux atau macOS. Untuk Windows, lihat dokumentasi Windows.

Memulai Proxy Auth Cloud SQL

Proxy Auth Cloud SQL mendukung koneksi ke instance dengan Private Service Connect yang diaktifkan. Untuk mengetahui informasi selengkapnya, lihat Memulai Proxy Auth Cloud SQL.

  1. Melihat informasi ringkasan tentang instance Cloud SQL, termasuk nama koneksi instance.

    gcloud

    Untuk melihat informasi ringkasan tentang instance Cloud SQL, gunakan perintah
    gcloud sql instances describe.

    gcloud sql instances describe INSTANCE_NAME \
    --project=PROJECT_ID \
    --format='value(connectionName)'

    Lakukan penggantian berikut:

    • INSTANCE_NAME: nama instance Cloud SQL
    • PROJECT_ID: ID atau nomor project project Google Cloud yang berisi instance

    Nama koneksi menggunakan format PROJECT_ID:REGION_NAME:INSTANCE_NAME.

    REST

    Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

    • PROJECT_ID: ID atau nomor project project Google Cloud yang berisi instance
    • INSTANCE_NAME: nama instance

    Metode HTTP dan URL:

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

    Untuk mengirim permintaan, perluas salah satu opsi berikut:

    Anda akan melihat respons JSON seperti berikut:

    {
      ...
      "connectionName": "PROJECT_ID:REGION_NAME:INSTANCE_NAME"
    }
    

    Nama koneksi menggunakan format PROJECT_ID:REGION_NAME:INSTANCE_NAME.

  2. Salin nama koneksi instance.
  3. Luncurkan Proxy Auth Cloud SQL:

    ./cloud-sql-proxy INSTANCE_CONNECTION_NAME --psc 

    Ganti INSTANCE_CONNECTION_NAME dengan nama koneksi instance yang Anda salin di langkah sebelumnya.

Menghubungkan menggunakan Cloud SQL Language Connectors

Konektor Bahasa Cloud SQL adalah library yang menyediakan akses aman ke instance Cloud SQL dengan Private Service Connect yang diaktifkan tanpa memerlukan jaringan resmi atau untuk mengonfigurasi SSL.

Untuk mengizinkan koneksi dengan Cloud SQL Language Connectors, siapkan data DNS yang cocok dengan nama DNS yang direkomendasikan yang diberikan untuk instance. Pencatatan DNS adalah pemetaan antara sumber daya DNS dan nama domain.

Konektor Bahasa Cloud SQL mendukung koneksi Private Service Connect melalui jenis IP PSC dalam library masing-masing.

Terhubung dari fungsi App Engine Standard, Cloud Run, atau Cloud Run

Untuk terhubung ke instance Cloud SQL dengan Private Service Connect diaktifkan, Anda dapat menggunakan App Engine Standard, Cloud Run, atau fungsi Cloud Run.

Dalam lingkungan serverless yang didukung ini, Konektor Bahasa Cloud SQL dan koneksi TCP langsung yang menggunakan alamat IP dan nomor port didukung. Untuk koneksi TCP langsung, ini adalah alamat IP yang Anda pesan saat membuat endpoint Private Service Connect. Anda dapat menentukan alamat IP sebagai alamat untuk host database.

Jika membuat data DNS untuk endpoint, Anda dapat menentukan data ini untuk host.

Menghubungkan dari BigQuery

Untuk mengakses data di Cloud SQL dan membuat kueri terhadap data melalui koneksi IP internal, gunakan parameter
--enable-google-private-path . Parameter ini hanya valid jika:

  • Anda menggunakan parameter --no-assign-ip.
  • Anda menggunakan parameter --network untuk menentukan nama Jaringan VPC yang ingin Anda gunakan untuk membuat koneksi internal.

Menguji konektivitas

Untuk menguji konektivitas masuk ke instance Cloud SQL dengan Private Service Connect diaktifkan, tetapkan alamat IP endpoint Private Service Connect menjadi alamat IP tujuan.

gcloud

Untuk membuat uji konektivitas bagi instance Cloud SQL dengan Private Service Connect diaktifkan, gunakan perintah gcloud network-management connectivity-tests create:

gcloud network-management connectivity-tests create CONNECTIVITY_TEST_NAME \
--source-instance=SOURCE_INSTANCE \
--destination-cloud-sql-instance=DESTINATION_CLOUD_SQL_INSTANCE \
--destination-network=DESTINATION_NETWORK \
--destination-port=DESTINATION_PORT \
--protocol=tcp

Lakukan penggantian berikut:

  • CONNECTIVITY_TEST_NAME: nama uji konektivitas.
  • SOURCE_INSTANCE: URI untuk instance Compute Engine tempat alamat IP sumber berada (misalnya, projects/myproject/zones/myzone/instances/myinstance).
  • DESTINATION_CLOUD_SQL_INSTANCE: URL untuk instance Cloud SQL (misalnya, projects/myproject/instances/myinstance).
  • DESTINATION_NETWORK: URI untuk jaringan VPC tempat alamat IP tujuan berada (misalnya, projects/myproject/global/networks/mynetwork).
  • DESTINATION_PORT: nomor port yang dicadangkan untuk instance. Untuk instance Cloud SQL untuk PostgreSQL, nomor port-nya adalah 5432.

REST

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_ID: ID atau nomor project project Google Cloud yang berisi instance.
  • CONNECTIVITY_TEST_NAME: nama uji konektivitas.
  • SOURCE_IP_ADDRESS: alamat IP instance Compute Engine sumber.
  • SOURCE_INSTANCE: URI untuk instance Compute Engine tempat alamat IP sumber berada (misalnya, projects/myproject/zones/myzone/instances/myinstance).
  • SOURCE_NETWORK: URI untuk jaringan VPC tempat alamat IP sumber berada (misalnya, projects/myproject/global/networks/mynetwork).
  • DESTINATION_IP_ADDRESS: alamat IP instance Cloud SQL tujuan.
  • DESTINATION_PORT: nomor port yang dicadangkan untuk instance. Untuk instance Cloud SQL untuk PostgreSQL, nomor port-nya adalah 5432.
  • DESTINATION_NETWORK: URI untuk jaringan VPC tempat alamat IP tujuan berada (misalnya, projects/myproject/global/networks/mynetwork).

Metode HTTP dan URL:

POST https://networkmanagement.googleapis.com/v1beta/projects/PROJECT_ID/locations/global/connectivityTests?testId=CONNECTIVITY_TEST_NAME

Meminta isi JSON:

{
  "source": {
    "ipAddress": "SOURCE_IP_ADDRESS",
    "instance": "SOURCE_INSTANCE",
    "network": "SOURCE_NETWORK"
  },
  "destination": {
    "ipAddress": "DESTINATION_IP_ADDRESS",
    "port": DESTINATION_PORT,
    "network": "DESTINATION_NETWORK",
    "projectId": "PROJECT_ID"
  },
  "protocol": "TCP"
}

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
  "name": "projects/PROJECT_ID/locations/global/operations/operation-OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.networkmanagement.v1.OperationMetadata",
    "createTime": "2024-05-23T16:43:49.313981473Z",
    "target": "projects/PROJECT_ID/locations/global/connectivityTests/CONNECTIVITY_TEST_NAME",
    "verb": "create",
    "cancelRequested": false,
    "apiVersion": "v1"
  },
  "done": false
}

Batasan

  • Anda dapat menyiapkan hingga 20 endpoint Private Service Connect yang terhubung ke lampiran layanan instance Cloud SQL dengan Private Service Connect diaktifkan.
  • Anda tidak dapat menggunakan backend untuk instance yang mengaktifkan Private Service Connect.
  • Flag berikut tidak valid atau terpengaruh:
    • --no-assign-ip: menggunakan tanda ini karena instance dengan Private Service Connect yang diaktifkan tidak didukung untuk menggunakan jenis konektivitas lain seperti koneksi IP eksternal
    • --authorized-networks: Anda tidak dapat menggunakan tanda ini untuk menambahkan jaringan yang diizinkan
    • --network: Anda tidak dapat menggunakan tanda ini karena dikaitkan dengan akses layanan pribadi
    • --allocated-ip-range-name: Anda tidak dapat menggunakan tanda ini karena nama rentang IP yang diizinkan tidak didukung
  • Anda tidak dapat membuat replika eksternal instance dengan Private Service Connect yang diaktifkan.
  • Anda tidak dapat mengaktifkan atau menonaktifkan Private Service Connect pada instance yang ada.
  • Anda tidak dapat mengonfigurasi instance yang mengaktifkan Private Service Connect untuk menggunakan akses layanan pribadi atau koneksi IP eksternal.
    • Anda tidak dapat mengaktifkan koneksi IP eksternal pada instance dengan Private Service Connect yang diaktifkan.
    • Anda tidak dapat mengaktifkan akses layanan pribadi atau menambahkan jaringan resmi ke instance.
    • Anda tidak dapat mengubah jenis konektivitas instance.
  • Anda tidak dapat menggunakan perintah gcloud sql connect, Cloud Shell, atau Cloud Build untuk terhubung ke instance Cloud SQL dengan Private Service Connect diaktifkan.
  • Jika Anda melakukan migrasi homogen ke Cloud SQL, Anda tidak dapat menggunakan Database Migration Service untuk terhubung ke instance Cloud SQL dengan Private Service Connect yang diaktifkan.
  • Saat menguji konektivitas ke instance Cloud SQL dengan Private Service Connect yang diaktifkan, Anda tidak dapat menetapkan item berikut:
    • Alamat IP internal instance atau nama DNS sebagai tujuan secara langsung
    • Instance sebagai sumber
    • Alamat IP endpoint Private Service Connect sebagai sumber
  • Pemberian izin berbasis IP menggunakan jaringan yang diizinkan tidak didukung.
  • Ekstensi pglogical, pl/proxy, dblink, dan postgres_fdw tidak didukung.
  • Kontrol, logging, dan metrik berbasis IP klien tidak didukung untuk insight Sistem dan Kueri. Namun, VPN dan Interconnect didukung.
  • Jika project jaringan Anda berisi instance yang menggunakan pada arsitektur jaringan Cloud SQL, Anda tidak dapat membuat di instance Private Service Connect. Cloud SQL menyediakan berbagai alat untuk membantu Anda mengupgrade instance dari arsitektur jaringan lama ke arsitektur jaringan yang baru. Untuk informasi selengkapnya atau untuk memeriksa jaringan arsitektur instance Cloud SQL dalam project Anda dan lakukan upgrade yang diperlukan, lihat Mengupgrade instance ke arsitektur jaringan yang baru.

Memecahkan masalah

Bagian ini berisi informasi tentang masalah yang terkait dengan instance Cloud SQL dengan Private Service Connect yang diaktifkan beserta langkah-langkah untuk pemecahan masalah.

Masalah Pemecahan masalah
Lampiran layanan instance tidak menerima endpoint Private Service Connect.
  1. Periksa status endpoint.

    gcloud

    Untuk memeriksa status, gunakan perintah
    gcloud compute forwarding-rules describe.

    gcloud compute forwarding-rules describe ENDPOINT_NAME \
    --project=PROJECT_ID \
    --region=REGION_NAME \
    | grep pscConnectionStatus

    Lakukan penggantian berikut:

    • ENDPOINT_NAME: nama endpoint
    • PROJECT_ID: ID atau nomor project project Google Cloud yang berisi endpoint
    • REGION_NAME: nama region untuk endpoint

    REST

    Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

    • PROJECT_ID: ID atau nomor project project Google Cloud yang berisi endpoint Private Service Connect
    • REGION_NAME: nama region
    • ENDPOINT_NAME: nama endpoint

    Metode HTTP dan URL:

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/forwardingRules/ENDPOINT_NAME

    Untuk mengirim permintaan, perluas salah satu opsi berikut:

    Anda akan melihat respons JSON seperti berikut:

    {
      "kind": "compute#forwardingRule",
      "id": "ENDPOINT_ID",
      "creationTimestamp": "2024-05-09T12:03:21.383-07:00",
      "name": "ENDPOINT_NAME",
      "region": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME",
      "IPAddress": "IP_ADDRESS",
      "target": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/serviceAttachments/SERVICE_ATTACHMENT_NAME",
      "selfLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/forwardingRules/ENDPOINT_NAME",
      "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/default",
      "serviceDirectoryRegistrations": [
        {
          "namespace": "goog-psc-default"
        }
      ],
      "networkTier": "PREMIUM",
      "labelFingerprint": "LABEL_FINGERPRINT_ID",
      "fingerprint": "FINGERPRINT_ID",
      "pscConnectionId": "CONNECTION_ID",
      "pscConnectionStatus": "ACCEPTED",
      "allowPscGlobalAccess": true
    }
    
  2. Verifikasi bahwa status endpoint adalah ACCEPTED. Jika statusnya adalah PENDING, berarti instance tidak mengizinkan project Google Cloud yang berisi endpoint tersebut. Pastikan project jaringan tempat endpoint dibuat diizinkan. Untuk mengetahui informasi selengkapnya, lihat Mengedit instance dengan Private Service Connect yang diaktifkan.

Langkah selanjutnya