Menyiapkan project dan resource tenant

Panduan ini menjelaskan cara menggunakan tenant SaaS Runtime untuk mengatur unit yang di-deploy dan cara men-deploy resource ke project tenant terpisah untuk mengisolasi dan mengelola resource Anda.

Untuk mengetahui ringkasan tenant dan project tenant, lihat Tenant dan project tenant.

Sebelum memulai

Sebelum Anda membuat project atau resource tenant:

  1. Buat konfigurasi Terraform, repositori Artifact Registry, dan buat artefak yang berisi aplikasi SaaS di project produser Anda. Lihat men-deploy instance layanan dengan Runtime SaaS untuk mempelajari cara menyiapkan penawaran SaaS.
  2. Aktifkan API yang diperlukan oleh SaaS Runtime.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  3. Pastikan Anda memiliki akun layanan dan peran Identity and Access Management yang diperlukan yang diberikan dalam project produsen. Hal ini mencakup akun layanan yang dibuat pengguna dan izin yang diberikan ke akun service-PROJECT-NUMBER@gcp-sa-saasservicemgmt.iam.gserviceaccount.com di project produsen.

Menyiapkan project tenant

Saat Anda menyediakan resource tenant ke dalam project terpisah, resource, kebijakan IAM, kuota, dan konfigurasi jaringan Anda akan dipisahkan untuk setiap tenant, sehingga mengurangi kemungkinan pelanggaran atau kesalahan konfigurasi pada satu tenant memengaruhi tenant lainnya.

Anda akan memerlukan:

  • satu project produser, dan
  • satu project tenant untuk setiap tenant Anda.

Konsol

Untuk menyiapkan project tenant dan produser menggunakan konsol Google Cloud :

  1. Buat project produsen dan project tenant untuk setiap tenant Anda.
  2. Aktifkan penagihan di project tenant dan produser Anda.
  3. Aktifkan API yang diperlukan oleh SaaS Runtime di project tenant Anda.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  4. Pastikan project tenant Anda memiliki akun layanan aktuasi dengan izin yang diperlukan.

    Untuk mengetahui detailnya, lihat Akun layanan SaaS Runtime.

Anda telah berhasil menyiapkan project tenant dan produser. Setelah membuat dan mengaktifkan penagihan untuk project produsen dan tenant, Anda dapat membuat resource tenant dan mengaitkan unit dengan tenant.

gcloud

Untuk menyiapkan project produsen dan tenant menggunakan Google Cloud CLI:

  1. Buat project produsen dan project tenant untuk setiap tenant Anda:

    gcloud projects create PRODUCER_PROJECT_ID --name="SaaS producer project" [--folder=folder-id]
    gcloud projects create TENANT_PROJECT_ID --name="SaaS tenant A project" [--folder=folder-id]
    

    Ganti:

    • PRODUCER_PROJECT_ID: ID string yang mewakili ID project produsen.
    • TENANT_PROJECT_ID: ID string yang mewakili project ID tenant.
  2. Aktifkan penagihan untuk project tenant dan produser Anda:

     gcloud beta billing projects link PRODUCER_PROJECT_ID --billing-account=BILLING_ACCOUNT_ID
     gcloud beta billing projects link TENANT_PROJECT_ID --billing-account=BILLING_ACCOUNT_ID
    

    Ganti:

    • PRODUCER_PROJECT_ID: ID string yang mewakili ID project produsen.
    • TENANT_PROJECT_ID: ID string yang mewakili project ID tenant.
    • BILLING_ACCOUNT_ID: ID akun penagihan yang ingin Anda kaitkan dengan project tertentu.
  3. Beri akun layanan aktuasi peran Identity and Access Management yang diperlukan untuk setiap project tenant:

     gcloud projects add-iam-policy-binding TENANT_PROJECT_ID \
     --member='serviceAccount:SERVICE_ACCOUNT@PRODUCER_PROJECT_ID.iam.gserviceaccount.com' \
     --role=ROLE
    

    Ganti:

    • TENANT_PROJECT_ID: ID string yang mewakili project ID tenant.
    • PRODUCER_PROJECT_ID: ID string yang mewakili ID project produsen.
    • SERVICE_ACCOUNT: Akun layanan yang ingin Anda beri peran dalam project yang ditentukan.
    • ROLE: Peran Identity and Access Management yang akan diberikan.

      Anda harus menjalankan gcloud projects add-iam-policy-binding untuk setiap peran yang ingin Anda berikan ke akun layanan tertentu (--role='roles/compute.admin', misalnya).

Anda telah berhasil menyiapkan project tenant dan produser. Setelah membuat dan mengaktifkan penagihan untuk project produsen dan tenant, Anda dapat membuat resource tenant dan mengaitkan unit dengan tenant.

Membuat resource tenant

Buat resource tenant di penawaran SaaS Anda untuk merepresentasikan pelanggan Anda:

  1. Di konsol Google Cloud , buka SaaS Runtime > Tenants.

    Buka Tenant

  2. Klik Create.

  3. Di kotak Tenant name, masukkan nama untuk resource tenant Anda.

  4. Opsional: Di kotak Customer resource, berikan resource konsumen dengan setelan yang ditentukan konsumen untuk integrasi.

  5. Di kotak Penawaran SaaS, pilih penawaran SaaS yang ingin Anda kaitkan dengan tenant Anda.

  6. Di drop-down Region, pilih region tempat metadata tenant akan disimpan.

  7. Opsional: Klik Tambahkan label untuk menambahkan label pasangan nilai kunci ke tenant Anda.

  8. Klik Create untuk membuat resource tenant.

Anda telah berhasil membuat resource tenant.

Mengaitkan unit dengan penyewa

Setelah membuat tenant dan men-deploy unit, Anda dapat menautkannya satu sama lain. Asosiasi ini terutama berfungsi sebagai tag organisasi yang membantu Anda mengatur unit mana yang termasuk dalam tenant mana.

Untuk mengetahui informasi selengkapnya tentang men-deploy unit, lihat Men-deploy VM dengan SaaS Runtime.

Untuk mengaitkan unit dengan penyewa:

  1. Di konsol Google Cloud , buka SaaS Runtime > Tenants.

    Buka Tenant

  2. Klik nama penyewa yang ingin Anda kaitkan dengan unit.

  3. Klik Edit.

  4. Di bagian Unit terkait, klik Tambahkan Unit.

  5. Pilih unit yang ingin Anda kaitkan dengan penyewa ini.

  6. Klik Done.

  7. Klik Simpan.

Unit yang dipilih dikaitkan dengan tenant yang ditunjukkan.

Menyediakan unit baru dengan variabel project tenant

Saat menyediakan unit yang terkait dengan tenant, Anda harus memberikan variabel tenant_project_id.

  1. Buka SaaS Runtime > Units di konsol Google Cloud .

    Buka Unit

  2. Buat unit baru yang terkait dengan jenis unit Anda.

  3. Klik Provision.

  4. Pilih Rilis yang akan disediakan untuk unit tenant Anda.

  5. Pilih akun layanan Actuation yang Anda beri izin di project tenant. Anda harus mengikuti prinsip hak istimewa terendah dan hanya memberikan peran yang diperlukan untuk resource yang dikelola.

  6. Di bagian Variabel Input:

    1. Pastikan variabel tenant_project_id tercantum seperti yang Anda tentukan di file variables.tf konfigurasi Terraform Anda.
    2. Di kotak Tenant Project ID, berikan nama project tenant Anda.
    3. Memberikan variabel input yang ditentukan dalam konfigurasi Terraform Anda. Jika Anda belum menentukan variabel lain dalam konfigurasi Terraform, lewati langkah ini.
  7. Klik Provision.

Runtime SaaS memicu Infrastructure Manager menggunakan akun layanan penggerak yang ditentukan. Infrastructure Manager membaca variabel tenant_project_id dan membuat VM di dalam project tenant tersebut.

Menyediakan ulang unit dengan rilis baru

Saat mem-provision ulang unit yang ada dengan rilis baru, Anda harus memberikan variabel tenant_project_id.

  1. Buka SaaS Runtime > Units di konsol Google Cloud .

    Buka Unit

  2. Pilih unit yang terkait dengan jenis unit Anda.

  3. Klik Edit Provisioning.

  4. Pilih Rilis yang Anda buat dengan konfigurasi Terraform yang diperbarui.

  5. Pilih akun layanan Actuation yang Anda beri izin di project tenant. Anda harus mengikuti prinsip hak istimewa terendah dan hanya memberikan peran yang diperlukan untuk resource yang dikelola.

  6. Di bagian Variabel Input:

    1. Pastikan variabel tenant_project_id tercantum seperti yang Anda tentukan di file variables.tf konfigurasi Terraform Anda.
    2. Di kotak Tenant Project ID, berikan nama project tenant Anda.
    3. Memberikan variabel input yang ditentukan dalam konfigurasi Terraform Anda. Jika Anda belum menentukan variabel lain dalam konfigurasi Terraform, lewati langkah ini.
  7. Klik Update.

Runtime SaaS memicu Infrastructure Manager menggunakan akun layanan penggerak yang ditentukan. Infrastructure Manager membaca variabel tenant_project_id dan membuat VM di dalam project tenant tersebut.

Langkah berikutnya