Mendaftarkan resource Google Cloud yang ada sebagai layanan dan workload di aplikasi App Hub memungkinkan Anda menyederhanakan pengelolaan dengan mengatur resource berdasarkan tujuan bisnisnya. Pendekatan ini memberikan visibilitas, pemantauan, tata kelola, dan kontrol operasional yang terpadu.
Panduan ini menunjukkan cara mengelompokkan resource Google Cloud yang sudah ada yang belum ditetapkan secara formal sebagai aplikasi.
Sebelum memulai
Anda harus menyelesaikan penyiapan awal untuk pengelolaan aplikasi sebelum mengatur resource ke dalam aplikasi. Proses ini biasanya melibatkan peran dan langkah-langkah berikut:
Untuk administrator:
- Pilih model penyiapan aplikasi Anda. Anda harus mengonfigurasi project pengelolaan dan menentukan batas pengelolaan aplikasi yang mencakup Google Cloud resource yang ingin Anda atur.
- Aktifkan API yang diperlukan untuk semua Google Cloud resource yang ingin Anda gunakan.
- Memberikan akses kepada pengguna. Tetapkan peran IAM yang sesuai berdasarkan tanggung jawab pengguna dalam siklus proses aplikasi.
Untuk developer dan operator:
- Konfirmasi dengan administrator Anda bahwa penyiapan awal telah selesai.
- Pastikan Anda memiliki peran IAM yang diperlukan untuk tugas yang ingin Anda lakukan.
- Buka project pengelolaan di konsol Google Cloud atau temukan project ID project pengelolaan untuk interaksi Terraform atau Google Cloud CLI.
Membuat aplikasi
Buat aplikasi di App Hub untuk bertindak sebagai penampung logis bagi resource Google Cloud yang ada:
Konsol
- Di konsol Google Cloud , gunakan pemilih project untuk memilih project pengelolaan Anda.
Buka halaman Aplikasi dari App Hub:
Klik Create application.
Di panel Pilih region dan nama aplikasi, pilih lokasi terbaik untuk aplikasi Anda berdasarkan persyaratan distribusi geografis Anda:
- Pilih Regional untuk membuat aplikasi regional. Kemudian, pilih region tertentu untuk aplikasi Anda berdasarkan wilayah yang didukung App Hub.
- Pilih Global untuk membuat aplikasi global.
Untuk mengetahui informasi selengkapnya tentang lokasi terbaik untuk aplikasi Anda, lihat Aplikasi global dan regional.
Masukkan Nama aplikasi, lalu klik Lanjutkan. Nama ini adalah ID unik yang hanya boleh berisi huruf kecil, angka, atau tanda hubung. Anda tidak dapat mengubah nama ini setelah membuat aplikasi.
Opsional: Tentukan atribut tingkat teratas aplikasi untuk mendukung penemuan dan tata kelola:
- Di bagian Tambahkan atribut, masukkan Nama tampilan. Nama tampilan bukan ID unik, dan Anda dapat mengubahnya setelah membuat aplikasi.
- Dalam daftar Kekritisan, pilih nilai untuk menunjukkan pentingnya aplikasi.
- Dalam daftar Lingkungan, pilih nilai untuk menunjukkan tahap siklus proses software.
- Tambahkan detail informasi kontak untuk pemilik, termasuk nama tampilan dan alamat email mereka. Perhatikan bahwa alamat email harus memiliki
format
username@yourdomain, misalnya,jane-doe@gmail.com.
Klik Buat.
gcloud
Gunakan Google Cloud CLI untuk membuat aplikasi dari terminal atau Cloud Shell:
gcloud apphub applications create APPLICATION_NAME \ --project=PROJECT_ID \ --scope-type=LOCATION \ --location=REGION \ --display-name=DISPLAY_NAME \ --criticality-type=CRITICALITY \ --environment-type=ENVIRONMENT \ --developer-owners=display-name=DEV_NAME,email=DEV_EMAIL \ --operator-owners=display-name=OPERATOR_NAME,email=OPERATOR_EMAIL \ --business-owners=display-name=BUSINESS_NAME,email=BUSINESS_EMAILGanti
APPLICATION_NAMEdengan nama aplikasi Anda. Nama ini adalah ID unik yang hanya dapat berisi huruf kecil, angka, atau tanda hubung.Gunakan tanda opsional seperti
--criticality-typeuntuk menentukan atribut tingkat teratas aplikasi dan mendukung penemuan dan tata kelola.Untuk flag wajib dan opsional, ganti opsi berikut:
- Wajib:
PROJECT_ID: ID project pengelolaan. Wajib:
LOCATION: lokasi untuk aplikasi Anda berdasarkan persyaratan distribusi geografis Anda. Gunakan salah satu nilai berikut:REGIONALuntuk aplikasi regional.GLOBALuntuk aplikasi global.
Untuk mengetahui informasi selengkapnya tentang lokasi terbaik untuk aplikasi Anda, lihat Aplikasi global dan regional.
Wajib:
REGION: wilayah tertentu untuk aplikasi Anda. Gunakan salah satu nilai berikut:- Jika lokasi
--scope-typeuntuk aplikasi Anda ditetapkan keREGIONAL, tentukan nama wilayah yang didukung App Hub. - Jika lokasi
--scope-typeuntuk aplikasi Anda ditetapkan keGLOBAL, gunakanglobal.
- Jika lokasi
Opsional:
DISPLAY_NAME: nama tampilan aplikasi Anda. Nama tampilan bukan ID unik dan Anda dapat mengubahnya setelah membuat aplikasi.Opsional:
CRITICALITY: tingkat kepentingan aplikasi untuk operasi Anda. Gunakan salah satu nilai berikut:MISSION_CRITICALHIGHMEDIUMLOW
Opsional:
ENVIRONMENT: tahap siklus proses software. Gunakan salah satu nilai berikut:PRODUCTIONSTAGINGDEVELOPMENTTEST
Opsional:
DEV_NAMEdanDEV_EMAIL: nama tampilan dan alamat email pemilik developer.Opsional:
OPERATOR_NAMEdanOPERATOR_EMAIL: nama tampilan dan alamat email pemilik operator.Opsional:
BUSINESS_NAMEdanBUSINESS_EMAIL: nama tampilan dan alamat email pemilik bisnis.
- Wajib:
Mencantumkan aplikasi dalam project Anda:
gcloud apphub applications list \ --project=PROJECT_ID \ --location=REGIONAnda harus mendapatkan output yang mirip dengan berikut ini:
ID DISPLAY_NAME CREATE_TIME APPLICATION_NAME DISPLAY_NAME 2023-10-31T18:33:48
Terraform
Untuk membuat aplikasi dengan Terraform, gunakan
resource google_apphub_application.
Resource ini memungkinkan Anda menentukan properti aplikasi, termasuk
nama, lokasi, dan atributnya.
Contoh berikut membuat aplikasi regional di us-central1 dengan
atribut penting, lingkungan, dan pemilik yang ditentukan:
resource "google_apphub_application" "example" {
project = "my-project-id"
location = "us-central1"
application_id = "my-application"
display_name = "My Application"
description = "This application represents our platform."
scope {
type = "REGIONAL"
}
attributes {
criticality {
type = "MISSION_CRITICAL"
}
environment {
type = "PRODUCTION"
}
business_owners {
display_name = "Alice"
email = "alice@example.com"
}
developer_owners {
display_name = "Bob"
email = "bob@example.com"
}
operator_owners {
display_name = "Charlie"
email = "charlie@example.com"
}
}
}
Mendaftarkan layanan dan workload
App Hub memungkinkan Anda memilih resource yang didukung yang berada dalam batas pengelolaan aplikasi Anda untuk mendaftarkannya sebagai layanan dan workload. Setelah membuat aplikasi, daftarkan resourceGoogle Cloud yang ada sebagai layanan dan beban kerja di dalamnya.
Anda hanya dapat mendaftarkan layanan eksklusif ke satu aplikasi. Namun, layanan bersama dapat didaftarkan ke lebih dari satu aplikasi. Hub Aplikasi akan menemukan layanan bersama saat Anda mendaftarkannya ke aplikasi meskipun layanan tersebut sudah terdaftar ke aplikasi lain, tetapi Anda mungkin tidak dapat mengubah atributnya.
Konsol
- Di konsol Google Cloud , gunakan pemilih project untuk memilih project pengelolaan Anda.
Buka halaman Aplikasi dari App Hub:
Klik nama aplikasi yang ingin Anda daftarkan sumber daya Google Cloud yang ada sebagai layanan dan workload.
Dari halaman detail aplikasi, pilih tab Layanan dan beban kerja. Tab ini menampilkan daftar resource yang ada yang dapat Anda daftarkan ke aplikasi. App Hub memungkinkan Anda memilih resource yang didukung yang berada dalam batas pengelolaan aplikasi sebagai layanan atau workload.
Untuk setiap layanan atau workload yang ingin Anda daftarkan, lakukan hal berikut:
- Di tab Services and workloads, klik Register service/workload.
- Buka panel Pilih resource, lalu klik Jelajahi untuk menemukan layanan atau beban kerja yang ingin Anda daftarkan.
- Pilih layanan atau workload, lalu klik Pilih.
- Di panel Select resource, masukkan nama untuk layanan atau beban kerja, lalu klik Continue.
Opsional: Di panel Tambahkan atribut, tentukan atribut tingkat teratas resource untuk mendukung penemuan dan tata kelola.
Klik Lanjutkan.
Opsional: Di bagian Tambahkan pemilik, tambahkan detail selengkapnya tentang pemilik layanan atau beban kerja.
Klik Daftar.
Tab Layanan dan beban kerja menampilkan layanan atau beban kerja yang terdaftar.
gcloud
App Hub memungkinkan Anda memilih resource yang didukung yang berada dalam batas pengelolaan aplikasi sebagai layanan atau workload. Gunakan Google Cloud CLI untuk mencantumkan layanan atau beban kerja yang dapat Anda daftarkan ke aplikasi dari terminal atau Cloud Shell. Perintah sedikit berbeda untuk layanan dan beban kerja:
Mendaftar layanan
Mencantumkan layanan yang tersedia yang dapat Anda daftarkan ke aplikasi:
gcloud apphub discovered-services list \ --project=PROJECT_ID \ --location=REGION \ --filter=FILTER_EXPRESSIONUntuk flag wajib dan opsional, ganti opsi berikut:
- Wajib:
PROJECT_ID: ID project pengelolaan. Wajib:
REGION: wilayah spesifik layanan Anda berdasarkan distribusi geografis Anda. Gunakan salah satu nilai berikut:- Jika layanan bersifat regional, tentukan nama region yang didukung App Hub.
- Jika layanan bersifat global, gunakan
global.
Opsional:
FILTER_EXPRESSION: ekspresi filter untuk flag--filteragar hanya menampilkan layanan dari project tertentu dalam batas pengelolaan aplikasi atau dengan properti tertentu, misalnya:service_properties.gcp_project=projects/PROJECT_IDservice_properties.gcp_project=projects/PROJECT_ID AND service_reference.uri~"forwardingRules"
Outputnya mirip dengan contoh berikut:
ID SERVICE_REFERENCE SERVICE_PROPERTIES SERVICE_ID {'uri': '//compute.googleapis.com/projects/PROJECT_NUMBER/regions/REGION/forwardingRules/forwarding-rule'} {'gcpProject': 'projects/PROJECT_ID', 'location': 'REGION'}- Wajib:
Salin ID layanan,
SERVICE_ID, dari output.Daftarkan layanan ke aplikasi Anda:
gcloud apphub applications services create SERVICE_NAME \ --project=PROJECT_ID \ --location=REGION \ --application=APPLICATION_NAME \ --discovered-service=projects/PROJECT_ID/locations/REGION/discoveredServices/SERVICE_ID \ --display-name=SERVICE_DISPLAY_NAME \ --criticality-type=CRITICALITY \ --environment-type=ENVIRONMENT \ --developer-owners=display-name=DEV_NAME,email=DEV_EMAIL \ --operator-owners=display-name=OPERATOR_NAME,email=OPERATOR_EMAIL \ --business-owners=display-name=BUSINESS_NAME,email=BUSINESS_EMAILGanti
SERVICE_NAMEdengan nama yang ingin Anda gunakan untuk mendaftarkan layanan ke aplikasi.Gunakan tanda opsional seperti
--criticality-typeuntuk menentukan atribut tingkat teratas layanan dan mendukung penemuan dan tata kelola.Untuk flag wajib dan opsional, ganti opsi berikut:
- Wajib:
PROJECT_ID: ID project pengelolaan. Wajib:
REGION: wilayah spesifik layanan Anda berdasarkan distribusi geografis Anda. Gunakan salah satu nilai berikut:- Jika layanan bersifat regional, tentukan nama region yang didukung App Hub.
- Jika layanan bersifat global, gunakan
global.
Wajib:
APPLICATION_NAME: nama aplikasi yang ingin Anda daftarkan layanannya.Wajib:
SERVICE_ID: ID layanan yang Anda salin dari output sebelumnya.Opsional:
SERVICE_DISPLAY_NAME: nama tampilan layanan Anda.Opsional:
CRITICALITY: tingkat kepentingan layanan untuk operasi Anda. Gunakan salah satu nilai berikut:MISSION_CRITICALHIGHMEDIUMLOW
Opsional:
ENVIRONMENT: tahap siklus proses software. Gunakan salah satu nilai berikut:PRODUCTIONSTAGINGDEVELOPMENTTEST
Opsional:
DEV_NAMEdanDEV_EMAIL: nama tampilan dan alamat email pemilik developer.Opsional:
OPERATOR_NAMEdanOPERATOR_EMAIL: nama tampilan dan alamat email pemilik operator.Opsional:
BUSINESS_NAMEdanBUSINESS_EMAIL: nama tampilan dan alamat email pemilik bisnis.
- Wajib:
Mencantumkan layanan terdaftar di aplikasi Anda:
gcloud apphub applications services list \ --application=APPLICATION_NAME --project=PROJECT_ID \ --location=REGIONAnda harus mendapatkan output yang mirip dengan berikut untuk setiap layanan yang terdaftar:
ID DISPLAY_NAME SERVICE_REFERENCE CREATE_TIME SERVICE_NAME SERVICE_DISPLAY_NAME {'uri': '//compute.googleapis.com/projects/PROJECT_NUMBER/regions/REGION/forwardingRules/forwarding-rule'} 2023-11-01T21:38:08
Mendaftarkan workload
Mencantumkan workload yang tersedia yang dapat Anda daftarkan ke aplikasi:
gcloud apphub discovered-workloads list \ --project=PROJECT_ID \ --location=REGION \ --filter=FILTER_EXPRESSIONUntuk flag wajib dan opsional, ganti opsi berikut:
- Wajib:
PROJECT_ID: ID project pengelolaan. Wajib:
REGION: wilayah spesifik workload Anda berdasarkan distribusi geografis Anda. Gunakan salah satu nilai berikut:- Jika workload bersifat regional, tentukan nama region yang didukung App Hub.
- Jika workload bersifat global, gunakan
global.
Opsional:
FILTER_EXPRESSION: ekspresi filter untuk tanda--filteragar hanya menampilkan beban kerja dari project tertentu dalam batas pengelolaan aplikasi atau dengan properti tertentu, misalnya,workload_properties.gcp_project=projects/PROJECT_ID.
Outputnya mirip dengan contoh berikut:
ID WORKLOAD_REFERENCE WORKLOAD_PROPERTIES WORKLOAD_ID {'uri': '//compute.googleapis.com/projects/PROJECT_NUMBER/regions/REGION/instanceGroups/mig-name'} {'gcpProject': 'projects/PROJECT_ID', 'location': 'REGION'}- Wajib:
Salin ID beban kerja,
WORKLOAD_ID, dari output.Daftarkan workload ke aplikasi Anda:
gcloud apphub applications workloads create WORKLOAD_NAME \ --project=PROJECT_ID \ --location=REGION \ --application=APPLICATION_NAME \ --discovered-workload=projects/PROJECT_ID/locations/REGION/discoveredWorkloads/WORKLOAD_ID \ --display-name=WORKLOAD_DISPLAY_NAME \ --criticality-type=CRITICALITY \ --environment-type=ENVIRONMENT \ --developer-owners=display-name=DEV_NAME,email=DEV_EMAIL \ --operator-owners=display-name=OPERATOR_NAME,email=OPERATOR_EMAIL \ --business-owners=display-name=BUSINESS_NAME,email=BUSINESS_EMAILGanti
WORKLOAD_NAMEdengan nama yang ingin Anda gunakan untuk mendaftarkan beban kerja ke aplikasi.Gunakan tanda opsional seperti
--criticality-typeuntuk menentukan atribut tingkat teratas beban kerja dan mendukung penemuan dan tata kelola.Untuk flag wajib dan opsional, ganti opsi berikut:
- Wajib:
PROJECT_ID: ID project pengelolaan. Wajib:
REGION: wilayah spesifik workload Anda berdasarkan distribusi geografis Anda. Gunakan salah satu nilai berikut:- Jika workload bersifat regional, tentukan nama region yang didukung App Hub.
- Jika workload bersifat global, gunakan
global.
Wajib:
APPLICATION_NAME: nama aplikasi yang ingin Anda daftarkan beban kerjanya.Wajib:
WORKLOAD_ID: ID workload yang Anda salin dari output sebelumnya.Opsional:
WORKLOAD_DISPLAY_NAME: nama tampilan workload Anda.Opsional:
CRITICALITY: tingkat kepentingan beban kerja untuk operasi Anda. Gunakan salah satu nilai berikut:MISSION_CRITICALHIGHMEDIUMLOW
Opsional:
ENVIRONMENT: tahap siklus proses software. Gunakan salah satu nilai berikut:PRODUCTIONSTAGINGDEVELOPMENTTEST
Opsional:
DEV_NAMEdanDEV_EMAIL: nama tampilan dan alamat email pemilik developer.Opsional:
OPERATOR_NAMEdanOPERATOR_EMAIL: nama tampilan dan alamat email pemilik operator.Opsional:
BUSINESS_NAMEdanBUSINESS_EMAIL: nama tampilan dan alamat email pemilik bisnis.
- Wajib:
Mencantumkan workload terdaftar di aplikasi Anda:
gcloud apphub applications workloads list \ --application=APPLICATION_NAME --project=PROJECT_ID \ --location=REGIONAnda harus mendapatkan output yang mirip dengan berikut untuk setiap workload terdaftar:
ID DISPLAY_NAME WORKLOAD_REFERENCE CREATE_TIME WORKLOAD_NAME WORKLOAD_DISPLAY_NAME {'uri': '//compute.googleapis.com/projects/PROJECT_NUMBER/regions/REGION/instanceGroups/mig-name'} 2023-11-01T21:38:08
Terraform
Untuk menggunakan Terraform guna mendaftarkan resource Google Cloud dalam batas pengelolaan aplikasi Anda sebagai layanan atau beban kerja dalam aplikasi, gunakan sumber data
google_apphub_discovered_service
dan
google_apphub_discovered_workload
untuk mengambil informasi secara dinamis tentang resource yang ingin Anda daftarkan.
Kemudian, gunakan resource
google_apphub_service
atau
google_apphub_workload
untuk mendaftarkan layanan atau workload.
Mendaftar layanan
Mendapatkan informasi tentang layanan menggunakan URI-nya:
data "google_apphub_discovered_service" "my-service" { location = "REGION" service_uri = "SERVICE_URI" }Daftarkan layanan yang ditemukan ke aplikasi Anda, misalnya:
resource "google_apphub_service" "example" { project = "my-project-id" location = "us-central1" application_id = google_apphub_application.example.application_id service_id = "frontend-load-balancer" discovered_service = data.google_apphub_discovered_service.my-forwarding-rule.name display_name = "Frontend Load Balancer" description = "The primary load balancer for the frontend." }
Mendaftarkan workload
Mendapatkan informasi tentang workload menggunakan URI-nya:
data "google_apphub_discovered_workload" "my-workload" { location = "REGION" workload_uri = "WORKLOAD_URI" }Daftarkan workload yang ditemukan ke aplikasi Anda, misalnya:
resource "google_apphub_workload" "example" { project = "my-project-id" location = "us-central1" application_id = google_apphub_application.example.application_id workload_id = "frontend-instance-group" discovered_workload = data.google_apphub_discovered_workload.my-mig.name display_name = "Frontend Instance Group" description = "The managed instance group for the frontend." }
Status pendaftaran layanan dan beban kerja yang terdaftar ke aplikasi dapat berubah menjadi dilepas jika Anda memindahkan project atau folder keluar dari batas pengelolaan aplikasi atau menghapus resource yang mendasarinya. Layanan dan beban kerja yang dilepas tetap berada di aplikasi hingga Anda membatalkan pendaftarannya, tetapi App Hub tidak dapat lagi mengelola atau memantaunya. Untuk mengetahui informasi selengkapnya, lihat Status pendaftaran layanan dan workload.
Untuk melampirkan kembali layanan atau workload ke aplikasi, Anda harus mendaftarkannya lagi.
Memberikan izin dan memulai operasi
Setelah membuat aplikasi dan mendaftarkan layanan serta beban kerja di App Hub, Anda harus memberikan akses pengguna berdasarkan tanggung jawab siklus proses untuk mengelola pengelompokan logika ini sebagai satu unit:
- Bergantung pada kebutuhan akses Anda, Anda dapat memberikan izin ke setiap aplikasi atau semua aplikasi. Untuk mengetahui daftar peran yang direkomendasikan, lihat Memberikan peran yang berfokus pada aplikasi kepada pengguna Anda.
- Atau, buka Cloud Hub untuk melihat dasbor operasional terpadu untuk aplikasi yang Anda tentukan, termasuk data kesehatan, performa, dan biayanya.