Template aplikasi standar di Application Design Center memungkinkan Anda menentukan arsitektur yang diinginkan serta mengatur resource dan konfigurasi yang digunakan tim pengembangan dalam deployment mereka. Anda dapat membagikan template standar kepada anggota ruang, memublikasikan template ke katalog untuk ruang lain, atau menyematkan template dalam template komposit yang lebih besar. Saat developer membuat aplikasi dari template standar, mereka dapat mengonfigurasi setiap komponen tanpa menambahkan atau menghapus komponen. Setiap template menghasilkan kode Terraform yang dapat didownload atau di-deploy langsung oleh developer dari App Design Center.
Sebelum memulai
Untuk melakukan tugas dalam dokumen ini, minta administrator untuk memberi Anda peran yang diperlukan pada folder khusus aplikasi atau project pengelolaan, seperti yang tercantum dalam tabel berikut:
| Tugas | Peran yang diperlukan |
|---|---|
| Membuat, mendesain, dan mengedit template aplikasi standar | Admin Application Design Center (roles/designcenter.admin), atauPengguna Application Design Center ( roles/designcenter.user) |
| Memublikasikan atau membagikan template standar ke katalog | Admin Application Design Center (roles/designcenter.admin) |
Untuk mengetahui informasi selengkapnya tentang peran, lihat Kontrol akses dengan IAM.
Membuat template aplikasi standar
Buat template aplikasi standar untuk membagikan desain arsitektur Anda kepada tim pengembangan. Anda dapat menambahkan komponen berikut ke desain template:
Aset: Resource tingkat tinggi yang membantu Anda mengontrol resource lain, seperti akun layanan.
Layanan: Antarmuka jaringan atau API yang digunakan melalui jaringan, seperti Cloud Storage dan Vertex AI.
Workload: Deployment biner yang menjalankan fungsi bisnis, seperti Cloud Run dan Compute Engine.
Anda dapat memilih dari komponen berikut:
- Komponen yang dirancang oleh Google, yang menggabungkan Google Cloud praktik terbaik dan konfigurasi keamanan default.
- Komponen yang Anda impor, berdasarkan modul Terraform Anda sendiri.
Saat Anda mendesain template, App Design Center akan membuat kode Terraform untuk mencerminkan detail desain dan konfigurasi.
Menentukan detail template
Detail template membantu Anda mengategorikan template dan membantu developer memutuskan apakah akan menggunakan template Anda.
Untuk memasukkan detail template, lakukan tindakan berikut:
Kanvas desain
Dari menu navigasi, klik Template.
Klik Create Template.
Kolom ID Template akan diisi secara otomatis. Atau, masukkan ID unik untuk template. Kolom ini wajib diisi.
Di kolom Template Name, masukkan ID yang dapat dibaca manusia untuk ditampilkan di konsol Google Cloud .
Jika Anda tidak memberikan nama, ID Template akan disalin ke kolom ini.
Di kolom Description, masukkan penjelasan singkat tentang tujuan aplikasi.
Klik Create template. Kanvas desain akan ditampilkan.
gcloud CLI
Buat template aplikasi baru.
gcloud design-center spaces application-templates create APPLICATION_TEMPLATE \
--project=PROJECT \
--location=LOCATION \
--space=SPACE \
--display-name=DISPLAY_NAME \
--description=DESCRIPTION
Ganti kode berikut:
APPLICATION_TEMPLATE: ID template untuk template aplikasi yang ingin Anda buat.PROJECT: ID project pengelolaan Anda.LOCATION: Region template aplikasi.SPACE: ID ruang Anda.DISPLAY_NAME: Nama yang akan ditampilkan di konsol Google Cloud .DESCRIPTION: Deskripsi singkat.
Untuk mengetahui informasi selengkapnya, lihat gcloud design-center spaces application-templates create.
Mendesain template
Desain template Anda dengan menambahkan dan menghubungkan komponen. Contoh berikut mencakup tiga komponen yang terhubung di kanvas desain.
Anda dapat mendesain template dengan menambahkan komponen ke titik awal berikut:
- Kanvas kosong.
- Template yang disediakan Google.
- Template yang Anda buat dengan bantuan Gemini.
Untuk membantu developer mengonfigurasi aplikasi berdasarkan template Anda, tentukan variabel input dan output tertentu. Variabel membantu Anda menentukan hal berikut:
Input spesifik yang harus diberikan developer saat membuat aplikasi berdasarkan template Anda. Misalnya, Anda dapat memberikan nilai variabel yang berbeda untuk setiap lingkungan saat men-deploy aplikasi ke lingkungan pengembangan, produksi, dan pengujian. Variabel ini otomatis diekspos dalam file
variables.tfdanoutputs.tfTerraform yang dihasilkan.Koneksi antara dua template aplikasi standar yang disematkan dalam template gabungan. Misalnya, untuk membuat koneksi dalam template gabungan, template database mungkin menghasilkan variabel nama database yang digunakan sebagai input untuk template logika aplikasi.
Untuk mendesain template, lakukan langkah-langkah berikut:
Kanvas desain
Dari kanvas desain, pilih Design untuk melihat kanvas.
Lakukan salah satu tindakan berikut untuk memulai:
Untuk memulai dari awal, dari area Components, klik komponen untuk menambahkannya ke area kanvas.
Untuk memulai dari template yang disediakan Google, di area Get Started pada kanvas, klik nama template.
Untuk menggunakan chat bahasa alami guna membuat template, klik Custom Application with Gemini.
Untuk membuat saluran komunikasi antar-komponen, lakukan salah satu hal berikut:
Untuk menghubungkan dua komponen di kanvas, tarik dari titik biru di satu komponen ke titik biru di komponen lain.
Untuk menambahkan ke komponen yang ada, klik Tambahkan, lalu pilih komponen yang akan ditambahkan.
Untuk detail koneksi, lihat dokumentasi konfigurasi untuk setiap resource yang didukung.
Untuk menghapus komponen atau koneksi, lakukan tindakan berikut:
Di kanvas, klik komponen atau koneksi.
Di area Configuration, klik Delete.
Di kolom, masukkan delete.
Klik Hapus.
Untuk menentukan variabel input dan output untuk template Anda, lakukan hal berikut:
Klik Detail template.
Di panel Template details, klik tab Variables.
Di area Edit Variable, lakukan tindakan berikut.
Dari daftar Component, pilih komponen yang menjadi dasar variabel Anda.
Dari daftar Jenis variabel, pilih salah satu opsi berikut:
Output: Komponen menghasilkan nilai yang mungkin diperlukan untuk koneksi. Misalnya, layanan Cloud Run mungkin menghasilkan alamat IP.
Input: Komponen memerlukan input dari developer atau dari template aplikasi standar lainnya. Misalnya, template pemrosesan data mungkin memerlukan nama database dari template penyimpanan data.
Untuk membuat variabel lain, klik Tambahkan variabel dan ulangi langkah-langkah ini.
gcloud CLI
Identifikasi URI revisi template untuk komponen katalog Google yang ingin Anda tambahkan ke template.
gcloud design-center spaces shared-templates list \ --google-catalog \ --location=us-central1Untuk mengetahui informasi selengkapnya, lihat gcloud design-center spaces shared-templates list.
Tambahkan komponen ke template aplikasi Anda.
gcloud design-center spaces application-templates components create COMPONENT \ --project=PROJECT \ --location=LOCATION \ --space=SPACE \ --application-template=APPLICATION_TEMPLATE \ --shared-template-revision-uri=SHARED_TEMPLATE_URIGanti kode berikut:
COMPONENT: ID komponen untuk komponen yang ingin Anda tambahkan ke template.PROJECT: ID project pengelolaan Anda.LOCATION: Region template aplikasi.SPACE: ID ruang Anda.APPLICATION_TEMPLATE: ID template untuk template aplikasi tempat Anda menambahkan komponen.SHARED_TEMPLATE_URI: URI template yang dibagikan komponen. Contoh,projects/my-project/locations/us-central1/spaces/my-space/sharedTemplates/my-shared-template/revisions/rev1.
Untuk mengetahui informasi selengkapnya, lihat gcloud design-center spaces application-templates components create.
Tambahkan komponen kedua ke template Anda.
gcloud design-center spaces application-templates components create COMPONENT_2 \ --project=PROJECT \ --location=LOCATION \ --space=SPACE \ --application-template=APPLICATION_TEMPLATE \ --shared-template-revision-uri=SHARED_TEMPLATE_URI_2Ganti kode berikut:
COMPONENT_2: ID komponen untuk komponen kedua yang ingin Anda tambahkan ke template.PROJECT: ID project pengelolaan Anda.LOCATION: Region template aplikasi.SPACE: ID ruang Anda.APPLICATION_TEMPLATE: ID template untuk template aplikasi tempat Anda menambahkan komponen.SHARED_TEMPLATE_URI_2: URI template bersama komponen kedua. Contoh,projects/my-project/locations/us-central1/spaces/my-space/sharedTemplates/my-shared-template/revisions/rev1.
Untuk mengetahui informasi selengkapnya, lihat gcloud design-center spaces application-templates components create.
Buat koneksi antara kedua komponen.
gcloud design-center spaces application-templates components connections create CONNECTION \ --project=PROJECT \ --location=LOCATION \ --space=SPACE \ --application-template=APPLICATION_TEMPLATE \ --component=COMPONENT \ --destination-component-uri=COMPONENT_2Ganti kode berikut:
CONNECTION: ID koneksi untuk koneksi yang ingin Anda tambahkan ke template.PROJECT: ID project pengelolaan Anda.LOCATION: Region template aplikasi.SPACE: ID ruang Anda.APPLICATION_TEMPLATE: ID template untuk template aplikasi tempat Anda menambahkan koneksi.COMPONENT: ID komponen sumber.COMPONENT_2: ID komponen tujuan.
Untuk mengetahui informasi selengkapnya, lihat gcloud design-center spaces application-templates components connections create.
Tambahkan variabel input dan output untuk memerlukan input developer, atau untuk terhubung ke komponen lain dalam template gabungan.
gcloud design-center spaces application-templates update APPLICATION_TEMPLATE \ --project=PROJECT \ --location=LOCATION \ --space=SPACE \ --add-root-input-variables=componentUri=COMPONENT_URI,variable=VARIABLE \ --add-root-output-variables=componentUri=COMPONENT_URI,variable=VARIABLEGanti kode berikut:
APPLICATION_TEMPLATE: ID template untuk template aplikasi tempat Anda menambahkan variabel.PROJECT: ID project pengelolaan Anda.LOCATION: Region template aplikasi.SPACE: ID ruang Anda.COMPONENT_URI: URI untuk komponen yang menjadi dasar variabel Anda.VARIABLE: Variabel komponen yang ingin Anda input atau output. Misalnya, komponen database mungkin memiliki variabeldatabase_nameyang mungkin ingin Anda output atau memerlukan input dari developer.
Untuk mengetahui informasi selengkapnya, lihat gcloud design-center spaces application-templates update.
Mengonfigurasi nilai default untuk komponen
Untuk setiap komponen yang Anda tambahkan ke template, Anda dapat menentukan detail konfigurasi default, seperti project resource dan lokasi deployment. Application Design Center menerapkan setelan default ini saat aplikasi dibuat dari template ini.
Developer aplikasi juga dapat mengubah detail koneksi jika konfigurasi default tidak memenuhi persyaratan mereka. Misalnya, Anda dapat mengubah nama kunci variabel lingkungan, mengubah port koneksi, atau menambahkan peran tambahan ke akun layanan saat membuat aplikasi.
Sebelum men-deploy aplikasi, developer dapat melihat dan mengubah nilai default yang Anda konfigurasi di template. Developer harus mengonfigurasi detail yang diperlukan untuk setiap resource yang didukung.
Untuk mengonfigurasi komponen dan koneksi, lakukan hal berikut:
Kanvas desain
Dari kanvas desain, klik komponen.
Di area Configuration, dari daftar Project ID, pilih project tempat Anda ingin men-deploy resource. Pilih project dengan kualifikasi berikut:
Project harus berada di dalam folder khusus aplikasi yang dipilih.
Project tidak boleh berupa project pengelolaan.
Konfigurasi setelan tambahan untuk fasilitas. Misalnya, untuk Cloud SQL, Anda dapat mengonfigurasi hal berikut:
- Wilayah
- Konfigurasi pencadangan
- Flag database
- Konfigurasi IP
Untuk link ke dokumentasi konfigurasi setiap komponen, lihat Referensi yang didukung.
Saat Anda menghubungkan komponen di kanvas desain, nilai konfigurasi default akan digunakan untuk membuat koneksi. Untuk menambahkan atau mengubah detail koneksi, lakukan hal berikut.
Di kanvas desain, klik koneksi antara dua komponen. Panel Connection akan terbuka dan menampilkan parameter koneksi.
Lakukan salah satu hal berikut:
Untuk mengubah parameter koneksi yang ada, klik Edit.
Untuk menambahkan parameter koneksi baru, klik Add parameter.
Perbarui kolom Kunci dan Nilai. Misalnya, Anda mungkin ingin mengubah detail berikut:
- Nama kunci variabel lingkungan agar sesuai dengan persyaratan aplikasi Anda.
- Nilai port koneksi.
- Peran yang ditambahkan ke akun layanan.
Klik Simpan.
gcloud CLI
Deskripsikan setiap komponen dalam template aplikasi untuk melihat parameter komponen.
gcloud design-center spaces application-templates components describe COMPONENT \ --project=PROJECT \ --location=LOCATION \ --space=SPACE \ --application-template=APPLICATION_TEMPLATEGanti kode berikut:
COMPONENT: ID komponen untuk komponen yang ingin Anda deskripsikan.PROJECT: ID project pengelolaan Anda.LOCATION: Region template aplikasi.SPACE: ID ruang Anda.APPLICATION_TEMPLATE: ID template untuk template aplikasi.
Untuk mengetahui informasi selengkapnya, lihat gcloud design-center spaces application-templates components describe.
Untuk setiap komponen yang ingin Anda ubah, buat file JSON di direktori utama yang berisi parameter value.
Misalnya, Anda dapat membuat file berikut untuk komponen Cloud Run:
[ { "key": "service_name", "value": "frontend-service" }, { "key": "project_id", "value": "DEPLOYMENT_PROJECT" } ]Perbarui setiap komponen dalam template aplikasi untuk mengonfigurasi parameter yang diperlukan.
gcloud design-center spaces application-templates components update COMPONENT \ --project=PROJECT \ --location=LOCATION \ --space=SPACE \ --parameters=PARAMETERS_FILE_PATH \ --application-template=APPLICATION_TEMPLATEGanti kode berikut:
COMPONENT: ID komponen untuk komponen yang ingin Anda perbarui.PROJECT: ID project pengelolaan Anda.LOCATION: Region template aplikasi.SPACE: ID ruang Anda.PARAMETERS_FILE_PATH: File JSON yang menyertakan parameter komponen.APPLICATION_TEMPLATE: ID template untuk template aplikasi.
Untuk mengetahui informasi selengkapnya, lihat gcloud design-center spaces application-templates components update.
Menjelaskan koneksi komponen.
gcloud design-center spaces application-templates components connections describe CONNECTION \ --component=COMPONENT \ --application-template=APPLICATION_TEMPLATE \ --project=PROJECT \ --location=LOCATION \ --space=SPACEGanti kode berikut:
CONNECTION: ID koneksi.COMPONENT: ID komponen.APPLICATION_TEMPLATE: ID template.PROJECT: ID project pengelolaan Anda.LOCATION: Region template aplikasi.SPACE: ID ruang Anda.
Untuk mengetahui informasi selengkapnya, lihat gcloud design-center spaces application-templates components connections describe.
Mengedit parameter koneksi komponen.
gcloud design-center spaces application-templates components connections update CONNECTION \ --component=COMPONENT \ --application-template=APPLICATION_TEMPLATE \ --project=PROJECT \ --location=LOCATION \ --space=SPACE \ --source-component-parameters='[{"key": "SOURCE_KEY", "value": "SOURCE_VALUE"}]'Ganti kode berikut:
CONNECTION: ID koneksi.COMPONENT: ID komponen.APPLICATION_TEMPLATE: ID template.PROJECT: ID project pengelolaan Anda.LOCATION: Region template aplikasi.SPACE: ID ruang Anda.SOURCE_KEY: Kunci parameter baru.SOURCE_VALUE: Nilai parameter baru.
Untuk mengetahui informasi selengkapnya, lihat gcloud design-center spaces application-templates components connections update.
Memverifikasi kepatuhan terhadap framework keamanan
Anda dapat menerapkan serangkaian kebijakan yang konsisten ke aplikasi apa pun yang di-deploy dari template untuk menerapkan persyaratan keamanan tertentu dari organisasi Anda sebelum deployment. Menjalankan penilaian pada fase desain template bersifat opsional, tetapi menyelesaikan kesalahan konfigurasi sejak awal sangat direkomendasikan karena penilaian diterapkan selama fase pra-deployment aplikasi.
Jika Anda memiliki paket Standard Security Command Center, template Anda akan divalidasi berdasarkan framework Google Cloud Security Essentials. Jika memiliki paket Premium atau Enterprise, Anda dapat membuat framework tambahan dan melampirkannya langsung ke template aplikasi dalam batas tingkat folder atau batas satu project.
Untuk mengetahui informasi selengkapnya tentang cara melampirkan framework keamanan ke template, lihat Menerapkan kebijakan keamanan.
Mengedit kode Terraform
Saat Anda mendesain template aplikasi, App Design Center akan membuat kode Terraform untuk mencerminkan detail desain dan konfigurasi. Anda dapat mengedit Terraform untuk menentukan detail konfigurasi komponen.
Sistem akan membuat file Terraform berikut:
main.tf: Kode infrastruktur yang menyertakan modul untuk setiap komponen dalam template.outputs.tf: Mengekspos informasi tentang komponen infrastruktur yang di-deploy.variables.tf: Mendeklarasikan nama, jenis, dan deskripsi untuk variabel yang digunakan dalam filemain.tf.input.tfvars: Menentukan nilai untuk variabel yang digunakan dalam filemain.tf.providers.tf: Menentukan label yang membantu Terraform berinteraksi dengan API dan resource Google Cloud .
Untuk mengetahui informasi latar belakang, lihat Ringkasan Terraform di Google Cloud.
Untuk mengedit kode Terraform, lakukan hal berikut:
Dari kanvas desain, klik Code. Sistem akan menampilkan file Terraform yang dihasilkan.
Klik main.tf. Sistem akan menampilkan modul Terraform untuk setiap komponen.
Edit detail konfigurasi. Untuk mengetahui informasi selengkapnya, lihat dokumentasi konfigurasi untuk setiap resource yang didukung.
Sistem akan otomatis memvalidasi hasil edit Anda, dan menampilkan error jika hasil edit Anda tidak valid.
Untuk menandai dan membandingkan hasil edit Anda, lakukan tindakan berikut:
Klik View diff.
Untuk mengurungkan perubahan, di margin, klik Klik untuk mengurungkan perubahan.
Klik View diff untuk menutup tampilan perbandingan.
Untuk menyimpan hasil edit, klik Simpan perubahan kode.
Untuk memverifikasi perubahan Anda, lakukan hal berikut.
- Klik Desain.
- Klik komponen dan tinjau detail konfigurasinya.
Memverifikasi template
Sebelum membagikan template kepada developer, pastikan template tersebut berfungsi sebagaimana mestinya. Untuk memverifikasi template, lakukan tindakan berikut:
- Buat aplikasi dengan
setelan berikut:
- Dari daftar Environment, pilih TEST.
- Dari daftar Criticality, pilih LOW.
- Men-deploy aplikasi.
- Uji infrastruktur Anda untuk memastikan bahwa infrastruktur tersebut memenuhi persyaratan Anda.
- Untuk menghindari biaya berulang, hapus deployment pengujian.
Membagikan template ke katalog
Setelah memverifikasi template, Anda dapat memublikasikan template ke katalog. Template ini dapat digunakan oleh developer aplikasi yang memiliki akses ke ruang tempat katalog dibagikan.
- Dari kanvas desain, klik Add to Catalog.
- Untuk mengelola ruang tempat katalog dibagikan, lihat Mengelola katalog.
Merevisi dan membagikan ulang template Anda
Seiring bertambahnya pengalaman Anda dengan aplikasi dan berkembangnya kebutuhan bisnis, Anda mungkin ingin memperbarui template. Misalnya, Anda dapat memutuskan untuk meningkatkan performa layanan backend dengan menambahkan layanan Memorystore untuk caching.
Saat mengubah template, Anda membuat revisi template. Untuk menerapkan perubahan Anda pada aplikasi yang ada, developer harus men-deploy aplikasi menggunakan revisi.
App Design Center tidak otomatis memublikasikan revisi template ke katalog. Untuk membagikan revisi terbaru, publikasikan template ke katalog lagi.
Untuk membuat revisi baru, lakukan tindakan berikut:
Dari menu navigasi, klik Template.
Pilih template permohonan yang ingin Anda revisi. Kanvas akan terbuka.
Ubah template agar sesuai dengan persyaratan baru Anda. Misalnya, tambahkan dan konfigurasikan komponen baru.
Untuk membagikan revisi terbaru ke ruang lain, tambahkan template ke katalog Anda lagi.
Menghapus template
Jika tidak lagi memerlukan template, Anda dapat menghapusnya.
Kanvas desain
- Dari kanvas desain, klik Tindakan.
- Klik Hapus.
gcloud CLI
Menghapus template aplikasi.
```sh
gcloud design-center spaces application-templates delete APPLICATION_TEMPLATE \
--project=PROJECT \
--location=LOCATION \
--space=SPACE
```
Ganti kode berikut:
APPLICATION_TEMPLATE: ID template untuk template aplikasi yang ingin Anda hapus.PROJECT: ID project pengelolaan Anda.LOCATION: Region template aplikasi.SPACE: ID ruang Anda.
Untuk mengetahui informasi selengkapnya, lihat gcloud design-center spaces application-templates delete.
Langkah berikutnya
- Bagikan template Anda ke ruang lain dengan mengelola katalog template.
- Gunakan modul Terraform Anda sendiri dalam desain template dengan mengimpor komponen.
- Pelajari cara mengupdate, menskalakan, dan menghapus resource Anda dengan mengelola aplikasi.