Membuat aplikasi App Hub menggunakan satu project


Tutorial ini menunjukkan cara menyiapkan aplikasi App Hub dalam satu project. Di project host App Hub yang berfungsi sebagai project layanan, Anda men-deploy grup instance terkelola (MIG) yang diseimbangkan beban. Kemudian, dalam aplikasi di project host App Hub, Anda mendaftarkan dan memantau semua resource infrastruktur dari project layanan sebagai layanan dan workload App Hub.

Tutorial ini ditujukan untuk orang yang menyiapkan dan mengelola App Hub. Anda harus memiliki pengalaman dengan Cloud Load Balancing.

Tujuan

Tutorial ini menunjukkan kepada Anda cara menyelesaikan tugas-tugas berikut:

  1. Membuat atau memilih project Google Cloud. Project ini adalah project host App Hub Anda.
  2. Pada project host, gunakan Terraform untuk men-deploy jaringan VPC, Load Balancer Aplikasi eksternal regional, dan backend MIG untuk load balancer. Load Balancer Aplikasi eksternal regional mencakup resource berikut:

    • Health check HTTP
    • Aturan penerusan
    • Peta URL
    • Proxy target
    • Layanan backend dengan grup instance terkelola sebagai backend
    • Sertifikat SSL (untuk HTTPS)

    Hanya aturan penerusan, peta URL, layanan backend, dan MIG yang tersedia sebagai resource yang ditemukan di App Hub. Untuk mengetahui informasi selengkapnya, lihat konsep dan model data.

  3. Berikan peran dan izin yang sesuai ke project host.

  4. Lampirkan project host App Hub sebagai project layanan.

  5. Buat aplikasi di project host App Hub.

  6. Temukan resource infrastruktur sebagai layanan dan beban kerja App Hub.

  7. Daftarkan layanan dan beban kerja dari project layanan di aplikasi dan tetapkan atribut.

  8. Lihat detail layanan dan beban kerja terdaftar di App Hub.

Biaya

Untuk mengetahui perkiraan biaya resource Google Cloud yang digunakan oleh solusi VM terkelola yang di-load balanced, lihat perkiraan yang telah dihitung sebelumnya di Kalkulator Harga Google Cloud.

Gunakan perkiraan biaya tersebut sebagai titik awal untuk menghitung biaya deployment Anda. Anda dapat mengubah perkiraan biaya untuk mencerminkan setiap perubahan konfigurasi yang Anda rencanakan untuk memastikan resource yang digunakan dalam solusi.

Perkiraan yang telah dihitung sebelumnya didasarkan pada asumsi untuk faktor-faktor tertentu, termasuk hal-hal berikut:

  • Lokasi Google Cloud tempat resource di-deploy.
  • Durasi waktu resource tersebut digunakan.

Untuk mengetahui informasi selengkapnya tentang biaya App Hub, lihat halaman Harga.

Sebelum memulai

Jika Anda adalah project creator, Anda diberi peran Pemilik dasar (roles/owner). Secara default, peran Identity and Access Management (IAM) ini mencakup izin yang diperlukan untuk akses penuh ke sebagian besar resource Google Cloud.

Jika Anda bukan project creator, izin yang diperlukan harus diberikan pada project kepada akun utama yang sesuai. Misalnya, akun utama dapat berupa Akun Google (untuk pengguna akhir) atau akun layanan (untuk aplikasi dan workload).

Untuk mendapatkan izin yang Anda perlukan untuk menyelesaikan tutorial ini, minta administrator untuk memberi Anda peran IAM berikut di project Anda:

Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.

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

Konsol

  1. Di konsol Google Cloud, buka halaman Pemilih project.

    Buka pemilih project

  2. Pilih atau buat project Google Cloud, sebagai project host App Hub Anda.

  3. Aktifkan API yang diperlukan.

    Mengaktifkan API

gcloud

  1. Di konsol Google Cloud, aktifkan Cloud Shell.

    Aktifkan Cloud Shell

    Di bagian bawah Google Cloud Console, Cloud Shell sesi akan terbuka dan menampilkan perintah command line. Cloud Shell adalah lingkungan shell dengan Google Cloud CLI yang sudah terinstal, dan dengan nilai yang sudah ditetapkan untuk project Anda saat ini. Diperlukan waktu beberapa detik untuk melakukan inisialisasi sesi.

  2. Pastikan Google Cloud CLI versi terbaru telah diinstal. Jalankan perintah berikut dari Cloud Shell:

      gcloud components update

  3. Buat atau pilih project baru, HOST_PROJECT_ID, untuk menjadi project host App Hub.

    • Membuat project Google Cloud:

      gcloud projects create HOST_PROJECT_ID
    • Pilih project Google Cloud yang Anda buat:

      gcloud config set project HOST_PROJECT_ID
  4. Aktifkan API:

    gcloud services enable apphub.googleapis.com \
       cloudresourcemanager.googleapis.com \
       compute.googleapis.com \
       config.googleapis.com \
       serviceusage.googleapis.com

Mempersiapkan lingkungan

Untuk membantu Anda men-deploy solusi ini dengan upaya minimal, konfigurasi Terraform disediakan di GitHub. Konfigurasi Terraform menentukan semua resource Google Cloud yang diperlukan untuk solusi. Download konfigurasi Terraform dari GitHub, sesuaikan kode secara opsional sesuai kebutuhan, lalu deploy solusi menggunakan Terraform CLI. Setelah men-deploy solusi, Anda dapat terus menggunakan Terraform untuk mengelola solusi tersebut.

Beban kerja dan layanan App Hub dengan load balancer dan grup instance terkelola.
Gambar 1. Beban kerja dan layanan App Hub dengan load balancer dan grup instance terkelola.

Berikut adalah alur pemrosesan permintaan topologi yang di-deploy oleh solusi VM terkelola dengan load balancing.

  1. Pengguna membuat permintaan ke aplikasi, yang di-deploy di Compute Engine. Cloud Load Balancing menerima permintaan ini.

  2. Cloud Load Balancing merutekan traffic ke grup instance terkelola Compute Engine, menggunakan informasi dalam aturan penerusan, peta URL, dan layanan backend.

Menyiapkan klien Terraform

Anda dapat menjalankan Terraform baik di Cloud Shell maupun host lokal Anda. Tutorial ini menjelaskan cara menjalankan Terraform di Cloud Shell, yang telah menginstal Terraform di Cloud Shell dan dikonfigurasi untuk diautentikasi dengan Google Cloud.

Kode Terraform untuk solusi ini tersedia di repositori GitHub.

  1. Di Cloud Shell, clone repositori GitHub ke Cloud Shell.

    git clone https://github.com/terraform-google-modules/terraform-docs-samples
    
  2. Dalam Cloud Shell, periksa apakah direktori yang sedang bekerja adalah terraform-docs-samples/lb/regional_external_http_load_balancer. Ini merupakan direktori yang berisi file konfigurasi Terraform untuk solusi. Jika Anda perlu mengubah ke direktori tersebut, jalankan perintah berikut:

    cd terraform-docs-samples/lb/regional_external_http_load_balancer 
    
  3. Lakukan inisialisasi Terraform dengan menjalankan perintah berikut:

    terraform init
    

    Tunggu hingga Anda melihat pesan berikut:

    Terraform has been successfully initialized!
    

Memvalidasi dan meninjau konfigurasi Terraform

  1. Pastikan direktori yang sedang bekerja adalah terraform-docs-samples/lb/regional_external_http_load_balancer. Jika bukan, buka direktori tersebut.

  2. Pastikan konfigurasi Terraform tidak terdapat error:

    terraform validate
    

    Jika perintah menunjukkan error, lakukan perbaikan yang diperlukan dalam konfigurasi kemudian jalankan kembali perintahterraform validate. Ulangi langkah ini hingga perintah menunjukkan pesan berikut:

    Success! The configuration is valid.
    
  3. Tinjau resource yang ditentukan dalam konfigurasi:

    terraform plan
    

    Output perintah terraform plan adalah daftar resource yang disediakan Terraform ketika Anda menerapkan konfigurasi.

    Jika Anda ingin melakukan perubahan, edit konfigurasi, kemudian jalankan kembali perintah terraform validate dan terraform plan.

Menyediakan resource

Jika tidak ada perubahan lebih lanjut yang diperlukan dalam konfigurasi Terraform, deploy resource.

  1. Pastikan direktori yang sedang bekerja adalah terraform-docs-samples/lb/regional_external_http_load_balancer. Jika bukan, buka direktori tersebut.

  2. Terapkan konfigurasi Terraform:

    terraform apply
    

    Terraform menampilkan daftar resource yang akan dibuat.

  3. Ketika Anda diminta untuk melakukan tindakan, masukkan yes.

    Terraform menampilkan pesan yang menunjukkan progres deployment.

    Jika deployment tidak dapat diselesaikan, Terraform akan menampilkan error yang menyebabkan kegagalan. Tinjau pesan error dan update konfigurasi untuk memperbaiki error. Kemudian jalankan kembali perintah terraform apply.

    Setelah semua resource dibuat, Terraform akan menampilkan pesan berikut:

    Apply complete!
    

Tunggu hingga Terraform menampilkan pesan "Apply complete!".

Cloud Load Balancing mendistribusikan traffic ke aturan pengalihan, peta URL, layanan backend, dan MIG Compute Engine. Layanan backend, peta URL, dan aturan penerusan menjadi layanan yang ditemukan di project host App Hub. Compute Engine MIG menjadi workload yang ditemukan di project host App Hub.

Ketika Anda tidak lagi memerlukan solusi tersebut, Anda dapat menghapus deployment untuk menghindari penagihan berkelanjutan untuk resource Google Cloud tersebut. Untuk informasi selengkapnya, lihat Menghapus deployment.

Memberikan izin IAM

Berikan peran dan izin IAM yang sesuai ke project host App Hub.

Konsol

  1. Untuk mendapatkan izin yang Anda perlukan untuk menyelesaikan tutorial ini, minta administrator untuk memberi Anda peran IAM yang diperlukan di project Anda:

    1. Di konsol Google Cloud, buka halaman IAM.

      Buka IAM

    2. Klik Berikan akses. Panel Berikan akses akan terbuka.

    3. Di kolom New principals, masukkan alamat email individu yang akan mengelola App Hub, yaitu peran App Hub Admin di project host.

    4. Klik Pilih peran dan di kolom Filter, masukkan App Hub.

    5. Pilih peran App Hub Admin.

    6. Klik Add another role, lalu dari daftar Select a role, pilih Monitoring Viewer.

    7. Klik Simpan.

gcloud

  1. Untuk memberikan peran kepada individu yang akan menggunakan App Hub, ulangi perintah berikut dengan mengganti peran IAM, sesuai kebutuhan. Untuk mengetahui informasi selengkapnya, lihat Peran dan izin App Hub.

    gcloud projects add-iam-policy-binding HOST_PROJECT_ID \
        --member='user:HOST_PROJECT_ADMIN' \
        --role='roles/apphub.admin'

    Ganti HOST_PROJECT_ADMIN dengan pengguna yang memiliki peran Admin App Hub di project host. Nilai ini memiliki format username@yourdomain, misalnya, 222larabrown@gmail.com.

  2. Berikan peran App Hub Admin di project layanan kepada individu yang mengelola App Hub. Mereka harus memiliki peran Admin App Hub untuk menambahkan project layanan ke project host. Anda memerlukan minimal satu orang dengan peran ini untuk setiap project layanan. Dalam contoh ini, project host bertindak sebagai project layanan.

    gcloud projects add-iam-policy-binding SERVICE_PROJECT_ID \
       --member='user:HOST_PROJECT_ADMIN' \
       --role='roles/apphub.admin'

    Ganti SERVICE_PROJECT_ID dengan nama HOST_PROJECT_ID.

  3. Berikan peran Monitoring Viewer di project host kepada individu yang mengelola App Hub. Mereka harus memiliki peran Monitoring Viewer di project host untuk melihat metrik.

    gcloud projects add-iam-policy-binding SERVICE_PROJECT_ID \
       --member='user:HOST_PROJECT_ADMIN' \
       --role='roles/monitoring.viewer'

Memasang project layanan

Lampirkan project host tempat Anda men-deploy resource sebagai project layanan.

Konsol

  1. Di konsol Google Cloud, buka halaman Setelan App Hub.

    Buka Setelan

  2. Di halaman Settings, klik Attach projects.

  3. Di panel yang terbuka, telusuri project dari daftar yang ditampilkan dan pilih kotak centang untuk project layanan App Hub.

  4. Klik Pilih. Tabel Project Layanan Terlampir menampilkan project host yang dipilih sebagai project layanan.

  5. Klik Close.

gcloud

Tambahkan project host Anda sebagai project layanan ke project host App Hub.

gcloud apphub service-projects add HOST_PROJECT_ID \
  --project=HOST_PROJECT_ID

Membuat aplikasi

Buat aplikasi untuk menjadi penampung layanan dan beban kerja Anda.

Konsol

  1. Pastikan Anda berada di project host App Hub.
  2. Di konsol Google Cloud, buka halaman Aplikasi App Hub.

    Buka Applications

  3. Klik Create application.

  4. Di halaman Create application, di panel Choose application region and name, pilih Regional.

  5. Dalam daftar Region, pilih us-west1.

  6. Di kolom Application name, masukkan tutorial-application.

  7. Masukkan Nama tampilan, Tutorial, lalu klik Lanjutkan.

  8. Di panel Tambahkan atribut, dari daftar Kritisitas, pilih Tinggi. Kritisitas menunjukkan seberapa penting aplikasi, layanan, atau beban kerja bagi operasi bisnis Anda.

  9. Di kolom Environment, untuk menunjukkan tahap siklus proses software, pilih Production.

  10. Klik Lanjutkan.

  11. Di panel Tambahkan pemilik, tambahkan detail berikut untuk Pemilik Developer, Pemilik Operator, dan Pemilik Bisnis. Perhatikan bahwa Anda harus memasukkan alamat email pemilik jika menambahkan nama tampilan.

    1. Masukkan nama tampilan pemilik.
    2. Masukkan alamat email pemilik. Nilai ini harus memiliki format username@yourdomain, misalnya, 222larabrown@gmail.com.
  12. Ulangi langkah-langkah ini untuk setiap developer, operator, dan pemilik bisnis.

  13. Klik Create.

Aplikasi baru akan dibuat dan tercantum di halaman Applications.

gcloud

  1. Pilih project host App Hub yang Anda buat:

    gcloud config set project HOST_PROJECT_ID
  2. Buat aplikasi baru bernama tutorial-application di region us-west1, lalu beri nama tampilan Tutorial:

    gcloud apphub applications create tutorial-application \
        --display-name='Tutorial' \
        --scope-type=REGIONAL \
        --project=HOST_PROJECT_ID \
        --location=us-west1
    
  3. Cantumkan aplikasi di project host App Hub Anda:

    gcloud apphub applications list \
        --project=HOST_PROJECT_ID \
        --location=us-west1
    

    Anda akan melihat output yang mirip dengan berikut ini:

    ID                    DISPLAY_NAME  CREATE_TIME
    tutorial-application  Tutorial      2023-10-31T18:33:48
    
  4. Perbarui aplikasi Anda dengan atribut criticality-type, environment-type, dan pemilik:

    gcloud apphub applications update tutorial-application \
      --criticality-type='HIGH' \
      --environment-type='PRODUCTION' \
      --developer-owners=display-name=DISPLAY-NAME-DEVELOPER,email=EMAIL-DEVELOPER \
      --operator-owners=display-name=DISPLAY-NAME-OPERATOR,email=EMAIL-OPERATOR \
      --business-owners=display-name=DISPLAY-NAME-BUSINESS,email=EMAIL-BUSINESS \
      --project=HOST_PROJECT_ID \
      --location=us-west1
    

    Ganti kode berikut:

    • DISPLAY-NAME-DEVELOPER, DISPLAY-NAME-OPERATOR, dan DISPLAY-NAME-BUSINESS: masing-masing nama tampilan developer, operator, dan pemilik bisnis.
    • EMAIL-NAME-DEVELOPER, EMAIL-NAME-OPERATOR, dan EMAIL-NAME-BUSINESS: alamat email developer, operator, dan pemilik bisnis. Nilai ini harus memiliki format username@yourdomain, misalnya, 222larabrown@gmail.com.

    Catatan:

    • criticality-type: menunjukkan seberapa penting aplikasi, layanan, atau beban kerja bagi operasi bisnis Anda.
    • environment-type: menunjukkan tahap siklus proses software.
  5. Dapatkan detail untuk aplikasi yang Anda buat:

    gcloud apphub applications describe tutorial-application \
      --project=HOST_PROJECT_ID \
      --location=us-west1
    

    Perintah ini menampilkan informasi dalam format YAML, mirip dengan berikut ini:

    attributes:
    businessOwners:
    – displayName: [DISPLAY-NAME-BUSINESS]
      email: [EMAIL-BUSINESS]
    criticality:
      type: HIGH
    developerOwners:
    – displayName: [DISPLAY-NAME-DEVELOPER]
      email: [EMAIL-DEVELOPER]
    environment:
      type: PRODUCTION
    operatorOwners:
    – displayName: [DISPLAY-NAME-OPERATOR]
      email: [EMAIL-OPERATOR]
    createTime: '2023-10-31T18:33:48.199394108Z'
    displayName: Tutorial
    name: projects/HOST_PROJECT_ID/locations/us-west1/applications/tutorial-application
    scope:
      type: REGIONAL
    state: ACTIVE
    uid: 9d991a9d-5d8a-4c0d-b5fd-85e39fb58c73
    updateTime: '2023-10-31T18:33:48.343303819Z'
    

Mendaftarkan layanan dan workload

Mendaftarkan layanan dan beban kerja akan menambahkannya ke aplikasi.

Konsol

  1. Di konsol Google Cloud, buka halaman Aplikasi App Hub.

    Buka Applications

  2. Klik nama aplikasi Anda, Tutorial. Tab Layanan dan beban kerja ditampilkan dengan daftar layanan dan beban kerja terdaftar yang ada di project layanan App Hub Anda.

  3. Daftarkan layanan:

    1. Di tab Layanan dan beban kerja, klik Daftarkan layanan/beban kerja.
    2. Di halaman Register service or workload, di panel Select resource, klik Browse untuk memilih layanan atau workload sebagai Resource.
    3. Di panel Select resource, pilih Name layanan, l7-xlb-backend-service, lalu klik Select.
    4. Di panel Select resource, masukkan Name resource, tutorial-service-backend.
    5. Masukkan Nama tampilan, Backend service, lalu klik Lanjutkan.
    6. Di panel Tambahkan atribut, dalam daftar Kritisitas, untuk menunjukkan tingkat kepentingan aplikasi, pilih Tinggi.
    7. Di kolom Environment, untuk menunjukkan tahap siklus proses software, pilih Production.
    8. Klik Lanjutkan.
    9. Di panel Tambahkan pemilik, tambahkan detail berikut sesuai kebutuhan untuk Pemilik Developer, Pemilik Operator, dan Pemilik Bisnis. Perhatikan bahwa Anda harus memasukkan alamat email pemilik jika menambahkan nama tampilan.
      1. Masukkan nama tampilan pemilik.
      2. Masukkan alamat email pemilik. Nilai ini harus memiliki format username@yourdomain, misalnya, 222larabrown@gmail.com.
    10. Ulangi langkah-langkah ini untuk setiap developer, operator, dan pemilik bisnis.
    11. Klik Daftar.

    Di tab Layanan dan beban kerja, di bagian Layanan dan beban kerja terdaftar, Anda dapat melihat layanan baru yang ditambahkan.

  4. Ulangi langkah-langkah sebelumnya untuk mendaftarkan layanan lainnya sebagai tutorial-service-forwarding-rule dan tutorial-service-url-map, masing-masing.

  5. Daftarkan beban kerja dengan mengulangi langkah-langkah sebelumnya untuk mendaftarkan layanan dengan pengecualian berikut:

    1. Di panel Register service or workload, di bagian Choose service or workload, pilih Name beban kerja, l7-xlb-backend-example, lalu klik Continue.
    2. Di panel Select resource, masukkan Name resource, tutorial-workload-mig.
    3. Masukkan Nama tampilan, Workload instance group, lalu klik Lanjutkan. Di tab Layanan dan beban kerja, di bagian Layanan dan beban kerja terdaftar, Anda dapat melihat beban kerja baru yang ditambahkan.

gcloud

  1. Tambahkan individu dengan izin Editor App Hub:

    gcloud projects add-iam-policy-binding HOST_PROJECT_ID \
      --member='user:APP_HUB_EDITOR' \
      --role='roles/apphub.editor'
    

    Ganti APP_HUB_EDITOR dengan pengguna yang memiliki peran Editor App Hub di project host App Hub. Nilai ini memiliki format username@yourdomain, misalnya, 222larabrown@gmail.com.

  2. Mencantumkan semua layanan yang ditemukan di project host App Hub. Perintah ini menampilkan layanan yang tersedia untuk didaftarkan ke aplikasi.

    gcloud apphub discovered-services list \
        --project=HOST_PROJECT_ID \
        --location=us-west1
    

    Anda akan melihat output yang mirip dengan berikut ini:

    ID                             SERVICE_REFERENCE                                                                                                              SERVICE_PROPERTIES
    BACKEND_SERVICE_ID          {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_NUMBER]/regions/us-west1/backendServices/l7-xlb-backend-service'}  {'gcpProject': 'projects/SERVICE_PROJECT_ID', 'location': 'us-west1'}
    FORWARDING_RULE_SERVICE_ID" {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_NUMBER]/regions/us-west1/forwardingRules/l7-xlb-forwarding-rule'}  {'gcpProject': 'projects/SERVICE_PROJECT_ID', 'location': 'us-west1'}
    URL_MAP_SERVICE_ID          {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_NUMBER]/regions/us-west1/urlMaps/regional-l7-xlb-map'}             {'gcpProject': 'projects/SERVICE_PROJECT_ID', 'location': 'us-west1'}
    

    Salin ID layanan, misalnya, BACKEND_SERVICE_SP2_ID dari output yang akan digunakan di langkah berikutnya.

  3. Daftarkan layanan dari langkah sebelumnya ke aplikasi Anda. Salin ID layanan dari kolom output di langkah sebelumnya.

    gcloud apphub applications services create tutorial-service-backend \
        --discovered-service='projects/HOST_PROJECT_ID/locations/us-west1/discoveredServices/BACKEND_SERVICE_ID' \
        --display-name='Backend service' \
        --criticality-type='HIGH' \
        --environment-type='PRODUCTION' \
        --application=tutorial-application \
        --project=HOST_PROJECT_ID \
        --location=us-west1
    
    gcloud apphub applications services create tutorial-service-forwarding-rule \
        --discovered-service='projects/HOST_PROJECT_ID/locations/us-west1/discoveredServices/FORWARDING_RULE_SERVICE_ID' \
        --display-name='Forwarding rule' \
        --criticality-type='HIGH' \
        --environment-type='PRODUCTION' \
        --application=tutorial-application \
        --project=HOST_PROJECT_ID \
        --location=us-west1
    
    gcloud apphub applications services create tutorial-service-url-map \
        --discovered-service='projects/HOST_PROJECT_ID/locations/us-west1/discoveredServices/URL_MAP_SERVICE_ID' \
        --display-name='URL map' \
        --criticality-type='HIGH' \
        --environment-type='PRODUCTION' \
        --application=tutorial-application \
        --project=HOST_PROJECT_ID \
        --location=us-west1
    

    Ganti kode berikut:

    • BACKEND_SERVICE_ID: layanan ID dari layanan backend yang ingin Anda daftarkan.
    • FORWARDING_RULE_SERVICE_ID: layanan ID dari aturan penerusan yang ingin Anda daftarkan.
    • URL_MAP_SERVICE_ID: ID layanan peta URL yang ingin Anda daftarkan.
  4. Mencantumkan semua layanan terdaftar dalam aplikasi.

    gcloud apphub applications services list \
        --application=tutorial-application \
        --project=HOST_PROJECT_ID \
        --location=us-west1
    

    Anda akan melihat output yang mirip dengan berikut ini:

    ID                               DISPLAY_NAME      SERVICE_REFERENCE                                                                                                              CREATE_TIME
    tutorial-service-backend         Backend service   {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_NUMBER]/regions/us-west1/backendServices/l7-xlb-backend-service'}  2024-02-13T00:31:45
    tutorial-service-forwarding-rule Forwarding rule   {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_NUMBER]/regions/us-west1/forwardingRules/l7-xlb-forwarding-rule'}  2024-02-13T00:31:45
    tutorial-service-url-map         URL map           {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_NUMBER]/regions/us-west1/urlMaps/regional-l7-xlb-map'}             2024-02-13T00:31:45
    

    Layanan yang terdaftar, tetapi terpisah ditunjukkan dengan nilai kosong di kolom SERVICE_REFERENCE. Untuk mengetahui informasi selengkapnya tentang status pendaftaran, lihat properti dan atribut App Hub.

  5. Mencantumkan semua beban kerja yang ditemukan di project host App Hub. Perintah ini menampilkan workload yang tersedia untuk didaftarkan ke aplikasi.

    gcloud apphub discovered-workloads list \
        --project=HOST_PROJECT_ID \
        --location=us-west1
    

    Anda akan melihat output yang mirip dengan berikut ini:

    ID                            WORKLOAD_REFERENCE                                                                                                            WORKLOAD_PROPERTIES
    INSTANCE_GROUP_ID          {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_NUMBER]/zones/us-west1-a/instanceGroups/l7-xlb-backend-example'}  {'gcpProject': 'projects/SERVICE_PROJECT_ID', 'location': 'us-west1', 'zone': 'us-west1-a'}
    

    Salin ID beban kerja dari output untuk digunakan di langkah berikutnya.

  6. Daftarkan workload dari langkah sebelumnya ke aplikasi Anda sebagai tutorial-workload-mig. Salin ID beban kerja dari kolom output di langkah sebelumnya.

    gcloud apphub applications workloads create tutorial-workload-mig \
        --discovered-workload='projects/HOST_PROJECT_ID/locations/us-west1/discoveredWorkloads/WORKLOAD_ID' \
        --display-name='Workload instance group' \
        --application=tutorial-application \
        --project=HOST_PROJECT_ID \
        --location=us-west1
    

    Ganti WORKLOAD_ID dengan ID beban kerja yang ingin Anda daftarkan.

  7. Mencantumkan semua workload terdaftar dalam aplikasi.

    gcloud apphub applications workloads list \
        --application=tutorial-application \
        --project=HOST_PROJECT_ID \
        --location=us-west1
    

    Anda akan melihat output yang mirip dengan berikut ini:

    ID                        DISPLAY_NAME              WORKLOAD_REFERENCE                                                                                                            CREATE_TIME
    tutorial-workload-mig     Workload instance group   {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_NUMBER]/zones/us-west1-a/instanceGroups/l7-xlb-backend-example'}  2024-02-13T00:31:45
    

    Workload yang terdaftar, tetapi terpisah ditandai dengan nilai kosong di kolom WORKLOAD_REFERENCE. Untuk mengetahui informasi selengkapnya tentang status pendaftaran, lihat properti dan atribut App Hub.

Melihat semua layanan dan beban kerja

Anda dapat melihat detail layanan dan beban kerja dari project layanan yang disertakan ke project host App Hub.

  1. Di konsol Google Cloud, buka halaman Layanan dan Beban Kerja App Hub.

    Buka Layanan dan Workload

    Semua layanan dan beban kerja dari project layanan App Hub yang terpasang akan ditampilkan.

  2. Dalam daftar Region, pilih us-west1. Workload Grup instance workload ditampilkan dengan detail seperti Jenis App Hub, Kritisitas, dan Terdaftar ke.

  3. Untuk memfilter layanan atau beban kerja berdasarkan statusnya:

    1. Di kolom Filter, pilih filter seperti Status pendaftaran.
    2. Klik Terdaftar. Daftar layanan dan beban kerja yang terdaftar ke aplikasi akan muncul.

Melihat metrik aplikasi

Anda dapat melihat metrik sistem untuk aplikasi yang dibuat di project host App Hub. Metrik ini sesuai dengan sinyal emas - traffic, error, latensi, dan saturasi yang membantu memantau performa dan kondisi aplikasi.

  1. Di konsol Google Cloud, buka halaman Aplikasi App Hub.

    Buka Applications

  2. Klik nama aplikasi, Tutorial.

    Tab Layanan dan beban kerja ditampilkan dengan metadata layanan dan beban kerja yang terdaftar ke aplikasi Anda.

  3. Untuk melihat metrik sistem layanan dan beban kerja terdaftar, klik Metrics.

Pembersihan

Agar tidak perlu membayar biaya pada akun Google Cloud Anda untuk resource yang digunakan dalam tutorial ini, hapus project yang berisi resource tersebut, atau simpan project dan hapus setiap resource.

Menghapus resource App Hub

Konsol

  1. Di konsol Google Cloud, buka halaman Aplikasi App Hub.

    Buka Applications

  2. Klik nama aplikasi, Tutorial.

  3. Pada tab Layanan dan beban kerja, dari bagian Layanan dan beban kerja terdaftar, klik nama layanan.

  4. Di halaman Layanan dan Beban Kerja, klik Batalkan pendaftaran.

    Notifikasi akan memberi tahu bahwa layanan tidak terdaftar.

  5. Pada tab Services and workloads, dari bagian Registered services and workloads, klik nama workload.

  6. Di tab Details, klik Unregister.

    Notifikasi akan memberi tahu bahwa beban kerja tidak terdaftar.

  7. Buka halaman Aplikasi App Hub.

    Buka Applications

  8. Klik nama aplikasi.

  9. Di halaman tutorial-application, klik Delete.

  10. Di konsol Google Cloud, buka halaman Setelan App Hub.

    Buka Setelan

  11. Di halaman Setelan, centang kotak untuk project layanan yang ingin Anda hapus dari project host App Hub.

  12. Klik Detach projects.

gcloud

  1. Cantumkan layanan terdaftar dalam aplikasi:

    gcloud apphub applications services list \
      --application=tutorial-application --project=HOST_PROJECT_ID \
      --location=us-west1
    
  2. Batalkan pendaftaran layanan dari aplikasi:

    gcloud apphub applications services delete SERVICE_NAME \
      --application=tutorial-application --project=HOST_PROJECT_ID \
      --location=us-west1
    

    Ganti SERVICE_NAME dengan nama layanan Anda.

    Layanan kini menjadi layanan yang ditemukan yang dapat didaftarkan ke aplikasi.

  3. Cantumkan workload yang terdaftar di aplikasi:

    gcloud apphub applications workloads list \
      --application=tutorial-application --project=HOST_PROJECT_ID \
      --location=us-west1
    
  4. Batalkan pendaftaran workload dari aplikasi:

    gcloud apphub applications workloads delete WORKLOAD_NAME \
      --application=tutorial-application --project=HOST_PROJECT_ID \
      --location=us-west1
    

    Ganti WORKLOAD_NAME dengan nama beban kerja Anda.

    Workload kini menjadi workload yang ditemukan dan dapat didaftarkan ke aplikasi.

  5. Hapus aplikasi:

    gcloud apphub applications delete tutorial-application \
      --project=HOST_PROJECT_ID \
      --location=us-west1
    
  6. Hapus project layanan dari project host App Hub:

    gcloud apphub service-projects remove SERVICE_PROJECT_ID \
      --project=HOST_PROJECT_ID
    

Menghapus deployment

Jika tidak lagi membutuhkan solusi, hapus semua resource yang telah Anda buat dalam solusi tersebut untuk menghindari penagihan berkelanjutan.

Gunakan prosedur ini jika Anda men-deploy solusi menggunakan Terraform CLI.

  1. Di Cloud Shell, pastikan direktori kerja saat ini adalah terraform-docs-samples/lb/regional_external_http_load_balancer. Jika bukan, buka direktori tersebut.

  2. Hapus resource yang disediakan oleh Terraform:

    terraform destroy
    

    Terraform menampilkan daftar resource yang akan dimusnahkan.

  3. Ketika Anda diminta untuk melakukan tindakan, masukkan yes.

    Terraform menampilkan pesan yang menunjukkan progres. Setelah semua resource dihapus, Terraform akan menampilkan pesan berikut:

    Destroy complete!
    

Jika tidak lagi memerlukan project Google Cloud yang digunakan untuk solusi, Anda dapat menghapus project tersebut.

Menghapus project

Konsol

  1. Di Konsol Google Cloud, buka halaman Manage resources.

    Buka Kelola resource

  2. Dalam daftar project, pilih project yang ingin Anda hapus, lalu klik Hapus.
  3. Pada dialog, ketik project ID, lalu klik Shut down untuk menghapus project.

gcloud

Menghapus project Google Cloud:

gcloud projects delete PROJECT_ID

Ganti PROJECT_ID dengan project ID host atau layanan.

Langkah selanjutnya