Mendesain template aplikasi standar

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), atau
Pengguna 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:

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

  1. Dari menu navigasi, klik Template.

    Buka Template

  2. Klik Create Template.

  3. Kolom ID Template akan diisi secara otomatis. Atau, masukkan ID unik untuk template. Kolom ini wajib diisi.

  4. 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.

  5. Di kolom Description, masukkan penjelasan singkat tentang tujuan aplikasi.

  6. 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.

Aplikasi web tiga tingkat di kanvas desain. Aplikasi ini mencakup komponen frontend, backend, dan database.

Anda dapat mendesain template dengan menambahkan komponen ke titik awal berikut:

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.tf dan outputs.tf Terraform 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

  1. Dari kanvas desain, pilih Design untuk melihat kanvas.

  2. 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.

  3. 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.

  4. Untuk menghapus komponen atau koneksi, lakukan tindakan berikut:

    1. Di kanvas, klik komponen atau koneksi.

    2. Di area Configuration, klik Delete.

    3. Di kolom, masukkan delete.

    4. Klik Hapus.

  5. Untuk menentukan variabel input dan output untuk template Anda, lakukan hal berikut:

    1. Klik Detail template.

    2. Di panel Template details, klik tab Variables.

    3. Di area Edit Variable, lakukan tindakan berikut.

      1. Dari daftar Component, pilih komponen yang menjadi dasar variabel Anda.

      2. 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.

      3. Untuk membuat variabel lain, klik Tambahkan variabel dan ulangi langkah-langkah ini.

gcloud CLI

  1. 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-central1
    

    Untuk mengetahui informasi selengkapnya, lihat gcloud design-center spaces shared-templates list.

  2. 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_URI
    

    Ganti 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.

  3. 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_2
    

    Ganti 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.

  4. 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_2
    

    Ganti 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.

  5. 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=VARIABLE
    

    Ganti 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 variabel database_name yang 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

  1. Dari kanvas desain, klik komponen.

  2. Di area Configuration, dari daftar Project ID, pilih project tempat Anda ingin men-deploy resource. Pilih project dengan kualifikasi berikut:

  3. 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.

  4. Saat Anda menghubungkan komponen di kanvas desain, nilai konfigurasi default akan digunakan untuk membuat koneksi. Untuk menambahkan atau mengubah detail koneksi, lakukan hal berikut.

    1. Di kanvas desain, klik koneksi antara dua komponen. Panel Connection akan terbuka dan menampilkan parameter koneksi.

    2. Lakukan salah satu hal berikut:

      • Untuk mengubah parameter koneksi yang ada, klik Edit.

      • Untuk menambahkan parameter koneksi baru, klik Add parameter.

    3. 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.
  5. Klik Simpan.

gcloud CLI

  1. 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_TEMPLATE
    

    Ganti 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.

  2. 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"
          }
      ]
    
  3. 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_TEMPLATE
    

    Ganti 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.

  4. Menjelaskan koneksi komponen.

    gcloud design-center spaces application-templates components connections describe CONNECTION \
    --component=COMPONENT \
    --application-template=APPLICATION_TEMPLATE \
    --project=PROJECT \
    --location=LOCATION \
    --space=SPACE
    

    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.

    Untuk mengetahui informasi selengkapnya, lihat gcloud design-center spaces application-templates components connections describe.

  5. 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 file main.tf.
  • input.tfvars: Menentukan nilai untuk variabel yang digunakan dalam file main.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:

  1. Dari kanvas desain, klik Code. Sistem akan menampilkan file Terraform yang dihasilkan.

  2. Klik main.tf. Sistem akan menampilkan modul Terraform untuk setiap komponen.

  3. 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.

  4. Untuk menandai dan membandingkan hasil edit Anda, lakukan tindakan berikut:

    1. Klik View diff.

    2. Untuk mengurungkan perubahan, di margin, klik Klik untuk mengurungkan perubahan.

    3. Klik View diff untuk menutup tampilan perbandingan.

  5. Untuk menyimpan hasil edit, klik Simpan perubahan kode.

  6. Untuk memverifikasi perubahan Anda, lakukan hal berikut.

    1. Klik Desain.
    2. 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:

  1. Buat aplikasi dengan setelan berikut:
    1. Dari daftar Environment, pilih TEST.
    2. Dari daftar Criticality, pilih LOW.
  2. Men-deploy aplikasi.
  3. Uji infrastruktur Anda untuk memastikan bahwa infrastruktur tersebut memenuhi persyaratan Anda.
  4. 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.

  1. Dari kanvas desain, klik Add to Catalog.
  2. 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:

  1. Dari menu navigasi, klik Template.

    Buka Template

  2. Pilih template permohonan yang ingin Anda revisi. Kanvas akan terbuka.

  3. Ubah template agar sesuai dengan persyaratan baru Anda. Misalnya, tambahkan dan konfigurasikan komponen baru.

  4. 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

  1. Dari kanvas desain, klik Tindakan.
  2. 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