Memetakan domain kustom menggunakan Load Balancer Aplikasi eksternal global

Agar dapat menyiapkan endpoint publik baru untuk layanan Cloud Run, Anda dapat menggunakan Cloud Load Balancing untuk menambahkan Load Balancer Aplikasi eksternal global di depan layanan Cloud Run. Dengan Load Balancer Aplikasi eksternal global, Anda dapat mengontrol penyiapan domain kustom, tetapi memerlukan langkah-langkah penyiapan jika Anda belum memiliki sertifikat TLS atau menggunakan Load Balancer Aplikasi eksternal global.

Dengan menggunakan integrasi Cloud Run (Pratinjau) yang dijelaskan di halaman ini, Anda dapat dengan cepat menyiapkan pemetaan domain kustom baru untuk layanan Cloud Run menggunakan Load Balancer Aplikasi eksternal global. Jika Anda ingin menggunakan Load Balancer Aplikasi eksternal global yang sudah ada, lihat menyiapkan Load Balancer Aplikasi eksternal global dengan Cloud Run.

Sebelum memulai

  • Pastikan Anda memiliki akses yang diperlukan guna melakukan perubahan DNS untuk domain yang ingin dipetakan ke layanan Cloud Run.

  • Pastikan layanan Cloud Run yang ingin Anda integrasikan sudah di-deploy.
  • Tinjau halaman harga Load Balancer Aplikasi eksternal global. Anda akan dikenai biaya untuk setiap resource yang digunakan dalam integrasi.

Peran yang diperlukan

Untuk menggunakan integrasi Cloud Run, Anda atau administrator Anda harus memberikan peran IAM pada dua akun utama yang berbeda.

Klik untuk melihat peran yang diperlukan untuk Akun Google Anda

Untuk mendapatkan izin yang diperlukan untuk menggunakan integrasi Cloud Run, minta administrator Anda untuk memberikan peran IAM berikut pada Akun Google Anda pada project Anda:

Klik untuk melihat peran yang diperlukan untuk akun layanan

Untuk men-deploy layanan Cloud Run, Anda dapat menggunakan akun layanan default Compute Engine yang dibuat otomatis, atau menentukan akun layanan yang dikelola pengguna. Akun layanan harus memiliki peran berikut:

Memetakan domain kustom dengan Load Balancer Aplikasi eksternal global

Anda dapat memetakan domain kustom menggunakan konsol atau command line. Perhatikan bahwa mungkin diperlukan waktu hingga satu jam untuk penyediaan sertifikat SSL dan bagi domain Anda untuk mulai merutekan traffic HTTPS ke layanan Cloud Run.

Konsol

  1. Pada konsol Google Cloud, buka halaman Cloud Run.

    Buka Cloud Run

  2. Klik layanan dalam daftar layanan yang ingin Anda gunakan dalam integrasi ini.

  3. Klik tab Integrations.

  4. Klik Tambahkan integrasi.

  5. Klik Custom Domains - Google Cloud load balancing.

    gambar

  6. Masukkan domain di kolom Domain.

  7. Masukkan jalur domain yang Anda gunakan di kolom Jalur.

  8. Masukkan nama layanan yang Anda petakan ke domain kustom ini di kolom Service.

  9. Jika Anda memetakan domain lain, klik Add Item dan ulangi langkah-langkah sebelumnya untuk memetakan domain ke layanan sesuai kebutuhan.

  10. Jika diminta untuk mengaktifkan daftar API, klik Enable dan tunggu hingga API diaktifkan.

  11. Di bagian Resource, catat resource baru yang akan dibuat sebagai hasil dari integrasi ini.

  12. Klik Submit dan tunggu hingga integrasi dan resource dibuat:

    • Setelah selesai, tabel akan dibuat dengan data DNS yang perlu Anda konfigurasi: gunakan data ini untuk memperbarui data DNS di penyedia DNS.
    • Setelah mengupdate DNS di penyedia DNS, diperlukan waktu hingga 45 menit untuk menyediakan sertifikat SSL dan mulai mengarahkan traffic ke layanan Anda.

Command line

  1. Update ke Google Cloud CLI terbaru:

    gcloud components update
    
  2. Buat integrasi:

    gcloud beta run integrations create \
    --type=custom-domains \
    --parameters='set-mapping=DOMAIN:SERVICE' \
    

    Ganti:

    • DOMAIN dengan domain kustom Anda, misalnya example.com atau subdomain.example.com
      • Juga dapat berisi jalur, seperti example.com/subpath/*
    • SERVICE dengan nama layanan Cloud Run Anda.

    Secara opsional, sertakan flag --service-account=SERVICE_ACCOUNT_EMAIL.

    • Ganti SERVICE_ACCOUNT_EMAIL dengan alamat email akun layanan yang dikelola pengguna (PROJECT_NUMBER-compute@developer.gserviceaccount.com) yang digunakan untuk men-deploy layanan. Hapus flag ini jika Anda ingin menggunakan akun layanan komputasi default (SERVICE_ACCOUNT_ID@PROJECT_ID.iam.gserviceaccount.com).

      Untuk terus menggunakan akun layanan yang ditentukan saat men-deploy integrasi Cloud Run, jalankan:

      gcloud config set runapps/deployment-service-account
      
  3. Tunggu sekitar 2 hingga 5 menit, selama waktu tersebut penyeimbang beban yang dikonfigurasi sepenuhnya akan dibuat. Setelah prosesnya selesai, pesan berikut akan ditampilkan:

    [custom-domains] integration [custom-domains] has been created successfully.
    To complete the process, please ensure the following DNS records are configured for the domains:
    NAME    TTL   TYPE  DATA
    DOMAIN  3600  A     IP_ADDRESS
    It can take up to an hour for the SSL certificate to be provisioned.

    Anda dapat memeriksa statusnya menggunakan gcloud beta run integrations describe.

  4. Perbarui data DNS di penyedia DNS dengan nilai IP_ADDRESS yang ditampilkan. Setelah Anda mengupdate DNS di penyedia DNS, diperlukan waktu hingga 45 menit untuk menyediakan sertifikat SSL dan mulai mengarahkan traffic ke layanan Anda.

Memperbarui domain kustom dengan integrasi load balancer

Jika integrasi diperbarui, semua resource Google Cloud yang terkait dengan integrasi tersebut juga akan diperbarui. Untuk memperbarui domain kustom dengan integrasi load balancer dari layanan Cloud Run Anda:

Konsol

  1. Pada konsol Google Cloud, buka halaman Cloud Run.

    Buka Cloud Run

  2. Klik layanan yang ingin Anda update.

  3. Klik tab Integrations.

  4. Temukan domain kustom dengan integrasi load balancer, lalu klik Edit.

  5. Setelah selesai memperbarui kolom, klik Perbarui.

Command line

  1. Gunakan perintah berikut untuk mendapatkan daftar integrasi yang tersedia:

    gcloud beta run integrations list
  2. Jalankan perintah untuk memperbarui integrasi:

    gcloud beta run integrations update INTEGRATION_NAME
    

    Ganti:

    • INTEGRATION_NAME dengan nama domain kustom Anda dengan integrasi load balancer.

    Secara opsional, Anda dapat menggunakan opsi tanda berikut:

    Opsi Deskripsi
    --parameters Domain kustom yang akan ditetapkan untuk layanan.
    --service-account Alamat email akun layanan yang dikelola pengguna yang akan ditentukan saat mengupdate layanan. Akun layanan ini mengganti akun layanan sebelumnya yang digunakan saat deployment.

Menampilkan domain kustom dengan integrasi load balancer

Untuk melihat status domain kustom saat ini dengan integrasi load balancer untuk layanan Cloud Run Anda:

Konsol

  1. Pada konsol Google Cloud, buka halaman Cloud Run.

    Buka Cloud Run

  2. Klik layanan dalam daftar layanan yang ingin Anda gunakan dalam integrasi ini.

  3. Klik tab Integrations.

  4. Temukan domain kustom dengan integrasi load balancer yang Anda inginkan, lalu klik Lihat detail.

Command line

  1. Gunakan perintah berikut untuk mendapatkan daftar integrasi yang tersedia:

    gcloud beta run integrations list
  2. Menggunakan nama dari daftar yang ditampilkan, tampilkan detailnya:

    gcloud beta run integrations describe INTEGRATION_NAME

    Ganti INTEGRATION_NAME dengan nama domain kustom Anda dengan integrasi load balancer.

Menghapus domain kustom dengan integrasi load balancer

Menghapus integrasi juga akan menghapus semua resource Google Cloud yang terkait dengan integrasi tersebut, tetapi tidak akan menghapus layanan Cloud Run Anda.

Untuk menghapus domain kustom dengan integrasi load balancer dari layanan Cloud Run:

Konsol

  1. Pada konsol Google Cloud, buka halaman Cloud Run.

    Buka Cloud Run

  2. Klik layanan yang integrasinya ingin Anda hapus.

  3. Klik tab Integrations.

  4. Temukan domain kustom dengan integrasi load balancer yang Anda inginkan, lalu klik ikon elipsis di sebelah kanan integrasi, lalu klik Delete.

Command line

  1. Gunakan perintah berikut untuk mendapatkan daftar integrasi yang tersedia:

    gcloud beta run integrations list
  2. Dengan menggunakan nama dari daftar yang ditampilkan, hapus integrasi:

    gcloud beta run integrations delete INTEGRATION_NAME
    

    Ganti:

    • INTEGRATION_NAME dengan nama domain kustom Anda dengan integrasi load balancer.

    Secara opsional, Anda dapat menggunakan opsi tanda berikut:

    Opsi Deskripsi
    --service-account Alamat email akun layanan yang dikelola pengguna untuk melakukan operasi penghapusan.

Batasan

Integrasi Cloud Run hanya didukung di region tertentu. Jika Anda perlu menggunakan region yang tidak didukung oleh integrasi Cloud Run, lihat menyiapkan Load Balancer Aplikasi eksternal global dengan Cloud Run.