Menyiapkan lingkungan Google Cloud

Halaman ini menjelaskan langkah-langkah untuk menyiapkan lingkungan Google Cloud agar Anda dapat mendistribusikan aplikasi Kubernetes.

Membuat ruang kerja

Sebaiknya buat project baru di konsol Google Cloud terutama untuk produk Cloud Marketplace Anda.

Untuk mengelola produk yang Anda kirimkan ke Cloud Marketplace, sebaiknya buat project baru dengan project ID yang diakhiri dengan -public. Untuk membuat project bagi produk Anda, lihat Membuat dan mengelola project.

Jika Anda sudah menyiapkan project untuk dijual di Cloud Marketplace yang ingin digunakan, pastikan peran Identity and Access Management (IAM) diberikan dengan benar untuk Kubernetes, lalu lanjutkan ke Menyiapkan registry penampung.

Memberikan peran untuk project Anda

Untuk menyelesaikan penyiapan project, selesaikan langkah-langkah berikut:

  1. Setelah membuat project, berikan peran berikut di level project:

    • Project Editor, ke cloud-commerce-marketplace-onboarding@twosync-src.google.com
    • Service Management Administrator (roles/servicemanagement.serviceAdmin), ke cloud-commerce-marketplace-onboarding@twosync-src.google.com dan managed-services@cloud-marketplace.iam.gserviceaccount.com
    • Editor Konfigurasi (roles/servicemanagement.configEditor), ke cloud-commerce-producer@system.gserviceaccount.com

    Untuk memberikan akses ke project Anda, lihat Memberikan, mengubah, dan mencabut akses ke resource.

  2. Berikan peran berikut di tingkat layanan, ke cloud-commerce-procurement@system.gserviceaccount.com:

    • Konsumen Layanan (roles/servicemanagement.serviceConsumer)
    • Service Controller (roles/servicemanagement.serviceController)

    Untuk mengetahui langkah-langkah memberikan akses di tingkat layanan, lihat Memberikan dan mencabut akses ke API.

  3. Tetapkan kontak keamanan. Untuk mengetahui informasi selengkapnya, lihat Mengelola kontak untuk notifikasi.

  4. Lengkapi formulir Info Project yang diberikan tim Cloud Marketplace kepada Anda.

Menyiapkan registry container

Anda memerlukan repositori Container Registry untuk menghosting image container bagi aplikasi Anda. Artifact Analysis terus memindai image aplikasi untuk menemukan kerentanan sehingga Anda dapat meninjau dan mengatasi masalah sebelum mengirimkan produk ke Cloud Marketplace.

Untuk menyiapkan Container Registry, Docker, dan Google Cloud SDK, ikuti panduan memulai Container Registry.

Setelah Anda menyiapkan Container Registry, dalam project yang berisi registry, berikan peran Project Viewer ke cloud-commerce-marketplace-onboarding@twosync-src.google.com.

Mengaktifkan Container Analysis API

Anda harus mengaktifkan Artifact Analysis API, yang memindai image container di Container Registry untuk mendeteksi kerentanan. Untuk ringkasan pemindaian kerentanan di Artifact Analysis, lihat Dokumentasi Container Registry.

Menambahkan produk ke Cloud Marketplace

Untuk membuat dan memublikasikan produk di Cloud Marketplace, Anda menggunakan Portal Produser. Partner Engineer akan mengaktifkannya untuk Anda setelah Anda menyelesaikan Formulir Info Project Cloud Marketplace.

Untuk memublikasikan produk di Producer Portal, Anda harus membuat entri untuk produk, lalu mengirimkan informasi berikut untuk ditinjau:

  • Detail produk: Tambahkan informasi listingan dan pemasaran tentang produk Anda.
  • Harga: Pilih dan tentukan model harga untuk menentukan cara pelanggan membayar produk Anda.
  • Image container: Berikan repositori Google Container Registry yang menyertakan image container Anda.
  • Kepatuhan Open Source: Pastikan produk Anda mematuhi kebijakan Google untuk software open source.

Anda dapat mengirimkan ulasan ini kapan saja dan dalam urutan apa pun. Beberapa peninjauan mungkin memerlukan waktu hingga dua minggu untuk disetujui. Jadi, sebaiknya tinjau persyaratan dan mulai sesegera mungkin.

Untuk membuat entri Cloud Marketplace produk Anda:

  1. Buka Producer Portal di konsol Google Cloud:

    https://console.cloud.google.com/producer-portal?project=YOUR_PUBLIC_PROJECT_ID
    

    Ganti YOUR_PUBLIC_PROJECT_ID dengan ID untuk project publik yang Anda buat untuk Cloud Marketplace—misalnya, my-organization-public.

  2. Di bagian atas halaman, klik Tambahkan produk.

  3. Pilih Kubernetes.

  4. Di bagian Nama produk, beri nama produk Anda dan periksa ID Produk. ID Produk digunakan di URL untuk listingan Cloud Marketplace Anda.

  5. Klik Create. Mungkin perlu waktu beberapa detik untuk membuat produk Anda.

Anda akan menambahkan model harga dan informasi pemasaran untuk solusi Anda di langkah berikutnya.

Membuat cluster pengembangan di Kubernetes Engine

Anda menggunakan Google Kubernetes Engine untuk mengelola dan menskalakan cluster Kubernetes. Untuk membuat cluster pengujian dan men-deploy aplikasi dasar ke cluster tersebut, ikuti panduan memulai Google Kubernetes Engine.

Menginstal alat pengembangan mpdev

Alat mpdev adalah penampung yang memaketkan utilitas untuk menguji dan memublikasikan gambar aplikasi Anda. Meskipun menginstal mpdev tidak diperlukan untuk mengirimkan aplikasi untuk rilis, Anda dapat menjalankan mpdev untuk memverifikasi lingkungan pengembangan, dan untuk menguji apakah aplikasi Anda diinstal dengan benar di cluster pengembangan.

Instal mpdev dari repositori GitHub alat Cloud Marketplace.

Untuk informasi tentang cara menggunakan mpdev untuk memeriksa lingkungan dan menguji aplikasi, lihat referensi mpdev di GitHub.

Mengatur rilis

Secara umum, setiap versi aplikasi Anda harus mengadopsi Pembuatan Versi Semantik 2.0, yang mengikuti konvensi penomoran MAJOR.MINOR.PATCH. Setiap versi harus memiliki nomor versi unik, seperti 1.0.1, 1.0.2, 1.3.1, dan seterusnya. Secara opsional, tambahkan tanda hubung setelah nomor versi untuk menambahkan pengubah pra-rilis, seperti 1.3.1-alpha201910. Pengubah pra-rilis dapat digunakan untuk menyimpan dan menandai informasi tambahan yang menurut Anda berguna, seperti tanggal build yang menunjukkan kapan versi dibuat.

Sebaiknya rilis software Anda dalam jalur. Setiap jalur adalah serangkaian versi dengan update yang kompatibel dengan versi lama. Jalur rilis Anda harus didasarkan pada versi minor, seperti 4.1.x. Sebagai praktik terbaik, hindari penggunaan nama versi generik seperti latest.

Misalnya, jika Anda merilis software versi 2.0 di Cloud Marketplace, dan berharap versi 2.0.1, 2.0.5, dan seterusnya akan kompatibel dengan 2.0, atur rilis ini di jalur rilis 2.0.

Saat Anda merilis versi aplikasi yang tidak kompatibel dengan versi sebelumnya, atau versi yang mengharuskan pengguna untuk melalui langkah-langkah migrasi manual, rilis versi tersebut di jalur baru, sehingga pengguna dapat merencanakan update mereka.

Pilih ID produk Anda

Anda harus memilih ID berikut untuk perusahaan, produk, dan image container, yang digunakan untuk membuat URL Cloud Marketplace, serta URI untuk image container:

  • Nama perusahaan Anda. Misalnya, jika nama perusahaan Anda adalah Examplesoft Inc., Anda dapat menggunakan ID examplesoft.

  • Nama produk Anda. Misalnya, jika nama produknya adalah Example Pro, gunakan ID example-pro.

  • Jalur rilis produk Anda, seperti 4.0.

    Lihat persyaratan untuk mengatur rilis.

  • Image container Anda. Pilih ID unik untuk setiap image penampung di aplikasi Anda. ID berikut diperlukan untuk semua aplikasi:

    • Gambar utama: Gambar penampung ini adalah gambar utama untuk produk Anda, dan menggunakan ID yang sama dengan produk. Misalnya, jika ID produk Anda adalah example-pro, gambar utama akan menggunakan ID yang sama.
    • deployer: Image container deployment untuk jalur. Penampung deployment berjalan saat pengguna men-deploy aplikasi dari konsol Google Cloud. Anda membuat image deployment saat membuat paket aplikasi.

Misalnya, perusahaan Examplesoft Inc. memilih ID berikut untuk produknya, Example Pro:

Nama ID
Perusahaan Examplesoft Inc examplesoft
Produk Contoh Pro example-pro
Gambar [1] (utama) Contoh server Pro t/a
Gambar [2] Contoh Antrean example-queue
Image [deployer] t/a deployer
Release track [1] Versi 4.x.x 4.0
Jalur rilis [2] Versi 5.x.x 5,0

Untuk ID ini, informasi berikut akan otomatis dibuat:

  • URL produk di Cloud Marketplace: https://console.cloud.google.com/marketplace/details/examplesoft/example-pro

  • URI image container:

    • marketplace.gcr.io/examplesoft/example-pro:4.0
    • marketplace.gcr.io/examplesoft/example-pro/example-queue:4.0
    • marketplace.gcr.io/examplesoft/example-pro/deployer:4.0
    • marketplace.gcr.io/examplesoft/example-pro:5.0
    • marketplace.gcr.io/examplesoft/example-pro/example-queue:5.0
    • marketplace.gcr.io/examplesoft/example-pro/deployer:5.0