Menyiapkan App Hub

Dokumen ini memberikan petunjuk untuk menyiapkan App Hub guna mem-build, mengoperasikan, dan mengelola aplikasi di Google Cloud. Panduan ini ditujukan untuk orang yang menyiapkan dan mengelola App Hub.

Jika Anda menyiapkan App Hub, tugas utamanya adalah sebagai berikut:

  1. Tentukan apakah akan membuat project host App Hub baru atau menggunakan project yang ada sebagai project host Anda.
    • Jika Anda berencana memiliki lebih dari satu project host, sebaiknya buat project tersebut di folder yang sama.
    • Project host di App Hub tidak sama dengan project host VPC Bersama dan tidak memiliki persyaratan yang sama. Misalnya, Anda tidak memerlukan jaringan VPC Bersama untuk menggunakan App Hub. Dalam dokumen ini, semua referensi ke project host adalah project host App Hub.
    • Project host tidak dapat menjadi project layanan selain untuk dirinya sendiri.
  2. Aktifkan App Hub API di project host.
  3. Tambahkan satu atau beberapa project layanan App Hub ke project host.
    • Project layanan di App Hub tidak sama dengan project layanan VPC Bersama dan tidak memiliki persyaratan yang sama. Dalam dokumen ini, semua referensi ke project layanan adalah untuk project layanan App Hub.
  4. Tetapkan pengguna App Hub sebagai Admin App Hub, Editor App Hub, atau Penampil App Hub.
  5. Membuat aplikasi.
  6. Daftarkan layanan dan beban kerja ke aplikasi.

Layanan dan beban kerja

Dengan menggunakan App Hub, resource dari project layanan yang dilampirkan ke project host tersedia bagi Anda sebagai layanan dan workload. Dengan mendaftarkan layanan dan beban kerja ke aplikasi, Anda dapat mengamati dan memantau resource. Anda dapat menetapkan resource berikut sebagai layanan App Hub dan mendaftarkannya ke aplikasi App Hub:

  • Aturan penerusan
  • Peta URL
  • Layanan backend

Anda dapat menetapkan grup instance terkelola (MIG), tetapi tidak untuk setiap VM, sebagai beban kerja dan mendaftarkannya ke aplikasi App Hub.

App Hub mendukung resource global (Pratinjau) dan regional. Untuk mengetahui informasi selengkapnya, lihat Resource yang didukung App Hub.

Proses penyiapan secara keseluruhan

Daftar berikut merangkum langkah-langkah untuk menyiapkan App Hub:

  1. Tentukan resource yang ada yang akan disertakan dalam aplikasi Anda dan project yang terkait.
  2. Buat project host App Hub dan aktifkan App Hub API dalam project. Secara opsional, berdasarkan struktur organisasi bisnis Anda, buat lebih dari satu project host. Jika Anda membuat beberapa project, sebaiknya buat project tersebut di folder baru.
  3. Melampirkan project layanan. Setelah mengonfigurasi project host, lampirkan project layanan dengan resource pokok yang diperlukan aplikasi Anda, ke project host. Perhatikan hal berikut:
    1. Project layanan harus berada dalam organisasi yang sama dengan project host. Setelah melampirkan project layanan ke project host, Anda tidak dapat memindahkannya ke organisasi lain. Untuk memindahkan project layanan ke organisasi lain, Anda harus mengikuti petunjuk dalam dokumen ini untuk menghapus atau melepaskan lampiran project layanan ke project host. Kemudian, Anda dapat melampirkan project layanan ke organisasi lain.
    2. Project layanan tidak dapat dilampirkan ke lebih dari satu project host.
    3. Project host dapat menjadi project layanannya sendiri, tetapi tidak dapat menjadi project layanan untuk project host lainnya.
    4. Setelah Anda melampirkan project layanan ke project host, membuat kueri project host untuk layanan atau beban kerja akan otomatis menampilkan semua layanan dan beban kerja di semua project layanan.
  4. Buat aplikasi untuk mengatur beberapa beban kerja dan layanan. Perhatikan hal berikut:
    1. Pastikan aplikasi memiliki nama yang unik di project dan lokasi host.
    2. Project layanan dapat dilampirkan ke project host dengan beberapa aplikasi, tetapi setiap resource-nya hanya dapat didaftarkan ke satu aplikasi.
  5. Buat kueri untuk layanan dan beban kerja, lalu daftarkan ke aplikasi Anda. Setelah membuat aplikasi, Anda membuat kueri project host untuk layanan dan beban kerja yang tersedia. Kueri dijalankan terhadap project host dan semua project layanan yang terlampir ke project host. API ini juga menampilkan semua layanan dan beban kerja dalam project tersebut. Perhatikan hal berikut:
    1. Anda hanya dapat mendaftarkan layanan atau beban kerja ke satu aplikasi.
    2. Anda harus mendaftarkan layanan dan beban kerja dari wilayah tertentu ke aplikasi regional di wilayah yang sama atau ke aplikasi global. Petunjuk dan perintah yang mengikutinya mengasumsikan bahwa semua resource berada di region yang sama. Untuk mengetahui informasi tentang region yang dapat Anda tetapkan, lihat Lokasi.
    3. Layanan dan beban kerja terdaftar tidak terpengaruh oleh update pada resource infrastruktur yang mendasarinya. Dengan kata lain, jika Anda menghapus resource dasar yang berfungsi sebagai layanan dan beban kerja, App Hub tidak akan menghapus beban kerja dan layanan terkait dari aplikasi Anda. Anda harus membatalkan pendaftaran beban kerja atau layanan secara terpisah.

Prasyarat

Sebelum menyiapkan App Hub, selesaikan tugas berikut.

  1. Tentukan project yang ada sebagai project host atau buat project baru untuk menjadi project host. Sebaiknya Anda membuat project baru.
  2. Pastikan Anda telah memutuskan individu mana yang memiliki peran Identity and Access Management (IAM) untuk App Hub: App Hub Admin, App Hub Editor, dan App Hub Viewer.

Perhatikan hal berikut:

  • Project host dapat memiliki satu atau beberapa project layanan yang terlampir.
  • Project layanan tidak dapat dilampirkan ke lebih dari satu project host.
  • Orang yang melampirkan project layanan ke project host harus memiliki peran IAM App Hub Admin di project layanan dan project host. Untuk mengetahui informasi selengkapnya, lihat Peran dan izin App Hub.

Menyiapkan App Hub

Di bagian ini, Anda akan membuat contoh arsitektur App Hub.

Dalam contoh ini, organisasi memiliki tiga project layanan, dengan resource infrastrukturnya di-deploy dalam project sebagai berikut:

  • Project Layanan 1 memiliki dua resource infrastruktur, Layanan 1 dan Layanan 2.
  • Project Layanan 2 memiliki tiga resource infrastruktur, Layanan 3, Beban Kerja 1, dan Beban Kerja 2.
  • Project Layanan 3 memiliki tiga resource infrastruktur, Layanan 4, Beban Kerja 3, dan Beban Kerja 4.

Pastikan project yang Anda pilih untuk membuat contoh berisi resource yang dijelaskan di bagian ini, atau bersiaplah untuk menyesuaikan contoh saat Anda mengikuti petunjuk.

Bagian berikut berisi petunjuk untuk membuat contoh App Hub. Anda membuat project host dan menambahkan project layanan ke project host, lalu membuat aplikasi dan melampirkan layanan serta beban kerja ke aplikasi. Contoh ini memiliki tiga project layanan, tetapi Anda dapat menambahkan lebih sedikit atau lebih banyak.

Contoh ini mengasumsikan bahwa setiap project layanan yang Anda tambahkan sudah ada dan berisi layanan serta beban kerja yang Anda tambahkan ke aplikasi. Sebelum membuat contoh, tentukan project layanan mana yang berisi layanan dan beban kerja yang ingin Anda sertakan dalam aplikasi.

Mengaktifkan App Hub

Di bagian ini, Anda memilih atau membuat project host baru, mengaktifkan App Hub API, dan memberikan peran dan izin yang sesuai kepada individu di organisasi Anda. Anda juga harus melampirkan project layanan ke project host.

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

  4. Jika Anda adalah project creator, Anda diberi peran Pemilik dasar (roles/owner). Secara default, peran 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 komputasi). Untuk mendapatkan izin yang Anda perlukan untuk menyelesaikan tutorial ini, minta administrator untuk memberi Anda peran IAM berikut 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 Admin App Hub, lalu klik Simpan.

    6. Di setiap project layanan App Hub, berikan peran Admin App Hub kepada pengguna yang sama.

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

    Buka Setelan

  6. Di halaman Settings, klik Attach projects.

  7. Lakukan salah satu hal berikut:

    • Dari daftar project, pilih kotak centang untuk project yang ingin Anda tambahkan sebagai project layanan.
    • Telusuri project, lalu pilih project yang akan ditambahkan sebagai project layanan.
  8. Klik Pilih. Tabel Project Layanan Terlampir menampilkan project layanan yang dipilih.

  9. Klik Close.

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 App Hub API di project host yang baru saja Anda buat.

    gcloud services enable apphub.googleapis.com \
        --project=HOST_PROJECT_ID
    
  5. Jika Anda adalah project creator, Anda diberi peran Pemilik dasar (roles/owner). Secara default, peran 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 komputasi). Untuk mendapatkan izin yang Anda perlukan untuk menyelesaikan tutorial ini, minta administrator untuk memberi Anda peran IAM berikut di project Anda:

    1. Secara opsional, berikan peran administrator App Hub kepada orang yang akan mengelola App Hub di project host. Ulangi perintah berikut untuk setiap administrator.

      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, robert.smith@example.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. Satu orang dapat memiliki peran di beberapa project layanan.

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

      Ganti kode berikut:

      • SERVICE_PROJECT_1: project layanan pertama dari tiga project layanan dalam contoh ini.
      • SERVICE_PROJECT_2: project layanan kedua dari tiga project layanan dalam contoh ini.
      • SERVICE_PROJECT_3: project layanan ketiga dari tiga project layanan dalam contoh ini.
  6. Tambahkan project layanan Anda ke project host App Hub.

    gcloud apphub service-projects add SERVICE_PROJECT_1 \
        --project=HOST_PROJECT_ID
    
    gcloud apphub service-projects add SERVICE_PROJECT_2 \
        --project=HOST_PROJECT_ID
    
    gcloud apphub service-projects add SERVICE_PROJECT_3 \
        --project=HOST_PROJECT_ID
    

Opsional: Menambahkan project layanan ke cakupan metrik project host

Anda dapat melihat metrik sistem untuk aplikasi di project host dengan menambahkan project layanan sebagai penampung resource ke cakupan metrik project host. Project host App Hub berfungsi sebagai project cakupan yang menghosting cakupan metrik. Cakupan metrik project Google Cloud menentukan penampung resource yang ditetapkan yang data deret waktunya dapat dipetakan dan dipantau oleh project host. Untuk informasi selengkapnya tentang penampung resource, cakupan metrik, dan project cakupan, lihat Cloud Monitoring: Model data.

Untuk melihat metrik sistem untuk aplikasi, Anda harus menambahkan atau menghapus project layanan yang dipantau secara manual, sesuai kebutuhan, dari project host. Namun, jika Anda menggunakan project host sebagai project layanannya sendiri, karena aplikasi App Hub berada dalam project yang sama, jangan tambahkan project ke cakupan metrik.

Pastikan Anda memiliki peran IAM berikut:

  • Untuk mendapatkan izin yang diperlukan guna melihat metrik untuk aplikasi App Hub, minta administrator untuk memberikan peran IAM Monitoring Viewer (roles/monitoring.viewer) pada akun utama. Untuk mengetahui informasi selengkapnya, lihat Memberikan akses ke Monitoring.
  • Untuk mendapatkan izin yang diperlukan guna mengonfigurasi cakupan metrik, minta administrator untuk memberi Anda peran IAM Monitoring Admin (roles/monitoring.admin) di project cakupan dan di setiap penampung resource yang ingin Anda tambahkan ke cakupan metrik. 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  Settings:

    Buka Setelan

    Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Monitoring.

  2. Pilih Metric Scope.

    Tab Metric Scope mencantumkan resource yang dipantau oleh project Google Cloud saat ini. Halaman ini juga mencantumkan project Google Cloud yang cakupan metriknya menyertakan project Google Cloud saat ini.

  3. Untuk menambahkan project Google Cloud ke cakupan metrik:

    1. Di panel Project Google Cloud, klik Tambahkan Project.
    2. Pada dialog Tambahkan project Google Cloud, klik Select Projects, lalu pilih kotak centang untuk project layanan yang diperlukan yang ingin Anda pantau.
    3. Untuk menyimpan perubahan, klik Tambahkan Project.

      Halaman Setelan ditampilkan dengan tabel di halaman tersebut yang diperbarui untuk mencantumkan pilihan Anda.

Setelah Anda menambahkan project ke cakupan metrik, perlu waktu sekitar 60 detik agar perubahan diterapkan di semua sistem Monitoring.

Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi cakupan metrik menggunakan konsol Google Cloud, lihat Mengonfigurasi cakupan metrik.

gcloud

Untuk menambahkan project layanan Anda sebagai penampung resource yang dipantau ke project host App Hub:

gcloud beta monitoring metrics-scopes create projects/SERVICE_PROJECT_1 \
    --project=HOST_PROJECT_ID
gcloud beta monitoring metrics-scopes create projects/SERVICE_PROJECT_2 \
    --project=HOST_PROJECT_ID
gcloud beta monitoring metrics-scopes create projects/SERVICE_PROJECT_3 \
    --project=HOST_PROJECT_ID

Untuk informasi selengkapnya tentang cara mengonfigurasi cakupan metrik menggunakan Google Cloud CLI, lihat Mengonfigurasi cakupan metrik menggunakan API.

Membuat aplikasi

Jika Anda belum memilikinya, buat aplikasi untuk menjadi penampung layanan dan beban kerja Anda. Berdasarkan cakupan layanan dan beban kerja Anda di project layanan, buat aplikasi global (Pratinjau) atau regional.

  • Aplikasi global (Pratinjau) memungkinkan Anda mendaftarkan layanan dan beban kerja yang ditemukan dari resource Google Cloud regional dan global.
  • Aplikasi regional memungkinkan Anda mendaftarkan layanan dan beban kerja yang ditemukan dari resource Google Cloud regional.

Perhatikan bahwa setelah membuat aplikasi, Anda tidak dapat mengubah cakupan aplikasi. Untuk mengetahui informasi selengkapnya tentang aplikasi global dan regional, lihat Aplikasi App Hub global dan regional.

Konsol

  1. Pastikan Anda berada di project host.
  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, berdasarkan cakupan layanan dan beban kerja yang ingin Anda daftarkan ke aplikasi, lakukan salah satu tindakan berikut:

    • Untuk membuat aplikasi yang memungkinkan Anda mendaftarkan layanan dan beban kerja dari lokasi global, pilih Global (Pratinjau).

    • Untuk membuat aplikasi yang memungkinkan Anda mendaftarkan layanan dan beban kerja dari satu lokasi:

      1. Pilih Regional.
      2. Pilih Region.
  5. Masukkan Application name, lalu klik Continue.

  6. Secara opsional, tambahkan detail selengkapnya untuk aplikasi di kolom berikut. Untuk informasi selengkapnya, dalam dokumen ini, lihat Memperbarui aplikasi App Hub yang ada.

  7. Klik Create.

gcloud

  1. Buat aplikasi baru bernama APPLICATION_NAME dan beri nama tampilan, APPLICATION_DISPLAY_NAME.

    gcloud apphub applications create APPLICATION_NAME \
      --scope-type=SCOPE_TYPE \
      --project=HOST_PROJECT_ID \
      --location=REGION
    

    Ganti kode berikut:

    • APPLICATION_NAME: nama aplikasi Anda. Nama hanya boleh berisi karakter alfanumerik dalam huruf kecil tanpa spasi.
    • SCOPE_TYPE: cakupan aplikasi Anda yang menentukan layanan dan beban kerja yang tersedia untuk Anda mendaftar ke aplikasi. Gunakan salah satu nilai berikut:
    • REGION: region aplikasi. Bergantung pada --scope-type, berikan nilai us-east1 atau global (Pratinjau).
  2. Cantumkan aplikasi di project host Anda.

    gcloud apphub applications list \
      --project=HOST_PROJECT_ID \
      --location=REGION
    

    Outputnya mirip dengan hal berikut ini:

    ID                DISPLAY_NAME              CREATE_TIME
    APPLICATION_NAME  APPLICATION_DISPLAY_NAME  2023-10-31T18:33:48
    
  3. Dapatkan detail untuk aplikasi yang Anda buat.

    gcloud apphub applications describe APPLICATION_NAME \
      --project=HOST_PROJECT_ID \
      --location=REGION
    

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

    createTime: '2023-10-31T18:33:48.199394108Z'
    displayName: APPLICATION_DISPLAY_NAME
    name: projects/HOST_PROJECT_ID/locations/REGION/applications/APPLICATION_NAME
    scope:
      type: SCOPE_TYPE
    state: ACTIVE
    uid: [APPLICATION_UID]
    updateTime: '2023-10-31T18:33:48.343303819Z'
    
    

Memperbarui aplikasi App Hub yang ada

Anda juga dapat memperbarui atribut aplikasi setelah aplikasi dibuat.

Konsol

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

    Buka Applications

  2. Dari daftar aplikasi, klik Edit untuk aplikasi yang ingin diperbarui.

  3. Edit kolom sesuai kebutuhan, lalu klik Simpan.

  4. Opsional: Dalam daftar Kritisitas, untuk menunjukkan tingkat kepentingan aplikasi, pilih salah satu dari opsi berikut:

    • Misi penting
    • Tinggi
    • Sedang
    • Rendah
  5. Opsional: Dalam daftar Environment, untuk menunjukkan tahap siklus proses software, pilih salah satu dari opsi berikut:

    • Produksi
    • Staging
    • Pengembangan
    • Pengujian
  6. Opsional: 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.
  7. Ulangi langkah-langkah ini untuk setiap developer, operator, dan pemilik bisnis.

  8. Klik Simpan.

gcloud

  1. Perbarui aplikasi Anda dengan atribut criticality-type, environment-type, dan jenis pemilik:

    gcloud apphub applications update APPLICATION_NAME \
      --display-name='APPLICATION_DISPLAY_NAME' \
      --criticality-type='CRITICALITY_LEVEL' \
      --environment-type='ENVIRONMENT' \
      --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=REGION
    

    Ganti kode berikut:

    • APPLICATION_DISPLAY_NAME: nama tampilan aplikasi Anda.
    • CRITICALITY_LEVEL: menunjukkan seberapa penting aplikasi, layanan, atau beban kerja bagi operasi bisnis Anda. Berikan salah satu nilai berikut:
      • MISSION_CRITICAL
      • HIGH
      • MEDIUM
      • LOW
    • ENVIRONMENT: menunjukkan tahap siklus proses software. Berikan salah satu nilai berikut:
      • PRODUCTION
      • STAGING
      • DEVELOPMENT
      • TEST
    • 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.
  2. Buat daftar aplikasi tempat atribut environment-type memiliki nilai PRODUCTION.

    gcloud apphub applications list \
        --filter='attributes.environment.type=PRODUCTION' \
        --project=HOST_PROJECT_ID \
        --location=REGION
    

    Outputnya mirip dengan hal berikut ini:

    ID                DISPLAY_NAME              CREATE_TIME
    APPLICATION_NAME  APPLICATION_DISPLAY_NAME  2023-10-31T18:33:48
    

Mendaftarkan layanan dan beban kerja

Saat Anda mendaftarkan layanan dan beban kerja infrastruktur ke aplikasi, layanan dan beban kerja tersebut akan didaftarkan sebagai resource App Hub. Gunakan aplikasi global (Pratinjau) untuk mendaftarkan resource yang bersifat global atau tersebar di beberapa region. Gunakan aplikasi regional untuk mendaftarkan resource dari region yang sama dengan aplikasi. Jika Anda menggunakan placeholder untuk membuat aplikasi dengan gcloud CLI, layanan dan beban kerja di tiga project layanan adalah sebagai berikut:

  • Project Layanan 1 memiliki dua resource infrastruktur, Layanan 1 dan Layanan 2.
  • Project Layanan 2 memiliki tiga resource infrastruktur, Layanan 3, Beban Kerja 1, dan Beban Kerja 2.
  • Project Layanan 3 memiliki tiga resource infrastruktur, Layanan 4, Beban Kerja 3, dan Beban Kerja 4.

Konsol

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

    Buka Applications

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

  3. Untuk setiap layanan atau beban kerja yang ingin Anda daftarkan, lakukan hal berikut:

    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 layanan atau beban kerja, lalu klik Select.
    4. Di panel Select resource, masukkan Name untuk layanan atau beban kerja, lalu klik Continue.
    5. Secara opsional, di panel Tambahkan atribut, tambahkan detail selengkapnya untuk layanan atau beban kerja di kolom berikutnya. Untuk informasi selengkapnya, dalam dokumen ini, lihat Memperbarui aplikasi App Hub yang ada. Perhatikan bahwa Anda dapat memilih nilai untuk kolom Kritisitas dan Lingkungan yang berbeda dengan nilai yang Anda tetapkan saat membuat aplikasi.
    6. Klik Lanjutkan.
    7. Secara opsional, di bagian Tambahkan pemilik, tambahkan detail selengkapnya tentang pemilik layanan atau beban kerja di kolom berikutnya. Untuk mengetahui informasi selengkapnya, dalam dokumen ini, lihat Memperbarui aplikasi App Hub yang ada.
    8. Klik Daftar.

Tab Layanan dan beban kerja menampilkan layanan atau beban kerja yang terdaftar. Untuk mengetahui informasi selengkapnya tentang status pendaftaran, lihat properti dan atribut App Hub.

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 App Hub Editor di project host. Nilai ini memiliki format username@yourdomain, misalnya, robert.smith@example.com.

  2. Cantumkan beban kerja yang ditemukan dari project layanan 2, yang dilampirkan ke project host. Perintah ini menampilkan beban kerja yang tersedia untuk didaftarkan ke aplikasi.

    gcloud apphub discovered-workloads list \
      --filter='workload_properties.gcp_project=projects/SERVICE_PROJECT_2' \
      --project=HOST_PROJECT_ID \
      --location=REGION
    

    Outputnya mirip dengan berikut ini, yang menyertakan MIG yang tidak terdaftar:

    ID                           WORKLOAD_REFERENCE                                                                                                      WORKLOAD_PROPERTIES
    [DISCOVERED_WORKLOAD_ID_1]   {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_2_NUMBER]/regions/REGION/instanceGroups/testing-mig-1'}     {'gcpProject': 'projects/SERVICE_PROJECT_2', 'location': 'REGION'}
    [DISCOVERED_WORKLOAD_ID_2]   {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_2_NUMBER]/regions/REGION/instanceGroups/testing-mig-2'}     {'gcpProject': 'projects/SERVICE_PROJECT_2', 'location': 'REGION'}
    

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

  3. Daftarkan beban kerja dari langkah sebelumnya ke aplikasi Anda.

    gcloud apphub applications workloads create WORKLOAD_NAME \
      --discovered-workload='projects/HOST_PROJECT_ID/locations/REGION/discoveredWorkloads/DISCOVERED_WORKLOAD_ID_2' \
      --display-name='mywebserver-deployment1' \
      --application=APPLICATION_NAME \
      --project=HOST_PROJECT_ID \
      --location=REGION
    

    Ganti kode berikut:

    • WORKLOAD_NAME: nama untuk mendaftarkan workload.
    • DISCOVERED_WORKLOAD_ID_2: ID beban kerja dari output langkah sebelumnya.
  4. Ulangi dua langkah sebelumnya untuk memfilter dan mendaftarkan beban kerja yang Anda inginkan dari Project Layanan 3.

  5. Opsional: Anda dapat memperbarui beban kerja dengan atribut criticality-type, environment-type, dan pemilik.

    gcloud apphub applications workloads update WORKLOAD_NAME \
      --application=APPLICATION_NAME \
      --criticality-type='CRITICALITY_LEVEL' \
      --environment-type='ENVIRONMENT' \
      --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=REGION
    

    Perhatikan bahwa Anda harus memberikan salah satu nilai yang ditentukan untuk criticality-type dan environment-type, tetapi nilai tersebut dapat berbeda dari nilai yang Anda tetapkan saat membuat aplikasi.

  6. Mencantumkan workload terdaftar di aplikasi.

    gcloud apphub applications workloads list \
      --application=APPLICATION_NAME \
      --project=HOST_PROJECT_ID \
      --location=REGION
    

    Outputnya mirip dengan hal berikut ini:

    ID                DISPLAY_NAME                 WORKLOAD_REFERENCE                                                                                                    CREATE_TIME
    WORKLOAD_NAME     mywebserver-deployment1      {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_2_NUMBER]/regions/REGION/instanceGroups/testing-mig-2'}   2023-10-31T18:34:23
    

    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.

  7. Cantumkan layanan yang ditemukan dengan aturan penerusan di Project Layanan 1 yang dilampirkan ke project host. Perintah ini menampilkan layanan yang tersedia untuk didaftarkan ke aplikasi.

    gcloud apphub discovered-services list \
      --filter='service_properties.gcp_project=projects/SERVICE_PROJECT_1 AND service_reference.uri~"forwardingRules"' \
      --project=HOST_PROJECT_ID \
      --location=REGION
    

    Outputnya mirip dengan hal berikut ini:

    ID                           SERVICE_REFERENCE                                                                                                                    SERVICE_PROPERTIES
    [DISCOVERED_SERVICE_ID_1]    {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_1_NUMBER]/regions/REGION/forwardingRules/testing-forwarding-rule-1'}     {'gcpProject': 'projects/SERVICE_PROJECT_1', 'location': 'REGION'}
    [DISCOVERED_SERVICE_ID_2]    {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_1_NUMBER]/regions/REGION/forwardingRules/testing-forwarding-rule-2'}     {'gcpProject': 'projects/SERVICE_PROJECT_1', 'location': 'REGION'}
    

    Salin ID layanan, DISCOVERED_SERVICE_ID_2 dari output untuk digunakan di langkah berikutnya.

  8. Daftarkan aturan penerusan, testing-forwarding-rule-2 di project layanan 1 sebagai layanan.

    gcloud apphub applications services create SERVICE_NAME \
      --discovered-service='projects/HOST_PROJECT_ID/locations/REGION/discoveredServices/DISCOVERED_SERVICE_ID_2' \
      --display-name='mywebserver-service1' \
      --application=APPLICATION_NAME \
      --project=HOST_PROJECT_ID \
      --location=REGION
    

    Ganti kode berikut:

    • SERVICE_NAME: nama untuk mendaftarkan layanan.
    • DISCOVERED_SERVICE_ID_2: ID layanan dari output langkah sebelumnya.
  9. Ulangi langkah-langkah sebelumnya yang mencantumkan layanan, memfilter layanan tersebut, dan mendaftarkan layanan di project layanan 1, 2, dan 3.

  10. Perbarui layanan dengan atribut criticality-type dan atribut environment-type.

    gcloud apphub applications services update SERVICE_NAME \
      --criticality-type='CRITICALITY_LEVEL' \
      --environment-type='ENVIRONMENT' \
      --application=APPLICATION_NAME \
      --project=HOST_PROJECT_ID  \
      --location=REGION
    
  11. Cantumkan layanan terdaftar di aplikasi APPLICATION_NAME dan project host HOST_PROJECT_ID.

    gcloud apphub applications services list \
      --application=APPLICATION_NAME \
      --project=HOST_PROJECT_ID \
      --location=REGION
    

    Outputnya mirip dengan yang berikut ini untuk setiap layanan:

    ID                DISPLAY_NAME                 SERVICE_REFERENCE                                                                                                                  CREATE_TIME
    SERVICE_NAME      mywebserver-service1         {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_1_NUMBER]/regions/REGION/forwardingRules/testing-forwarding-rule-2'}   2023-11-01T21:38:08
    

    Layanan yang terdaftar, tetapi terpisah ditunjukkan dengan nilai kosong di kolom SERVICE_REFERENCE.

  12. Filter layanan di aplikasi APPLICATION_NAME dan project host HOST_PROJECT_ID ke layanan yang atribut environment-type-nya ditetapkan ke PRODUCTION.

    gcloud apphub applications services list \
      --filter='attributes.environment.type=PRODUCTION' \
      --application=APPLICATION_NAME \
      --project=HOST_PROJECT_ID \
      --location=REGION
    

Proses penyiapan App Hub selesai.

Menambahkan atau menghapus project layanan

Anda dapat mengubah lampiran project layanan untuk menyediakan resource infrastruktur yang berbeda untuk dikelompokkan ke dalam aplikasi.

Untuk melihat metrik sistem untuk aplikasi di project host, setelah Anda menambahkan project layanan ke project host, tambahkan project layanan sebagai penampung resource ke cakupan metrik project host. Untuk informasi selengkapnya, dalam dokumen ini, lihat Menambahkan project layanan ke cakupan metrik project host. Saat Anda menghapus project layanan dari project host, pertimbangkan untuk menghapus project layanan sebagai penampung resource dari cakupan metrik project host (jika sebelumnya Anda memilih untuk melihat metrik sistem aplikasi di project host). Untuk informasi selengkapnya, dalam dokumen ini, lihat langkah-langkah untuk menghapus project layanan dari cakupan metrik project host.

Konsol

Untuk menambahkan project layanan ke project host:

  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 yang ingin Anda tambahkan sebagai project layanan.

  4. Klik Pilih. Tabel Attached Service Project(s) menampilkan project yang dipilih sebagai project layanan untuk project host.

  5. Klik Close.

Untuk menghapus project layanan dari project host:

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

    Buka Setelan

  2. Di halaman Settings, centang kotak untuk project yang ingin Anda hapus sebagai project layanan.

  3. Klik Detach projects. Tabel Project Layanan Terlampir akan dimuat ulang untuk hanya menampilkan project yang tetap terlampir ke project host.

gcloud

Untuk menambahkan project layanan ke project host:

gcloud apphub service-projects add SERVICE_PROJECT_ID \
   --project=HOST_PROJECT_ID
Ganti SERVICE_PROJECT_ID dengan nama project layanan yang ingin Anda tambahkan ke project host.
Untuk menghapus project layanan dari project host:
gcloud apphub service-projects remove SERVICE_PROJECT_ID \
   --project=HOST_PROJECT_ID

Melihat aplikasi, layanan, dan beban kerja yang ada

Anda dapat melihat aplikasi dalam project, serta mencantumkan layanan dan beban kerja dalam aplikasi.

Konsol

  • Untuk melihat aplikasi dalam project, di konsol Google Cloud, buka halaman Aplikasi App Hub.

    Buka Applications

  • Untuk mencantumkan layanan dan beban kerja:

    Aplikasi

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

      Buka Applications

    2. Klik nama aplikasi. Halaman dengan daftar layanan dan beban kerja yang terdaftar ke aplikasi Anda akan muncul.

    3. Opsional: Untuk memfilter layanan atau beban kerja:

      1. Di kolom Filter, pilih filter seperti Kritisitas.
      2. Pilih Tinggi sebagai nilai.
        Daftar layanan dan beban kerja dengan tingkat kritisitas tinggi yang terdaftar ke aplikasi akan muncul.

    Layanan dan Workload

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

      Buka Layanan dan Workload

    2. Dalam daftar Region, pilih region tempat Anda ingin melihat layanan dan workload. Misalnya, pilih us-east1.
      Halaman Layanan dan Beban Kerja menampilkan semua layanan dan beban kerja dari project layanan terlampir yang terkait dengan us-east1.

    3. Opsional: Untuk memfilter layanan atau beban kerja:

      1. Di kolom Filter, pilih filter seperti Environment.
      2. Pilih Production sebagai nilai.
        Daftar layanan dan beban kerja di lingkungan produksi yang terdaftar ke aplikasi akan muncul.

gcloud

Untuk melihat aplikasi dalam project:

gcloud apphub applications list \
    --project=HOST_PROJECT_ID \
    --location=REGION

Untuk mencantumkan layanan terdaftar dalam aplikasi:

gcloud apphub applications services list \
    --application=APPLICATION_NAME \
    --project=HOST_PROJECT_ID \
    --location=REGION

Untuk mencantumkan workload terdaftar dalam aplikasi:

gcloud apphub applications workloads list \
    --application=APPLICATION_NAME \
    --project=HOST_PROJECT_ID \
    --location=REGION

Opsional: 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.

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

  3. Opsional: Untuk mengubah jangka waktu tampilan metrik, gunakan pemilih rentang waktu. Rentang waktu defaultnya adalah 1 jam.

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

    Tabel ditampilkan dengan sinyal emas berikut:

    • Traffic: Rasio permintaan masuk pada resource selama jangka waktu yang dipilih.
    • Rasio error server: Persentase rata-rata permintaan masuk yang menghasilkan kode error HTTP seri 5xx selama jangka waktu yang dipilih.
    • P95 latency: Persentil ke-95 latensi untuk permintaan layanan yang digabungkan selama jangka waktu yang dipilih, dalam milidetik.
    • Pemakaian CPU: Persentase rata-rata penggunaan CPU untuk beban kerja, yang digabungkan selama jangka waktu yang ditentukan. Nilai biasanya berupa angka antara 0,0 dan 100,0, tetapi dapat melebihi 100,0.
    • Penggunaan memori: Persentase rata-rata penggunaan memori untuk workload, yang digabungkan selama jangka waktu yang ditentukan.

Opsional: Menjelajahi metrik menggunakan diagram

Untuk memetakan metrik untuk project App Hub Anda, gunakan Metrics Explorer. Anda dapat membatasi data yang dipetakan dengan menerapkan filter, yang didasarkan pada label. Untuk informasi selengkapnya, lihat Membuat diagram dengan Metrics Explorer.

Label metadata sistem App Hub berikut tersedia untuk Anda filter (Pratinjau):

  • apphub_application_host_project_id
  • apphub_application_id
  • apphub_application_location
  • apphub_workload_criticality_type
  • apphub_workload_environment_type
  • apphub_workload_id

Untuk memvisualisasikan label metadata App Hub pada diagram, ikuti petunjuk ini. Anda dapat mengikuti prosedur yang sama untuk label metadata sistem lain dan metrik App Hub.

  1. Di konsol Google Cloud, buka halaman  Metrics explorer:

    Buka Metrics explorer

    Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Monitoring.

  2. Pada elemen Metric, luaskan menu Select a metric, masukkan VM Instance di panel filter, lalu gunakan submenu untuk memilih jenis dan metrik resource tertentu:
    1. Di menu Active resources, pilih VM Instance.
    2. Di menu Active metric categories, pilih Popular metrics.
    3. Di menu Active metrics, pilih CPU utilization.
    4. Klik Terapkan.
    Nama yang sepenuhnya memenuhi syarat untuk metrik ini adalah compute.googleapis.com/instance/cpu/utilization.
  3. Konfigurasi cara data dilihat. Untuk hanya menampilkan metrik untuk label tertentu, ikuti langkah-langkah berikut:
    1. Di elemen Filter, klik Add filter, lalu pilih apphub_application_id. Untuk nilai, masukkan nama App Hub tertentu.
    2. Di entri Aggregation, tetapkan menu pertama ke Unaggregated.

    Untuk informasi selengkapnya tentang cara mengonfigurasi diagram, lihat Memilih metrik saat menggunakan Metrics Explorer.

Pembersihan

Bersihkan aplikasi yang ada dan hapus lampiran project layanan dari project host untuk menghapus resource yang terkait dengan project. Tindakan ini akan menghentikan penemuan resource secara otomatis di project layanan.

Untuk melakukannya, Anda harus menghapus beban kerja dan layanan yang terdaftar ke aplikasi terlebih dahulu.

Konsol

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

    Buka Applications

  2. Klik nama aplikasi. Daftar layanan dan beban kerja yang terdaftar ke aplikasi akan muncul.

  3. Membatalkan pendaftaran layanan atau beban kerja.

    1. Di tab Layanan dan beban kerja, dari bagian Layanan dan beban kerja terdaftar, klik nama layanan atau beban kerja yang ingin Anda batalkan pendaftarannya.
    2. Di tab Details, klik Unregister untuk memperbarui layanan atau beban kerja sebagai resource Discovered.
      Di tab Layanan dan beban kerja, pemberitahuan akan memberi tahu bahwa beban kerja tidak terdaftar.
    3. Ulangi petunjuk ini untuk setiap layanan dan beban kerja.
  4. Buka halaman Aplikasi App Hub.

    Buka Applications

  5. Klik nama aplikasi.

  6. Di halaman yang berisi detail aplikasi, klik Hapus.

  7. Untuk menghapus project layanan dari project host, lihat bagian Menambahkan atau menghapus project layanan dalam dokumen ini.

  8. Untuk menghapus project layanan dari cakupan metrik project host:

    1. Di konsol Google Cloud, buka halaman  Settings:

      Buka Setelan

      Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Monitoring.

    2. Pilih Metric Scope.
    3. Di panel Google Cloud Projects, klik Remove project, lalu selesaikan dialog konfirmasi.

gcloud

  1. Cantumkan workload yang terdaftar di aplikasi:

    gcloud apphub applications workloads list \
      --application=APPLICATION_NAME --project=HOST_PROJECT_ID \
      --location=REGION
    
  2. Batalkan pendaftaran workload dari aplikasi:

    gcloud apphub applications workloads delete WORKLOAD_NAME \
      --application=APPLICATION_NAME \
      --project=HOST_PROJECT_ID \
      --location=REGION
    

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

  3. Ulangi perintah sebelumnya untuk menghapus beban kerja terdaftar lainnya dari aplikasi.

  4. Cantumkan layanan terdaftar dalam aplikasi:

    gcloud apphub applications services list \
      --application=APPLICATION_NAME \
      --project=HOST_PROJECT_ID \
      --location=REGION
    
  5. Batalkan pendaftaran layanan dari aplikasi:

    gcloud apphub applications services delete SERVICE_NAME \
      --application=APPLICATION_NAME \
      --project=HOST_PROJECT_ID \
      --location=REGION
    

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

  6. Ulangi perintah sebelumnya untuk membatalkan pendaftaran layanan terdaftar lainnya dari aplikasi.

  7. Hapus aplikasi:

    gcloud apphub applications delete APPLICATION_NAME \
      --project=HOST_PROJECT_ID \
      --location=REGION
    
  8. Hapus project layanan dari project host:

    gcloud apphub service-projects remove SERVICE_PROJECT_ID \
      --project=HOST_PROJECT_ID
    
  9. Ulangi perintah sebelumnya untuk menghapus semua project layanan dari project host.

  10. Hapus project layanan dari cakupan metrik project host (Pratinjau):

    gcloud beta monitoring metrics-scopes delete projects/SERVICE_PROJECT_ID \
      --project=HOST_PROJECT_ID
    
  11. Ulangi perintah sebelumnya untuk menghapus semua project layanan dari project host cakupan metrik.

Langkah selanjutnya