Dokumen ini menjelaskan cara menyiapkan project host di App Hub.
Project host adalah model penyiapan aplikasi lama yang didukung untuk pengguna Hub Aplikasi lama. Sebaiknya tentukan batas tingkat folder dengan menyiapkan folder yang kompatibel dengan aplikasi untuk penerapan baru. Batas level folder memberikan akses ke kumpulan lengkap fitur Google Cloud yang berfokus pada Aplikasi, seperti Application Design Center dan Gemini Cloud Assist. Untuk perbandingan perbedaan utama antara model yang tersedia untuk pengelolaan aplikasi, lihat Memilih model penyiapan aplikasi.
Ringkasan project host dan layanan
Project host adalah project Google Cloud yang digunakan untuk melampirkan project lain yang berisi layanan dan workload yang ingin Anda kelompokkan sebagai aplikasi App Hub. Project yang Anda lampirkan ke project host disebut project layanan.
Project host dapat mengelola resource-nya sendiri secara langsung dengan melampirkan dirinya sendiri. Namun, untuk penyiapan satu project, sebaiknya gunakan pendekatan satu project.
Sebelum memulai
Sebelum menyiapkan project Google Cloud sebagai project host dan melampirkan project layanan ke project tersebut, selesaikan langkah-langkah berikut:
- Identifikasi project Google Cloud yang ingin Anda gunakan sebagai project host. Anda dapat menggunakan project yang ada atau membuat project baru.
Identifikasi project Google Cloud yang ingin Anda lampirkan ke project host sebagai project layanan. Anda harus mengidentifikasi semua project yang berisi layanan dan workload yang ingin Anda daftarkan ke aplikasi App Hub. Resource dalam project lain tidak akan terlihat oleh App Hub. Project layanan memiliki persyaratan berikut:
- Project layanan harus berada dalam organisasi yang sama dengan project host.
- Project layanan hanya dapat dilampirkan ke satu project host dalam satu waktu.
- Project host dapat bertindak sebagai project layanan untuk mengelola resourcenya sendiri, tetapi Anda tidak dapat melampirkannya sebagai project layanan ke project host lain.
Peran yang diperlukan
Untuk mendapatkan izin yang
diperlukan untuk melampirkan project layanan ke project host,
minta administrator untuk memberi Anda
Admin App Hub (roles/apphub.admin)
Peran IAM di project host dan di setiap project layanan yang ingin Anda lampirkan.
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.
Menyiapkan project host
Untuk mengonfigurasi project Google Cloud sebagai project host, ikuti langkah-langkah berikut:
Konsol
Di konsol Google Cloud , gunakan pemilih project untuk memilih project yang ingin Anda konfigurasi sebagai project host.
-
Enable the required API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Pastikan Google Cloud CLI versi terbaru telah diinstal:
gcloud components updateTemukan project ID dari project Google Cloud yang ingin Anda konfigurasi sebagai project host.
Tetapkan project host sebagai project default untuk perintah:
gcloud config set project HOST_PROJECT_IDGanti
HOST_PROJECT_IDdengan ID project yang ingin Anda konfigurasi sebagai project host.Aktifkan App Hub API di project host:
gcloud services enable apphub.googleapis.com \ --project=HOST_PROJECT_ID
Lampirkan project layanan
Lampirkan project layanan yang berisi layanan dan workload yang ingin Anda daftarkan di aplikasi App Hub ke project host:
Konsol
Di konsol Google Cloud , gunakan pemilih project untuk memilih project host.
Buka halaman Setelan dari App Hub:
Klik Attach projects.
Pilih project layanan yang akan dilampirkan ke project host dengan salah satu cara berikut:
- Dari daftar project, centang kotak untuk project yang ingin Anda lampirkan sebagai project layanan.
- Filter nama project dan centang kotak di sampingnya.
Klik Pilih.
Tabel Project Layanan yang Terlampir menampilkan project layanan yang dipilih.
Klik Close.
gcloud
- Temukan project ID setiap Google Cloud project yang ingin Anda konfigurasi sebagai project layanan.
Lampirkan setiap project layanan:
gcloud apphub service-projects add SERVICE_PROJECT_ID \ --project=HOST_PROJECT_IDGanti kode berikut:
SERVICE_PROJECT_ID: ID project layanan yang akan dilampirkan.HOST_PROJECT_ID: ID project host.
Ulangi proses sebelumnya untuk setiap project layanan yang ingin Anda lampirkan ke project host.
Terraform
Untuk melampirkan project layanan ke project host menggunakan Terraform, gunakan
resource google_apphub_service_project_attachment,
misalnya:
resource "google_apphub_service_project_attachment" "example" {
service_project_attachment_id = google_project.service_project.project_id
depends_on = [time_sleep.wait_120s]
}
resource "google_project" "service_project" {
project_id ="project-1"
name = "Service Project"
org_id = "123456789"
deletion_policy = "DELETE"
}
resource "time_sleep" "wait_120s" {
depends_on = [google_project.service_project]
create_duration = "120s"
}
Untuk melepaskan project layanan dari project host, lihat Menghapus project layanan.
Menetapkan peran dan izin App Hub
Untuk memberikan peran dan izin App Hub yang sesuai kepada pengguna App Hub di project host dan project layanan, ikuti langkah-langkah berikut:
Konsol
Di konsol Google Cloud , gunakan pemilih project untuk memilih project host.
Buka halaman IAM:
Klik Grant access. Panel Berikan akses akan terbuka.
Di kolom New principals, masukkan alamat email principal yang ingin Anda beri akses ke App Hub.
Klik Pilih peran, lalu masukkan App Hub di kolom Filter.
Pilih peran IAM App Hub yang ingin Anda tetapkan ke akun utama, lalu klik Simpan.
Di setiap project layanan App Hub yang Anda lampirkan ke project host, ulangi proses sebelumnya untuk memberikan peran yang sama kepada pengguna yang sama.
gcloud
Temukan project ID dari setiap project Google Cloud yang Anda konfigurasi sebagai project host dan project layanan.
Memberi akses ke akun utama di project host:
gcloud projects add-iam-policy-binding HOST_PROJECT_ID \ --member='user:EMAIL_ADDRESS' \ --role='ROLE_NAME'Ganti kode berikut:
HOST_PROJECT_ID: ID project host.EMAIL_ADDRESS: alamat email principal yang harus mendapatkan akses App Hub di project host. Nilai ini harus memiliki formatusername@yourdomain, misalnya,my.user@example.com.ROLE_NAME: peran IAM App Hub yang ingin Anda tetapkan ke akun utama, misalnya,roles/apphub.admin.
Di setiap project layanan App Hub yang Anda lampirkan ke project host, berikan peran yang sama kepada pengguna yang sama:
gcloud projects add-iam-policy-binding SERVICE_PROJECT_ID \ --member='user:EMAIL_ADDRESS' \ --role='ROLE_NAME'Ganti
SERVICE_PROJECT_IDdengan ID project layanan yang aksesnya Anda berikan.
Menyiapkan Kontrol Layanan VPC
Untuk melindungi aplikasi Anda dengan perimeter Kontrol Layanan VPC, tambahkan project host dan project layanan App Hub Anda ke perimeter sebelum Anda membuat aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menggunakan Kontrol Layanan VPC dengan App Hub.
Opsional: Mengonfigurasi cakupan metrik
Untuk melihat metrik sistem aplikasi dalam project host Anda di Cloud Monitoring, tambahkan project layanan terlampir ke cakupan metrik project host. Project host berfungsi sebagai project pencakupan untuk data deret waktu, sehingga memungkinkan pembuatan diagram dan pemantauan data. Untuk mengetahui informasi dan petunjuk konfigurasi selengkapnya, lihat Mengonfigurasi cakupan metrik dan Mengonfigurasi cakupan metrik menggunakan API.
Menghapus project layanan
Untuk melepaskan project layanan dari project host, ikuti langkah-langkah berikut:
Konsol
Di konsol Google Cloud , gunakan pemilih project untuk memilih project host.
Buka halaman Setelan dari App Hub:
Centang kotak project layanan yang ingin Anda hapus dari project host.
Klik Lepaskan project.
Tabel Attached Service Project(s) diperbarui untuk menampilkan hanya project yang tetap terlampir ke project host.
gcloud
- Temukan project ID dari setiap project layanan yang ingin Anda hapus dari project host.
Hapus setiap project layanan:
gcloud apphub service-projects remove SERVICE_PROJECT_ID \ --project=HOST_PROJECT_IDGanti kode berikut:
SERVICE_PROJECT_ID: ID project layanan yang akan dihapus.HOST_PROJECT_ID: ID project host.
Ulangi proses sebelumnya untuk setiap project layanan yang ingin Anda hapus dari project host.
Saat Anda menghapus project layanan dari project host, pertimbangkan juga untuk menghapusnya dari cakupan metrik project host jika sebelumnya Anda mengonfigurasi cakupan metrik. Untuk mengetahui informasi selengkapnya, lihat Menghapus project dari cakupan metrik.
Langkah berikutnya
- Mendaftarkan resource yang ada ke aplikasi
- Menyiapkan pemantauan aplikasi
- Peran dan izin IAM App Hub
- Ringkasan App Hub