Membuat dan mengelola antarmuka Private Service Connect

Halaman ini menjelaskan cara administrator jaringan produsen dapat membuat dan mengelola antarmuka Private Service Connect. Antarmuka Private Service Connect memungkinkan jaringan Virtual Private Cloud (VPC) produsen layanan memulai koneksi ke jaringan VPC konsumen.

Sebelum memulai

Peran

Untuk mendapatkan izin yang diperlukan untuk membuat antarmuka Private Service Connect, minta administrator untuk memberi Anda peran IAM berikut pada project Anda:

Untuk mengetahui informasi selengkapnya tentang pemberian peran, lihat Mengelola akses.

Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran yang telah ditetapkan lainnya.

Peran Compute Instance Admin (v1) berisi izin compute.instances.pscInterfaceCreate, yang diperlukan untuk membuat antarmuka Private Service Connect.

Membuat dan mengonfigurasi antarmuka Private Service Connect

Untuk membuat dan mengonfigurasi instance virtual machine (VM) yang memiliki antarmuka Private Service Connect, selesaikan langkah-langkah berikut.

Membuat VM dengan antarmuka Private Service Connect

Saat membuat antarmuka Private Service Connect, Anda membuat VM yang memiliki setidaknya dua antarmuka jaringan. Antarmuka pertama terhubung ke subnet produsen. Antarmuka kedua adalah antarmuka Private Service Connect yang meminta koneksi ke lampiran jaringan di jaringan konsumen. Jika koneksi diterima, Google Cloud akan menetapkan alamat IP internal dari subnet yang ditentukan oleh lampiran jaringan ke antarmuka Private Service Connect.

Jika Anda membuat antarmuka Private Service Connect yang merujuk ke lampiran jaringan yang dikonfigurasi untuk menerima koneksi secara manual dan project antarmuka tidak tercantum dalam daftar penerimaan lampiran jaringan, pembuatan VM antarmuka Private Service Connect akan gagal. Dalam hal ini, bekerjasamalah dengan organisasi konsumen untuk menambahkan project Anda ke daftar penerimaan, lalu buat antarmuka Private Service Connect.

Saat membuat antarmuka Private Service Connect, Anda dapat secara opsional menetapkan satu atau beberapa rentang IP alias internal untuknya. Jika Anda berencana untuk menetapkan rentang IP alias, hubungi organisasi konsumen untuk menentukan rentang alamat IP yang sesuai.

Untuk menetapkan rentang IP alias, tentukan panjang awalan rentang tersebut dalam notasi CIDR. Saat Anda menetapkan satu atau beberapa rentang IP alias ke antarmuka Private Service Connect, Google Cloud akan mengalokasikan rentang IP alias dari rentang alamat IP utama subnet yang terkait dengan lampiran jaringan. Alamat IP utama antarmuka Private Service Connect dialokasikan dari luar rentang IP alias mana pun. Jika alamat IP di subnet lampiran jaringan tidak cukup untuk mengalokasikan alamat IP utama dan rentang IP alias, pembuatan VM antarmuka Private Service Connect akan gagal. Anda dapat menemukan alamat IP spesifik yang ditetapkan dengan mendeskripsikan VM antarmuka.

Konsol

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

    Buka instance VM

  2. Klik Create instance.

  3. Masukkan Nama.

  4. Pilih Region yang cocok dengan region lampiran jaringan yang ingin Anda hubungkan.

  5. Pilih Zone.

  6. Klik Advanced options.

  7. Klik Networking.

  8. Di bagian Network interfaces, klik antarmuka jaringan pertama, yang merupakan antarmuka jaringan utama, lalu lakukan hal berikut:

    1. Pilih Jaringan untuk antarmuka jaringan utama.
    2. Pilih Subnet untuk antarmuka jaringan utama. Subnet ini harus berada di region yang sama dengan lampiran jaringan antarmuka Private Service Connect.
  9. Klik Add a network interface.

  10. Untuk Interface type, pilih Private Service Connect.

  11. Masukkan URL lampiran jaringan.

  12. Pilih IP stack type. Untuk membuat antarmuka Private Service Connect dual-stack, subnet lampiran jaringan harus berupa stack ganda.

  13. Opsional: Untuk menambahkan rentang IP alias, di kotak Prefix length, masukkan panjang awalan—misalnya, /30. Anda dapat menambahkan beberapa rentang IP alias dengan mengklik Add IP range, lalu memasukkan panjang awalan untuk setiap rentang IP alias tambahan yang ingin ditambahkan.

  14. Klik Done.

  15. Klik Create.

gcloud

Untuk membuat VM dengan antarmuka Private Service Connect khusus IPv4, gunakan perintah instances create.

gcloud compute instances create INSTANCE_NAME \
    --zone=ZONE \
    --machine-type=MACHINE_TYPE \
    --image-project=IMAGE_PROJECT \
    --image=IMAGE \
    --network-interface='network=PRODUCER_NETWORK,subnet=PRODUCER_SUBNET,no-address' \
    --network-interface='network-attachment=projects/CONSUMER_PROJECT_ID/regions/REGION/networkAttachments/ATTACHMENT_NAME'

Ganti kode berikut:

  • INSTANCE_NAME: nama instance baru
  • ZONE: zona instance baru
  • MACHINE_TYPE: jenis mesin instance, yang dapat berupa jenis yang telah ditetapkan atau kustom.
  • IMAGE_PROJECT: project image. Misalnya, jika Anda menentukan debian-10-buster-v20230809 sebagai gambar, tentukan debian-cloud sebagai project gambar. Anda dapat melihat daftar gambar, project gambar, dan kelompok gambar yang tersedia menggunakan perintah gcloud compute images list.
  • IMAGE: versi image publik tertentu—misalnya, debian-10-buster-v20230809.
  • PRODUCER_NETWORK: jaringan instance.
  • PRODUCER_SUBNET: subnet antarmuka jaringan utama VM. Subnet ini harus berada di region yang sama dengan lampiran jaringan antarmuka Private Service Connect.
  • CONSUMER_PROJECT_ID: ID konsumen yang ingin Anda hubungkan.
  • ATTACHMENT_NAME: nama lampiran jaringan untuk meminta koneksi.

Untuk menetapkan antarmuka Private Service Connect sebagai IP4 dan alamat IPv6, tentukan stack-type='IPV4_IPv6'. Lampiran jaringan yang dirujuk antarmuka harus dikaitkan dengan subnet dual-stack.

gcloud compute instances create INSTANCE_NAME \
    --zone=ZONE \
    --machine-type=MACHINE_TYPE \
    --image-project=IMAGE_PROJECT \
    --image=IMAGE \
    --network-interface='network=PRODUCER_NETWORK,subnet=PRODUCER_SUBNET,no-address' \
    --network-interface='network-attachment=projects/CONSUMER_PROJECT_ID/regions/REGION/networkAttachments/ATTACHMENT_NAME,stack-type='IPV4_IPV6''

Untuk menetapkan antarmuka Private Service Connect satu atau beberapa rentang IP alias, tentukan panjang awalan setiap rentang IP alias yang ingin ditetapkan:

gcloud compute instances create INSTANCE_NAME \
    --zone=ZONE \
    --machine-type=MACHINE_TYPE \
    --image-project=IMAGE_PROJECT \
    --image=IMAGE \
    --network-interface='network=PRODUCER_NETWORK,subnet=PRODUCER_SUBNET,no-address' \
    --network-interface='network-attachment=projects/CONSUMER_PROJECT_ID/regions/REGION/networkAttachments/ATTACHMENT_NAME,aliases=ALIAS_IP_RANGE'

Ganti ALIAS_IP_RANGE dengan satu atau beberapa panjang awalan dalam notasi CIDR. Anda dapat menyertakan beberapa panjang awalan dalam daftar yang dipisahkan titik koma—misalnya, /24;/28.

API

Untuk membuat VM dengan antarmuka Private Service Connect khusus IPv4, kirim permintaan POST ke metode instances.insert.

POST https://compute.googleapis.com/compute/v1/projects/PRODUCER_PROJECT_ID/zones/INSTANCE_ZONE/instances
{
  "machineType": "zones/MACHINE_TYPE_ZONE/machineTypes/MACHINE_TYPE",
  "name": "VM_NAME",
  "disks": [
    {
      "initializeParams": {
        "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE"
      },
      "boot": true
    }
  ],
  "networkInterfaces": [
    {
      "network": "https://compute.googleapis.com/compute/v1/projects/PRODUCER_PROJECT_ID/global/networks/PRODUCER_NETWORK",
      "subnetwork": "https://compute.googleapis.com/compute/v1/projects/PRODUCER_PROJECT_ID/regions/SUBNET_REGION/subnetworks/SUBNET"
    },
    {
      "networkAttachment": "projects/CONSUMER_PROJECT_ID/regions/ATTACHMENT_REGION/networkAttachments/ATTACHMENT_NAME"
    }
  ]
}

Ganti kode berikut:

  • PRODUCER_PROJECT_ID: ID project produsen.
  • INSTANCE_ZONE: zona instance baru.
  • MACHINE_TYPE_ZONE: zona jenis mesin.
  • MACHINE_TYPE: jenis mesin VM baru, yang dapat berupa jenis yang telah ditetapkan atau kustom.
  • VM_NAME: nama VM baru.
  • IMAGE_PROJECT: project yang berisi image. Misalnya, jika Anda menentukan debian-10-buster-v20200309 sebagai gambar, tentukan debian-cloud sebagai project gambar.
  • IMAGE: versi tertentu dari gambar publik—misalnya, debian-10-buster-v20200309.
  • PRODUCER_PROJECT_ID: project ID untuk project antarmuka.
  • PRODUCER_NETWORK: nama jaringan VPC produsen.
  • SUBNET_REGION: region dari subnet antarmuka jaringan utama. Subnet ini harus berada di region yang sama dengan lampiran jaringan antarmuka Private Service Connect.
  • SUBNET: nama subnet antarmuka jaringan utama.
  • CONSUMER_PROJECT_ID: ID project konsumen.
  • ATTACHMENT_REGION: region lampiran jaringan.
  • ATTACHMENT_NAME: nama lampiran jaringan.

Untuk menetapkan antarmuka Private Service Connect sebagai IP4 dan alamat IPv6, tentukan "stack-type": "IPV4_IPv6". Lampiran jaringan yang dirujuk antarmuka harus dikaitkan dengan subnet dual-stack.

POST https://compute.googleapis.com/compute/v1/projects/PRODUCER_PROJECT_ID/zones/INSTANCE_ZONE/instances
{
  "machineType": "zones/MACHINE_TYPE_ZONE/machineTypes/MACHINE_TYPE",
  "name": "VM_NAME",
  "disks": [
    {
      "initializeParams": {
        "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE"
      },
      "boot": true
    }
  ],
  "networkInterfaces": [
    {
      "network": "https://compute.googleapis.com/compute/v1/projects/PRODUCER_PROJECT_ID/global/networks/PRODUCER_NETWORK",
      "subnetwork": "https://compute.googleapis.com/compute/v1/projects/PRODUCER_PROJECT_ID/regions/SUBNET_REGION/subnetworks/SUBNET"
    },
    {
      "networkAttachment": "projects/CONSUMER_PROJECT_ID/regions/ATTACHMENT_REGION/networkAttachments/ATTACHMENT_NAME",
      "stackType": "IPV4_IPV6"
    }
  ]
}

Untuk menetapkan antarmuka Private Service Connect satu atau beberapa rentang IP alias, tentukan panjang awalan setiap rentang IP alias yang ingin Anda tetapkan.

POST https://compute.googleapis.com/compute/v1/projects/PRODUCER_PROJECT_ID/zones/INSTANCE_ZONE/instances
{
  "machineType": "zones/MACHINE_TYPE_ZONE/machineTypes/MACHINE_TYPE",
  "name": "VM_NAME",
  "disks": [
    {
      "initializeParams": {
        "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE"
      },
      "boot": true
    }
  ],
  "networkInterfaces": [
    {
      "network": "https://compute.googleapis.com/compute/v1/projects/PRODUCER_PROJECT_ID/global/networks/PRODUCER_NETWORK",
      "subnetwork": "https://compute.googleapis.com/compute/v1/projects/PRODUCER_PROJECT_ID/regions/SUBNET_REGION/subnetworks/SUBNET"
    },
    {
      "aliasIpRanges": [
        {
          "ipCidrRange": "ALIAS_IP_RANGE"
        }
      ],
      "networkAttachment": "projects/CONSUMER_PROJECT_ID/regions/ATTACHMENT_REGION/networkAttachments/ATTACHMENT_NAME"
    }
  ]
}

Ganti ALIAS_IP_RANGE dengan panjang awalan dalam notasi CIDR—misalnya, /28. Anda dapat menentukan beberapa rentang IP alias dalam daftar aliasIpRanges dalam bentuk berikut:

"aliasIpRanges": [
  {
    "ipCidrRange": "/28"
  },
  {
    "ipCidrRange": "/30"
  }
]

Untuk mengetahui informasi lebih lanjut mengenai pembuatan instance VM, baca Membuat dan memulai instance VM.

Mengizinkan konektivitas SSH

Pastikan aturan firewall dikonfigurasi untuk mengizinkan koneksi SSH masuk ke VM antarmuka Private Service Connect Anda.

Menemukan nama Google Cloud untuk antarmuka Private Service Connect Anda

Untuk mengonfigurasi perutean, Anda perlu mengetahui nama Google Cloud dari antarmuka Private Service Connect Anda.

Konsol

  1. Di konsol Google Cloud, buka VM instances:

    Buka instance VM

  2. Klik nama VM yang memiliki antarmuka Private Service Connect Anda.

  3. Di bagian Network interfaces, temukan dan catat nama antarmuka Private Service Connect Anda, misalnya nic1.

gcloud

  1. Gunakan perintah compute instances describe.

    gcloud compute instances describe VM_NAME
      --zone=ZONE
    

    Ganti kode berikut:

    • VM_NAME: nama VM yang memiliki antarmuka Private Service Connect Anda.
    • ZONE: zona VM.
  2. Dalam output perintah, temukan dan catat nama Google Cloud dari antarmuka Private Service Connect Anda, misalnya nic1.

Menemukan nama OS tamu antarmuka Private Service Connect Anda

Untuk mengonfigurasi perutean, Anda perlu mengetahui nama OS tamu antarmuka Private Service Connect Anda, yang berbeda dengan nama antarmuka di Google Cloud.

Untuk menemukan nama antarmuka di VM Debian, lakukan langkah berikut. Untuk VM dengan sistem operasi lain, baca dokumentasi publik sistem operasi.

  1. Hubungkan ke VM antarmuka Private Service Connect Anda.
  2. Jalankan perintah berikut:

    ip address
    

    Dalam daftar antarmuka jaringan, temukan dan catat nama antarmuka yang terkait dengan alamat IP antarmuka Private Service Connect Anda, misalnya ens5.

Menemukan IP gateway dari antarmuka Private Service Connect Anda

Untuk mengonfigurasi perutean, Anda perlu mengetahui alamat IP gateway default antarmuka Private Service Connect Anda.

  1. Hubungkan ke VM antarmuka Private Service Connect Anda.

  2. Kirim permintaan GET berikut dari VM antarmuka Anda ke server metadata terkait:

    curl http://metadata.google.internal/computeMetadata/v1/instance/network-interfaces/INTERFACE_NUMBER/gateway -H "Metadata-Flavor: Google" && echo
    

    Ganti INTERFACE_NUMBER dengan bagian numerik dari nama Google Cloud untuk antarmuka Private Service Connect Anda. Misalnya, jika nama antarmuka Anda adalah nic1, gunakan nilai 1.

Menambahkan rute untuk subnet konsumen

Anda harus menambahkan rute ke gateway default antarmuka Private Service Connect untuk setiap subnet konsumen yang terhubung ke antarmuka Private Service Connect Anda. Hal ini memastikan traffic yang terikat untuk traffic keluar jaringan konsumen dari antarmuka Private Service Connect.

Langkah-langkah berikut menjelaskan cara mengupdate tabel perutean sementara untuk VM yang menggunakan sistem operasi Debian. Untuk mengupdate tabel secara permanen, atau mengupdate rute pada sistem operasi lain, baca dokumentasi publik sistem operasi.

  1. Hubungkan ke VM antarmuka Private Service Connect Anda.

  2. Jalankan perintah berikut untuk setiap subnet konsumen yang terhubung ke antarmuka Private Service Connect Anda:

    sudo ip route add CONSUMER_SUBNET_RANGE via GATEWAY_IP dev OS_INTERFACE_NAME
    

    Ganti kode berikut:

Membuat template instance dengan antarmuka Private Service Connect

Anda dapat membuat template instance yang menyertakan antarmuka Private Service Connect.

Konsol

  1. Buka halaman Template instance.

    Buka Instance templates

  2. Klik Create instance template.

  3. Masukkan Nama untuk template instance.

  4. Klik Advanced options.

  5. Klik Networking.

  6. Di bagian Network interfaces, klik panah peluas .

  7. Pilih Network dan Subnetwork untuk antarmuka jaringan utama template instance.

  8. Klik Done.

  9. Klik Add a network interface.

  10. Klik Private Service Connect.

  11. Pilih Network dan Subnetwork untuk antarmuka Private Service Connect Anda.

  12. Klik Done.

  13. Klik Create.

gcloud

Gunakan perintah instance-templates create.

gcloud compute instance-templates create NAME \
    --machine-type=MACHINE_TYPE \
    --network-interface=subnet=SUBNET \
    --region=REGION \
    --image-project=IMAGE_PROJECT \
    --image=IMAGE \
    --network-interface=network-attachment=projects/ATTACHMENT_PROJECT_ID/regions/ATTACHMENT_REGION/networkAttachments/ATTACHMENT_NAME

Ganti kode berikut:

  • NAME: nama template instance.
  • MACHINE_TYPE: jenis mesin bawaan atau kustom untuk VM yang dibuat menggunakan template instance ini—misalnya, f1-micro.
  • SUBNET: subnet template instance. Saat Anda membuat VM menggunakan template instance ini, antarmuka jaringan utama VM akan diberi alamat IP internal dari subnet ini.
  • REGION: region subnet template instance.
  • IMAGE_PROJECT: project image. Misalnya, jika Anda menentukan debian-10-buster-v20230809 sebagai gambar, tentukan debian-cloud sebagai project gambar. Anda dapat melihat daftar gambar, project gambar, dan kelompok gambar yang tersedia menggunakan perintah gcloud compute images list.
  • IMAGE: versi image publik tertentu—misalnya, debian-10-buster-v20230809.
  • ATTACHMENT_PROJECT_ID: ID project lampiran jaringan.
  • ATTACHMENT_REGION: region lampiran jaringan.
  • ATTACHMENT_NAME: nama lampiran jaringan. Saat Anda membuat VM menggunakan template instance ini, antarmuka Private Service Connect akan meminta koneksi ke lampiran jaringan ini.

    Anda dapat menentukan konfigurasi tambahan, seperti nama image dan ukuran disk booting. Untuk mengetahui informasi selengkapnya, lihat Membuat template instance baru.

API

Buat permintaan POST ke metode instanceTemplates.insert.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/instanceTemplates
{
  "name": "NAME",
  "properties": {
    "disks": [
      {
        "boot": true,
        "initializeParams": {
          "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE"
        }
      }
    ],
    "machineType": "MACHINE_TYPE",
    "networkInterfaces": [
      {
        "subnetwork": "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/SUBNET_REGION/subnetworks/SUBNET"
      },
      {
        "networkAttachment": "projects/ATTACHMENT_PROJECT_ID/regions/ATTACHMENT_REGION/networkAttachments/NETWORK_ATTACHMENT"
      }
    ]
  }
}

Ganti kode berikut:

  • PROJECT_ID: ID project untuk membuat template instance.
  • NAME: nama template instance.
  • IMAGE_PROJECT: project image. Misalnya, jika Anda menentukan debian-10-buster-v20230809 sebagai gambar, tentukan debian-cloud sebagai project gambar. Anda dapat melihat daftar gambar dan project gambar yang tersedia menggunakan perintah gcloud compute images list.
  • IMAGE: versi image publik tertentu—misalnya, debian-10-buster-v20230809.
  • MACHINE_TYPE: jenis mesin standar atau kustom untuk VM yang dibuat menggunakan template instance ini—misalnya, f1-micro.
  • SUBNET_REGION: region dari subnet template instance.
  • SUBNET: subnet template instance. Saat Anda membuat VM menggunakan template instance ini, antarmuka jaringan utama VM akan diberi alamat IP internal dari subnet ini.
  • ATTACHMENT_PROJECT_ID: ID project lampiran jaringan.
  • ATTACHMENT_REGION: region lampiran jaringan.
  • NETWORK_ATTACHMENT: nama lampiran jaringan. Saat Anda membuat VM menggunakan template instance ini, antarmuka Private Service Connect akan meminta koneksi ke lampiran jaringan ini.

Untuk mengetahui informasi selengkapnya tentang cara membuat template instance, baca Membuat template instance.

Menggunakan antarmuka Private Service Connect dengan Kontrol Layanan VPC

Anda dapat menggunakan antarmuka Private Service Connect dengan Kontrol Layanan VPC. Hal ini memungkinkan jaringan VPC produsen mengakses API dan layanan Google melalui jaringan VPC konsumen, sedangkan organisasi konsumen dapat menerapkan manfaat keamanan dari Kontrol Layanan VPC.

Untuk menggunakan antarmuka Private Service Connect dengan Kontrol Layanan VPC, Anda harus memperbarui tabel perutean pada VM antarmuka Private Service Connect. Ganti rute default dengan rute yang mengirimkan traffic melalui antarmuka Private Service Connect ke gateway default antarmuka Private Service Connect.

Langkah-langkah berikut akan memperbarui tabel perutean untuk sementara untuk VM yang menggunakan Debian. Untuk menambahkan rute secara permanen, atau memperbarui rute untuk sistem operasi lain, baca dokumentasi publik sistem operasi.

Konsol

  1. Di Konsol Google Cloud, buka halaman Instance VM:

    Buka instance VM

  2. Klik nama VM yang memiliki antarmuka Private Service Connect Anda.

  3. Jalankan perintah berikut:

    sudo ip route replace default via GATEWAY_IP dev OS_INTERFACE_NAME
    

    Ganti kode berikut:

Menjelaskan antarmuka Private Service Connect

Anda dapat mendeskripsikan VM untuk melihat detail antarmuka Private Service Connect-nya. Alamat IP antarmuka, rentang IP alias, lampiran jaringan, dan subnet konsumen tercantum di bagian antarmuka jaringan pada deskripsi VM.

Konsol

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

    Buka instance VM

  2. Klik VM yang memiliki antarmuka Private Service Connect Anda.

  3. Di bagian Network interfaces, lihat detail antarmuka Private Service Connect Anda.

gcloud

gcloud compute instances describe VM_NAME
    --zone=ZONE

Ganti kode berikut:

  • VM_NAME: nama VM antarmuka Anda.
  • ZONE: zona VM Anda.

API

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME

Ganti kode berikut:

  • PROJECT_ID: project ID VM.
  • ZONE: zona VM.
  • VM_NAME: nama VM.

Menghapus VM dengan antarmuka Private Service Connect

Untuk menghapus antarmuka Private Service Connect, Anda harus menghapus instance VM yang dilampirkan. Untuk mengetahui informasi selengkapnya, lihat Menghapus instance.

Apa langkah selanjutnya?