Membuat dan memverifikasi template
Template aplikasi di Application Design Center memungkinkan Anda menentukan arsitektur yang dapat digunakan kembali dengan menghubungkan komponen infrastruktur. Dalam panduan memulai ini, Anda akan menyelesaikan langkah-langkah berikut:
- Buat template aplikasi web tiga tingkat dengan komponen frontend, backend, dan database menggunakan kanvas desain, perintah bahasa alami di Gemini Cloud Assist, atau Google Cloud CLI App Design Center.
- Verifikasi template dengan men-deploy aplikasi pengujian.
Gambar berikut menunjukkan kanvas desain, yang mencakup komponen dan koneksi aplikasi:
Sebelum memulai
Buat project deployment di folder khusus aplikasi.
Anda akan men-deploy resource Google Cloud ke project ini saat men-deploy aplikasi.
Pastikan penagihan diaktifkan untuk project deployment Anda.
Menyiapkan alat
Anda dapat menggunakan salah satu opsi berikut untuk menyelesaikan panduan memulai ini.
Gunakan kanvas desain di konsol Google Cloud .
Untuk menggunakan Gemini Cloud Assist dalam membuat desain, lihat Menyiapkan Gemini Cloud Assist.
-
Instal Google Cloud CLI.
-
Konfigurasi gcloud CLI agar menggunakan identitas gabungan Anda.
Untuk mengetahui informasi selengkapnya, lihat Login ke gcloud CLI dengan identitas gabungan Anda.
-
Untuk melakukan inisialisasi gcloud CLI, jalankan perintah berikut:
gcloud init
Pastikan Anda memiliki peran yang diperlukan
Sebelum memulai panduan memulai, minta administrator untuk memberi Anda peran yang diperlukan untuk mendesain, membangun, dan men-deploy, seperti yang tercantum dalam tabel berikut:
| Tugas | Peran yang diperlukan |
|---|---|
| Membuat, mendesain, dan mengedit template standar | Admin Application Design Center (roles/designcenter.admin), atauPengguna Application Design Center ( roles/designcenter.user) |
| Men-deploy aplikasi dan konfigurasi | Admin Aplikasi (roles/designcenter.applicationAdmin), atauEditor Aplikasi ( roles/designcenter.applicationEditor) |
| Membuat akun layanan selama deployment | Membuat akun layanan (roles/iam.serviceAccountCreator) di project pengelolaan |
| Memberikan akses akun layanan ke project deployment | Project IAM Admin (roles/resourcemanager.projectIamAdmin) di project deployment |
Untuk mengetahui informasi selengkapnya tentang peran, lihat Kontrol akses dengan IAM.
Membuat template baru dan menambahkan detail
Kanvas desain
Di konsol Google Cloud , buka halaman Templates.
Klik Create Template dan masukkan detail berikut:
Di kolom Template ID, masukkan
quickstart-three-tier-web-app.Di kolom Template Name, masukkan
Quickstart three-tier web app.Di kolom Description, masukkan
A template to generate a three-tier web application.Klik Create template.
Template akan dibuat dan kanvas desain akan ditampilkan.
Di area Components, klik komponen berikut untuk menambahkannya ke kanvas desain:
- Cloud Run (tambahkan dua komponen)
- Cloud SQL (PostgreSQL)
Untuk membuat koneksi antar-komponen, lakukan hal berikut:
Dari titik biru di bagian bawah cloud-run-1, tarik ke titik biru di bagian atas cloud-run-2.
Dari titik biru di bagian bawah cloud-run-2, tarik ke titik biru di bagian atas sql-postgresql-1.
Template Anda berisi tiga komponen. Kanvas ditampilkan di antara komponen untuk merepresentasikan koneksi.
Gemini Cloud Assist
Di toolbar konsol Google Cloud , klik spark Open or close Gemini Cloud Assist chat.
Panel Cloud Assist akan terbuka.
Di chat Gemini Cloud Assist, masukkan perintah berikut:
I want to create a three-tier web application.Gemini Cloud Assist membuat desain dasar untuk aplikasi web tiga tingkat.
Untuk menghapus komponen load balancer dan Secret Manager, masukkan perintah berikut:
I don't need load balancers or Secret Manager.Gemini Cloud Assist memperbarui desain untuk menghapus komponen.
Tinjau desain yang diperbarui yang mencakup komponen berikut:
- Cloud Run (dua komponen)
- Cloud SQL untuk PostgreSQL
Klik Edit desain aplikasi.
Halaman Buat template baru akan ditampilkan.
Masukkan detail template berikut:
Di kolom Template ID, masukkan
quickstart-three-tier-web-app.Di kolom Template Name, masukkan
Quickstart three-tier web app.Di kolom Description, masukkan
A template to generate a three-tier web application.
Klik Create template.
Sistem akan membuat template baru dan menampilkan kanvas desain.
gcloud CLI
Membuat template aplikasi.
gcloud design-center spaces application-templates create quickstart-three-tier-web-app \ --display-name="Quickstart three-tier web app" \ --description="A template to generate a three-tier web application" \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_IDMencantumkan template yang dibagikan di katalog Google.
gcloud design-center spaces shared-templates list \ --google-catalog \ --location=us-central1- Identifikasi ID template yang dibagikan untuk Cloud Run dan Cloud SQL.
Tambahkan komponen Cloud Run untuk digunakan sebagai frontend.
gcloud design-center spaces application-templates components create cloud-run-1 \ --application-template=quickstart-three-tier-web-app \ --shared-template-revision-uri=google/1b5e09c8-780f-484e-b8ed-c7178f4e4342 \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_IDTambahkan komponen Cloud Run kedua untuk digunakan sebagai backend.
gcloud design-center spaces application-templates components create cloud-run-2 \ --application-template=quickstart-three-tier-web-app \ --shared-template-revision-uri=google/1b5e09c8-780f-484e-b8ed-c7178f4e4342 \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_IDTambahkan komponen Cloud SQL.
gcloud design-center spaces application-templates components create sql-postgresql-1 \ --application-template=quickstart-three-tier-web-app \ --shared-template-revision-uri=google/45be1bc2-89bc-477b-9b5d-64c41ff3b146 \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_IDHubungkan cloud-run-1 ke cloud-run-2.
gcloud design-center spaces application-templates components connections create frontend-to-backend \ --application-template=quickstart-three-tier-web-app \ --component=cloud-run-1 \ --destination-component-uri=cloud-run-2 \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_IDHubungkan cloud-run-2 ke sql-postgresql-1.
gcloud design-center spaces application-templates components connections create backend-to-database \ --application-template=quickstart-three-tier-web-app \ --component=cloud-run-2 \ --destination-component-uri=sql-postgresql-1 \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_IDCommit perubahan Anda untuk membuat revisi template aplikasi.
gcloud design-center spaces application-templates commit quickstart-three-tier-web-app \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_ID
Membuat draf aplikasi
Kanvas desain
Dari kanvas desain, klik
Configure an app .Klik
Create new application dan lakukan tindakan berikut:Di kolom Name, masukkan
quickstart-three-tier-test.Di kolom nama tampilan, masukkan
Quickstart three-tier test.Dari daftar Region, pilih
us-central1 (Iowa).Dari daftar Environment, pilih
Test.Dari daftar Criticality, pilih
Low.Di area Scope, dari daftar Application scope, pilih
Regional.
Klik Create Application.
Sistem akan membuat draf permohonan.
gcloud CLI
Identifikasi URI revisi terbaru template aplikasi Anda.
gcloud design-center spaces application-templates describe quickstart-three-tier-web-app \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_ID \ --format='yaml(name,latestRevision)'Buat draf aplikasi berdasarkan template Anda.
gcloud design-center spaces applications create quickstart-three-tier-test \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_ID \ --source-application-template-revision=projects/MANAGEMENT_PROJECT_ID/locations/us-central1/spaces/SPACE/applicationTemplates/quickstart-three-tier-web-app/revisions/TEMPLATE_REVISION \ --display-name="Quickstart three-tier test" \ --environment-type=test \ --criticality-type=low \ --scope-type=regional \ --deployment-region=us-central1
Mengonfigurasi komponen
Kanvas desain
Di kanvas desain, klik cloud-run-1 dan lakukan hal berikut di area Configuration:
Dari daftar Project ID, pilih project deployment yang Anda buat di bagian Sebelum memulai. Resource akan di-deploy ke project ini.
Di kolom Service Name, masukkan
frontend-service.Klik Simpan.
Di kanvas desain, klik cloud-run-2 dan lakukan hal berikut di area Configuration:
Dari daftar Project ID, pilih project deployment yang Anda buat di bagian Sebelum memulai. Resource akan di-deploy ke project ini.
Di kolom Service Name, masukkan
backend-service.Klik Simpan.
Di kanvas desain, klik sql-postgresql-1 dan lakukan hal berikut di area Configuration:
Dari daftar Project ID, pilih project deployment yang Anda buat di bagian Sebelum memulai. Resource akan di-deploy ke project ini.
Di kolom Name, masukkan
database-postgresql.Dari daftar Database Version, pilih
POSTGRES_15.Dari menu drop-down Zone, pilih
us-central1-a.Klik Simpan.
Kanvas menampilkan tanda centang hijau di setiap komponen untuk menunjukkan bahwa Anda telah menentukan parameter yang diperlukan. Anda kini dapat men-deploy draf aplikasi ke lingkungan
Testuntuk verifikasi.
gcloud CLI
Menjelaskan aplikasi untuk mengidentifikasi parameter konfigurasi yang diperlukan.
gcloud design-center spaces applications describe quickstart-three-tier-test \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_ID \ --format='yaml(name,componentParameters)'Untuk setiap komponen, di direktori utama Anda, buat file JSON yang berisi parameter value yang diperlukan.
Buat
frontend-service.json.{ "component": "projects/MANAGEMENT_PROJECT_ID/locations/us-central1/spaces/SPACE/applicationTemplates/quickstart-three-tier-web-app/components/cloud-run-1", "parameters": [ { "key": "service_name", "value": "frontend-service" }, { "key": "project_id", "value": "DEPLOYMENT_PROJECT_ID" } ] }Buat
backend-service.json.{ "component": "projects/MANAGEMENT_PROJECT_ID/locations/us-central1/spaces/SPACE/applicationTemplates/quickstart-three-tier-web-app/components/cloud-run-2", "parameters": [ { "key": "service_name", "value": "backend-service" }, { "key": "project_id", "value": "DEPLOYMENT_PROJECT_ID" } ] }Buat
database-postgresql.json.{ "component": "projects/MANAGEMENT_PROJECT_ID/locations/us-central1/spaces/SPACE/applicationTemplates/quickstart-three-tier-web-app/components/sql-postgresql-1", "parameters": [ { "key": "name", "value": "database-postgresql" }, { "key": "project_id", "value": "DEPLOYMENT_PROJECT_ID" }, { "key": "database_version", "value": "POSTGRES_15" }, { "key": "region", "value": "us-central1" }, { "key": "zone", "value": "us-central1-a" } ] }
Perbarui aplikasi untuk mengonfigurasi parameter yang diperlukan.
gcloud design-center spaces applications update quickstart-three-tier-test \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_ID \ --component-parameters=./frontend-service.json \ --component-parameters=./backend-service.json \ --component-parameters=./database-postgresql.json
Men-deploy aplikasi
Kanvas desain
Klik
Deploy .Di area Select a service account, lakukan hal berikut:
Klik Create a new service account.
Klik Lanjutkan.
Klik Deploy.
Setelah beberapa menit, sistem akan men-deploy aplikasi dan membuat resource dalam project Anda. Sistem akan menampilkan detail berikut:
- Link ke App Hub, tempat Anda dapat melihat detail resource yang di-deploy, termasuk link ke dasbor pemantauan.
- Link ke log Cloud Build, yang dapat Anda gunakan untuk memecahkan masalah error deployment.
- Output seperti URI layanan akan ditampilkan, yang dapat Anda gunakan untuk berinteraksi dengan resource yang di-deploy.
Untuk melanjutkan panduan memulai ini, lihat Memperbarui template aplikasi dan men-deploy ulang.
gcloud CLI
Menjelaskan aplikasi untuk mengidentifikasi peran IAM yang diperlukan untuk akun layanan deployment Anda.
gcloud design-center spaces applications describe quickstart-three-tier-test \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_ID \ --format='yaml(name,projectParameters)'Buat akun layanan baru untuk men-deploy aplikasi.
gcloud iam service-accounts create quickstart-service-account \ --project=MANAGEMENT_PROJECT_ID \ --display-name="Quickstart service account" \ --description="A service account to deploy the ADC quickstart"Tambahkan peran project deployment yang diperlukan ke akun layanan.
#!/bin/bash PROJECT_ID="DEPLOYMENT_PROJECT_ID" SERVICE_ACCOUNT="quickstart-service-account@MANAGEMENT_PROJECT_ID." ROLES=( "roles/iap.admin" "roles/compute.networkAdmin" "roles/compute.viewer" "roles/run.admin" "roles/iam.serviceAccountAdmin" "roles/serviceusage.serviceUsageAdmin" "roles/cloudkms.admin" "roles/logging.logWriter" "roles/iam.serviceAccountUser" "roles/cloudsql.admin" "roles/cloudkms.autokeyAdmin" "roles/storage.admin" "roles/serviceusage.serviceUsageViewer" "roles/resourcemanager.projectIamAdmin" "roles/cloudkms.cryptoKeyEncrypterDecrypter" ) for role in "${ROLES[@]}"; do echo "Adding role: ${role}" gcloud projects add-iam-policy-binding "${PROJECT_ID}" \ --member="serviceAccount:${SERVICE_ACCOUNT}" \ --role="${role}" echo "---" done echo "Finished adding roles."Tambahkan peran project pengelolaan yang diperlukan ke akun layanan.
#!/bin/bash PROJECT_ID="MANAGEMENT_PROJECT_ID" SERVICE_ACCOUNT="quickstart-service-account@MANAGEMENT_PROJECT_ID." ROLES=( "roles/config.agent" "roles/apphub.editor" ) for role in "${ROLES[@]}"; do echo "Adding role: ${role}" gcloud projects add-iam-policy-binding "${PROJECT_ID}" \ --member="serviceAccount:${SERVICE_ACCOUNT}" \ --role="${role}" echo "---" done echo "Finished adding roles."Identifikasi nomor project pengelolaan Anda.
gcloud projects describe MANAGEMENT_PROJECT_ID \ --format="value(projectNumber)"Tambahkan binding kebijakan IAM untuk peran
roles/iam.serviceAccountUserdi project pengelolaan Anda.gcloud iam service-accounts add-iam-policy-binding projects/MANAGEMENT_PROJECT_ID/serviceAccounts/quickstart-service-account@MANAGEMENT_PROJECT_ID. \ --project=MANAGEMENT_PROJECT_ID \ --member="serviceAccount:service-MANAGEMENT_PROJECT_NUMBER@gcp-sa-designcenter." \ --role="roles/iam.serviceAccountUser"Perbarui aplikasi untuk menggunakan akun layanan Anda.
gcloud design-center spaces applications update quickstart-three-tier-test \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_ID \ --service-account=projects/MANAGEMENT_PROJECT_ID/serviceAccounts/quickstart-service-account@MANAGEMENT_PROJECT_ID.Beri pengguna Anda izin actAs di akun layanan Anda.
gcloud iam service-accounts add-iam-policy-binding quickstart-service-account@MANAGEMENT_PROJECT_ID. \ --project=MANAGEMENT_PROJECT_ID \ --member="user:USER" \ --role="roles/iam.serviceAccountUser"USER adalah pengguna Google Cloud Anda. Contohnya,
dana@example.com.Melihat pratinjau aplikasi:
Pratinjau memerlukan waktu beberapa menit untuk dibuat.
gcloud design-center spaces applications preview quickstart-three-tier-test \ --location=us-central1 \ --space=SPACE \ --project=MANAGEMENT_PROJECT_IDDeploy aplikasi.
gcloud design-center spaces applications deploy quickstart-three-tier-test \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_ID \ --asyncIdentifikasi ID operasi.
Deployment memerlukan waktu beberapa menit hingga selesai. Lacak status deployment.
gcloud design-center operations describe operation-OPERATION_ID \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_IDSetelah deployment selesai, identifikasi parameter output aplikasi.
gcloud design-center spaces applications describe quickstart-three-tier-test \ --space=SPACE \ --location=us-central1 \ --project=MANAGEMENT_PROJECT_ID \ --format='yaml(name,appParameters,componentParameters,deploymentMetadata,deploymentRevision,previewReference)'
Opsional: Memantau deployment Anda
Setelah men-deploy aplikasi, Anda dapat menggunakan Pemantauan Aplikasi untuk melihat telemetri aplikasi serta memantau kondisi dan performa:
-
Di konsol Google Cloud , buka halaman Application monitoring:
Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Monitoring.
Dari pemilih project di konsol Google Cloud , pilih project pengelolaan.
Untuk petunjuk mendetail tentang cara menggunakan dasbor standar dan menjelajahi data telemetri, lihat Melihat telemetri aplikasi.
Anda juga bisa mendapatkan informasi kondisi dan performa tambahan di Cloud Hub, termasuk kegagalan deployment dan deployment yang dapat diupdate, informasi tentang insiden Google Cloud yang memengaruhi aplikasi Anda, dan layanan yang mendekati batas kuota.
Pembersihan
Agar akun Google Cloud Anda tidak dikenai biaya untuk resource yang digunakan pada halaman ini, hapus project Google Cloud yang berisi resource tersebut.
Menghapus aplikasi yang di-deploy
Dari menu navigasi, klik Applications.
Dari tabel, klik Panduan memulai aplikasi web tiga tingkat.
Klik Actions, lalu pilih Delete application.
Di kolom Delete, masukkan
Quickstart three-tier web app.Klik Hapus.
Sistem akan menghapus aplikasi, termasuk hal berikut:
- Detail aplikasi akan dihapus dari App Design Center.
- Aplikasi App Hub yang mendasarinya akan dihapus.
- Resource yang mendasarinya akan dihapus.
Opsional: Menghapus project
Untuk menghapus project deployment yang Anda buat di Sebelum memulai, lakukan hal berikut:
- Di konsol Google Cloud , buka halaman Manage resources.
- Pada daftar project, pilih project yang ingin Anda hapus, lalu klik Hapus.
- Pada layar perintah, ketik project ID, lalu klik Matikan.
Langkah berikutnya
- Pelajari cara mengubah arsitektur dengan mengupdate template dan men-deploy ulang.
- Tinjau konsep dan manfaat inti dengan ringkasan App Design Center.
- Buat template menggunakan bahasa alami dengan bantuan Gemini.
- Duplikasi dan sesuaikan arsitektur template di Panduan memulai: Menyesuaikan dan men-deploy template Google.
- Tentukan konfigurasi Anda sendiri dengan mendesain template aplikasi.