Menawarkan aplikasi Kubernetes Terraform melalui Cloud Marketplace

Aplikasi Kubernetes Terraform di Google Cloud Marketplace memungkinkan pelanggan Anda menggunakan Terraform untuk men-deploy aplikasi dalam container di Google Kubernetes Engine. Pengguna Anda tidak dikenai biaya untuk penggunaan aplikasi Terraform Kubernetes, tetapi mereka dikenai biaya untuk penggunaan resource Google Cloud . Anda dapat menawarkan aplikasi Terraform Kubernetes secara publik kepada semua pengguna Cloud Marketplace, atau secara pribadi menggunakan Penawaran Pribadi.

Aplikasi Kubernetes Terraform yang Anda tawarkan melalui Cloud Marketplace menentukan konfigurasinya menggunakan diagram Helm, yang Anda host di Artifact Registry. Setelah penyiapan selesai, Anda akan mengaktifkan aplikasi ke Cloud Marketplace melalui Producer Portal.

Ringkasan proses aktivasi aplikasi Kubernetes Terraform

Menawarkan aplikasi Kubernetes Terraform melalui Cloud Marketplace melibatkan langkah-langkah berikut:

  1. Siapkan aplikasi Kubernetes Terraform untuk Cloud Marketplace. Hal ini mencakup penyiapan Artifact Registry dan pengiriman image aplikasi Anda ke Artifact Registry.

  2. Tambahkan informasi harga untuk aplikasi Anda di Producer Portal.

  3. Konfigurasi deployment aplikasi Anda di Producer Portal, termasuk modul Terraform, chart Helm, dan image container-nya.

  4. Publikasikan produk Anda ke Cloud Marketplace. Saat mengaktifkan produk, Anda mengirimkan berbagai bagian produk untuk ditinjau. Tim Cloud Marketplace meninjau setiap kiriman dan bekerja sama dengan Anda untuk menyelesaikan masalah apa pun sebelum menyetujuinya. Setelah semua pengiriman disetujui, Anda dapat memublikasikan dan meluncurkan produk dalam beberapa menit.

Persyaratan untuk aplikasi Kubernetes Terraform

Semua produk yang Anda tawarkan melalui Cloud Marketplace harus mematuhi persyaratan pencantuman Cloud Marketplace.

Aplikasi Kubernetes Terraform Anda harus memenuhi persyaratan tambahan berikut:

  • Aplikasi Anda harus berjalan di node GKE yang menggunakan prosesor x86.
  • Semua diagram Helm dan image container aplikasi Anda harus diupload ke registry Artifact Registry, ke repositori dan project yang sama dengan yang Anda gunakan untuk aplikasi Terraform Kubernetes.
  • Registry Artifact Registry Anda harus menyertakan chart Helm.
  • Modul Terraform Anda harus dihosting sebagai file ZIP di bucket Cloud Storage yang berada di project yang sama dengan yang Anda gunakan untuk aplikasi Terraform Kubernetes.
  • Anda harus mengaktifkan pembuatan versi untuk bucket Cloud Storage yang Anda gunakan untuk menghosting modul Terraform.
  • Anda harus menyertakan panduan pengguna, dengan langkah-langkah untuk men-deploy aplikasi dari command line, mengonfigurasi aplikasi, dan menggunakan aplikasi. Untuk mengetahui detailnya, lihat Persyaratan untuk panduan pengguna Anda dalam dokumen ini.
  • Untuk melindungi pengguna dari API yang tidak stabil, gunakan hanya resource Kubernetes versi beta atau yang tersedia secara umum.

Persyaratan untuk gambar aplikasi Anda

Gambar aplikasi Anda harus memenuhi persyaratan berikut:

  • Semua gambar aplikasi Anda harus diberi tag dengan jalur rilis dan versi saat ini. Misalnya, jika Anda merilis versi 2.0.5 di jalur rilis 2.0, semua gambar yang sesuai harus diberi tag 2.0 dan 2.0.5. Untuk mengetahui detailnya, lihat Mengatur rilis Anda.
  • Semua gambar aplikasi Anda harus berisi anotasi berikut dalam manifes gambar:

    com.googleapis.cloudmarketplace.product.service.name=services/SERVICE_NAME
    

    Ganti SERVICE_NAME dengan nama layanan Anda. Untuk menemukan nama layanan Anda, lihat tabel produk di halaman Overview di Producer Portal. Untuk mengetahui informasi selengkapnya tentang anotasi, lihat dokumentasi Open Container Initiative tentang anotasi di GitHub.

Persyaratan untuk repositori Artifact Registry Anda

Helm chart dan image container aplikasi Anda harus menjadi bagian dari satu repositori Artifact Registry.

Misalnya, jika repositori Artifact Registry Anda adalah us-docker.pkg.dev/exampleproject, diagram Helm dan image container aplikasi Anda akan terlihat seperti berikut:

  • us-docker.pkg.dev/exampleproject/exampleapp/chart
  • us-docker.pkg.dev/exampleproject/exampleapp/image1
  • us-docker.pkg.dev/exampleproject/exampleapp/image2

Persyaratan untuk modul Terraform

Pelanggan menggunakan modul Terraform untuk men-deploy produk Anda dari Cloud Marketplace melalui Infrastructure Manager. Modul Terraform mengemas konfigurasi Kubernetes aplikasi Anda.

Gunakan modul contoh sebagai titik awal, dan ikuti panduan partner untuk membuat modul Terraform yang kompatibel dengan aplikasi Anda.

Parameter yang diteruskan ke aplikasi Anda

Modul Terraform Anda harus mendeklarasikan parameter yang perlu dikumpulkan dari pelanggan saat mereka memilih aplikasi Anda. Parameter ini kemudian diberikan ke penampung diagram Helm saat pengguna men-deploy aplikasi.

Untuk mengonfigurasi parameter ini, modul Terraform Anda harus menyertakan file schema.yaml.

Untuk mempelajari cara membuat schema.yaml, lihat panduan untuk membuat skema di GitHub.

Permintaan cluster GPU

Jika aplikasi Anda memiliki kebutuhan GPU tertentu, atau sangat bergantung pada GPU, Anda dapat menentukan jenis dan jumlah GPU di cluster menggunakan skema deployer. Jika Anda menentukan kebutuhan GPU, Anda akan menonaktifkan pembuatan cluster yang dibantu.

Aplikasi Anda dapat meminta GPU Nvidia generik, atau platform Nvidia tertentu.

Persyaratan untuk panduan pengguna aplikasi Anda

Panduan pengguna aplikasi Anda harus menyertakan informasi berikut:

  • Ringkasan: Ringkasan umum aplikasi Anda, yang mencakup fungsi dasar dan opsi konfigurasi. Bagian ini juga harus ditautkan ke aplikasi yang dipublikasikan di Cloud Marketplace.
  • Penyiapan satu kali: Ini mencakup langkah-langkah untuk mengonfigurasi Helm dan menginstal CustomResourceDefinition Aplikasi (CRD) sehingga cluster Anda dapat mengelola resource Aplikasi.
  • Penginstalan: Hal ini mencakup hal berikut:
    • Perintah untuk men-deploy aplikasi Anda
    • Meneruskan parameter yang tersedia dalam konfigurasi UI
    • Menyematkan referensi gambar ke ringkasan yang tidak dapat diubah
    • Informasi tentang kolom input kustom yang telah Anda tambahkan ke modul Terraform, jika ada; lihat petunjuk untuk menambahkan kolom input ke modul Terraform
  • Penggunaan Dasar: Panduan untuk tugas berikut:
    • Mengubah nama pengguna dan sandi
    • Menghubungkan ke konsol admin, jika berlaku
    • Menghubungkan alat klien dan menjalankan perintah contoh, jika berlaku
    • Mengaktifkan ingress dan menginstal sertifikat TLS, jika berlaku
  • Mencadangkan dan memulihkan: Informasi tentang mencadangkan status aplikasi dan memulihkan status aplikasi dari cadangan.
  • Update gambar: Informasi tentang cara memperbarui gambar aplikasi untuk patch atau update kecil.
  • Penskalaan: Informasi tentang penskalaan aplikasi, jika ada.
  • Penghapusan: Panduan untuk menghapus aplikasi dan membersihkan resource yang mungkin masih ada, seperti PersistentVolumeClaims.

Langkah berikutnya