Men-deploy aplikasi Kubernetes dengan Cloud Code for IntelliJ

Pelajari cara menggunakan Cloud Code for IntelliJ untuk men-deploy aplikasi Kubernetes pertama Anda.

Dalam panduan memulai ini, Anda akan menyiapkan aplikasi Kubernetes baru menggunakan template Hello World awal, menjalankan aplikasi di cluster, mengonfigurasi pembangunan ulang berkelanjutan untuk mengembangkan aplikasi secara berulang, men-debug kode yang berjalan, dan melihat log streaming dari aplikasi aktif Anda.

Meskipun kami merekomendasikan penggunaan Google Cloud untuk panduan ini, Anda dapat menggunakan Cloud Code dengan cluster lokal menggunakan alat seperti minikube dan Docker Desktop. Namun, fitur seperti pembuatan cluster GKE aktif dan continuous delivery terintegrasi akan lebih optimal jika menggunakan Google Cloud project.

Sebelum memulai

Baik Anda memilih untuk menggunakan cluster lokal atau yang dihosting di cloud, untuk menyelesaikan panduan memulai ini, ikuti langkah-langkah berikut:

  1. Instal Git. Git diperlukan untuk menyalin contoh kode ke komputer Anda.
  2. Instal Docker. Docker diperlukan untuk mem-build kode contoh. Pastikan akun pengguna lokal Anda dapat mem-build container.
  3. Instal plugin Cloud Code jika Anda belum melakukannya.

Untuk menyelesaikan panduan memulai ini menggunakan Google Cloud, ikuti langkah-langkah berikut:

  1. Login keakun Anda. Google Cloud Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa produk kami dalam skenario dunia nyata. Pelanggan baru juga mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.

  4. Verify that billing is enabled for your Google Cloud project.

  5. Enable the Google Kubernetes Engine API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  6. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  7. If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.

  8. Verify that billing is enabled for your Google Cloud project.

  9. Enable the Google Kubernetes Engine API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

Peran yang diperlukan

Guna mendapatkan izin yang diperlukan untuk menyelesaikan panduan memulai ini menggunakan Google Cloud, minta administrator untuk memberi Anda peran IAM Admin Kubernetes Engine (roles/container.admin) di project Anda. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.

Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.

Membuat aplikasi

Cloud Code dilengkapi dengan kumpulan template contoh kode untuk membantu Anda memulai. Untuk membuat aplikasi baru menggunakan contoh yang ada:

  1. Di IDE Anda, buka File > New Project , lalu pilih Cloud Code: Kubernetes.

  2. Pilih template Hello World dari daftar aplikasi awal. Daftar template yang tersedia: Aplikasi hello world dan buku tamu Python, Go, NodeJS, Java

  3. Pilih nama untuk project Anda.

    Setelah Anda mengklik Finish, Cloud Code akan meng-clone template yang Anda pilih dan membuka project yang baru dibuat untuk digunakan.

    Untuk template Java, Anda akan diminta mengimpor project Maven yang diperlukan untuk menyinkronkan pom.xml. Klik Add as Maven project , lalu klik Import Changes.

Memilih cluster

Untuk mengembangkan aplikasi, Anda memerlukan cluster Kubernetes terkait yang dihosting secara lokal dengan minikube atau menggunakan platform cloud, seperti cluster Google Kubernetes Engine.

Cluster lokal

Jika belum memiliki cluster untuk digunakan dalam panduan memulai ini, Anda dapat memilih untuk menjalankan aplikasi dengan cluster minikube lokal yang dikelola Cloud Code. Cloud Code memulai cluster minikube untuk menjalankan aplikasi Anda dan menghentikan cluster saat deployment berhenti. Jika cluster minikube sudah berjalan, Cloud Code akan menggunakan kembali cluster minikube yang ada untuk deployment.

Anda dapat memilih untuk menggunakan cluster minikube yang dikelola Cloud Code ini pada langkah berikutnya, mengembangkan aplikasi Anda, dengan menetapkannya sebagai preferensi deployment.

Cluster berbasis platform cloud

Jika Anda sudah memiliki cluster yang dikonfigurasi untuk bekerja dengan alat Kubernetes, seperti kubectl, yang dapat Anda gunakan untuk panduan memulai ini, Cloud Code akan otomatis men-deploy ke cluster tersebut. Anda dapat melanjutkan ke pengembangan aplikasi tempat Anda dapat mengonfirmasi bahwa cluster pilihan Anda ditetapkan sebagai konteks saat ini.

Jika tidak, Anda dapat membuatnya menggunakan petunjuk khusus platform cloud Anda. Untuk GKE, ikuti panduan Membuat cluster.

Mengembangkan aplikasi

Untuk memulai pengembangan aplikasi Anda di Kubernetes:

  1. Jika Anda menjalankan cluster yang dihosting di platform cloud, pastikan Anda telah menentukan tempat penyimpanan image container untuk Develop on Kubernetes.

    Jika Anda login ke Google Cloud IDE dan telah menentukan project default, Cloud Code akan otomatis menggunakan repositori image container default Anda (gcr.io/{project_id} dengan {project_id} yang mereferensikan project default Anda).

  2. Pastikan konteks Kubernetes pilihan Anda telah ditetapkan. Hal ini dapat ditentukan dalam konfigurasi Develop on Kubernetes (dapat diakses melalui Run > Edit Configurations > Develop on Kubernetes), di tab Run dan di bagian Deployment preferences.

    Anda dapat memilih untuk men-deploy ke konteks saat ini (default), secara lokal ke cluster minikube, atau ke konteks lain yang tersedia.

    Secara default, aplikasi Kubernetes Anda akan berjalan dalam mode Sesuai permintaan dengan Sesuai permintaan dipilih. Jika diinginkan, Anda dapat memilih opsi Saat file disimpan.

  3. Pilih target run Develop on Kubernetes dari pemilih konfigurasi Run/Debug di Navigation bar.

    Konfigurasi eksekusi deployment Kubernetes

    Hal ini memastikan setiap perubahan kode akan otomatis di-build, dikirim, dan di-deploy ke versi baru aplikasi Anda.

  4. Untuk memulai siklus pengembangan di cluster Kubernetes Anda, klik tindakan run untuk Develop on Kubernetes.

  5. Di output window, pada tab Logs, lihat log aplikasi yang masuk.

    Setelah deployment dimulai, Anda akan melihat daftar port yang diteruskan untuk aplikasi yang di-deploy.

  6. Jika deployment berhasil, Anda akan diberi tahu bahwa URL layanan baru tersedia. Klik tab Service URLs untuk melihat URL, lalu klik link URL untuk membuka browser dengan aplikasi yang sedang berjalan.

    Melihat layanan yang di-port forward di tab URL Layanan

    Atau, Anda dapat membuka Event Log , lalu mengklik link untuk membuka browser dengan aplikasi yang sedang berjalan.

    Panel Deployed Resources menampilkan apa yang Anda deploy selama sesi pengembangan.

Men-debug aplikasi

Cloud Code mendukung penerapan perubahan saat proses debug.

Untuk men-debug aplikasi Anda:

  1. Klik tindakan debug Ikon tindakan debug untuk Develop on Kubernetes guna memulai siklus pengembangan dalam mode debug di cluster Kubernetes Anda.

    Memulai siklus pengembangan cluster Kubernetes dalam mode debug

  2. Cloud Code akan melampirkan sesi debug. Jika berhasil, jendela Debug Tool akan terbuka, yang mengonfirmasi koneksi (di tab Console).

    Sekarang Anda dapat men-debug cluster Kubernetes aktif Anda.

  3. Klik gutter di baris kode yang dapat dieksekusi tempat Anda ingin menambahkan titik henti sementara.

    Lingkaran terisi merah menunjukkan titik henti sementara aktif, sedangkan lingkaran kosong dengan garis merah menunjukkan titik henti sementara yang dinonaktifkan.

  4. Saat Anda mengirim permintaan baru ke aplikasi, aplikasi akan dijeda di baris yang diinginkan.

    Sesi debugger Kubernetes

  5. Untuk mengakhiri sesi proses debug, klik ikon berhenti pada konfigurasi run Develop on Kubernetes.

Melihat log

Selain melihat livestream log dari pod yang berjalan di output terminal saat Anda mengembangkan dan menjalankan aplikasi, Anda dapat melihat log dari pod tertentu dengan membuka Kubernetes Explorer.

Untuk melihat log dari pod tertentu, ikuti langkah-langkah berikut:

  1. Buka Kubernetes Explorer. Kubernetes Explorer dapat diakses dari panel samping di sebelah kanan atau menggunakan Tools > Cloud Code > Kubernetes > View Cluster Explorer.

    Panel Kubernetes Explorer terbuka menggunakan tab di taskbar sisi kanan

  2. Pilih pod yang lognya ingin Anda lihat.

  3. Klik kanan pod, lalu pilih Stream Logs. Atau, Anda dapat melakukan streaming log untuk setiap container yang berjalan di pod.

    Tindakan ini akan menampilkan log ke Konsol Kubernetes Explorer.

    Mengalirkan log dari pod menggunakan menu klik kanannya untuk menampilkan log ke Konsol Kubernetes Explorer

Pembersihan

Agar akunAnda tidak dikenai biaya untuk resource yang digunakan pada halaman ini, ikuti langkah-langkah berikut. Google Cloud

  1. Buka halaman Project di Google Cloud konsol:

    Buka halaman Project

  2. Pilih project yang Anda buat untuk Panduan Memulai ini, lalu klik ikon tempat sampah di sampingnya untuk menghapusnya.

    Tindakan ini akan menghentikan project dan menjadwalkannya untuk dihapus.

Langkah berikutnya