1. Pengantar
Lab ini memberikan pengantar teknis tentang penggunaan Gemini CLI dan server Model Context Protocol (MCP) GKE untuk pengelolaan infrastruktur. Dalam pengelolaan GKE tradisional, operator menerjemahkan persyaratan infrastruktur secara manual ke dalam perintah gcloud dan definisi aplikasi ke dalam manifes YAML tertulis. Lab ini menunjukkan pendekatan yang berbeda: menggunakan antarmuka interaktif yang menjembatani maksud bahasa alami dengan eksekusi teknis di Google Kubernetes Engine (GKE). Perubahan ini adalah bagian dari tren yang lebih luas dalam rekayasa platform, di mana fokusnya beralih dari membangun skrip otomatisasi yang kaku ke mengelola agen cerdas yang dapat menangani detail operasi infrastruktur yang rumit.
Konsep Inti
- Platform Engineering: Ini adalah praktik membangun dan memelihara alat dan alur kerja internal yang memungkinkan developer software mengelola infrastruktur mereka sendiri tanpa perlu menjadi ahli di setiap layanan cloud yang mendasarinya. Tujuannya adalah mengurangi hambatan teknis sekaligus menjaga konsistensi dan keamanan. Dengan membuat jalur emas standar, tim platform memastikan bahwa developer aplikasi dapat men-deploy dengan aman dan cepat, sementara tim platform mempertahankan kontrol atas tata kelola dan biaya.
- Gemini CLI: Ini adalah antarmuka command line yang memungkinkan Anda berinteraksi dengan model Gemini langsung dari terminal. Tidak seperti chatbot berbasis web standar, CLI dirancang untuk berada dalam lingkungan pengembangan Anda, sehingga mempermudah integrasi AI ke dalam alur kerja berbasis shell yang ada. Dengan demikian, Anda dapat menyalurkan output dari perintah lain langsung ke model dan mengeksekusi instruksi tanpa keluar dari lingkungan terminal.
- Model Context Protocol (MCP): MCP adalah standar terbuka yang memungkinkan model AI terhubung dengan alat atau sumber data tertentu. Tanpa MCP, model AI hanya mengetahui apa yang digunakan untuk melatihnya dan tidak dapat melihat resource spesifik Anda. Dengan server MCP GKE, Gemini CLI dapat secara aktif membuat kueri API project Google Cloud Anda, memeriksa status cluster Anda, dan menjalankan perintah atas nama Anda. Gateway ini berfungsi sebagai jembatan antara mesin penalaran model dan GKE API yang sebenarnya.
Tujuan Lab
Di akhir sesi ini, Anda akan dapat:
- Konfigurasi Lingkungan: Akses Cloud Shell dan autentikasi ekstensi GKE MCP untuk mengizinkan Gemini CLI berinteraksi dengan resource Google Cloud Anda.
- Desain Infrastruktur: Gunakan perintah interaktif untuk menentukan konfigurasi cluster yang optimal berdasarkan biaya, overhead pengelolaan, dan persyaratan workload.
- Pengelolaan Resource: Buat, audit, dan deploy manifes Kubernetes (Deployment, Layanan, dll.) menggunakan bahasa alami.
- Analisis Operasional: Gunakan kemampuan AI untuk menggabungkan log dan peristiwa guna mengidentifikasi penyebab utama kegagalan deployment dan menyarankan perbaikan teknis tertentu.
2. Penyiapan Project
Lingkungan Google Cloud yang dikonfigurasi dengan benar diperlukan sebelum Gemini CLI dapat berinteraksi dengan resource Anda. Penyiapan ini memastikan bahwa project Anda memiliki izin yang benar dan semua layanan backend yang diperlukan siap menerima permintaan dari agen AI Anda.
Buka Cloud Shell
Untuk lab ini, kita akan menggunakan Cloud Shell, yaitu lingkungan terminal berbasis browser yang disediakan oleh Google Cloud. Kita menggunakan Cloud Shell karena sudah dikonfigurasi sebelumnya dengan semua alat yang kita butuhkan—termasuk Google Cloud CLI (gcloud), kubectl, dan Gemini CLI—sehingga Anda tidak perlu menginstalnya di mesin lokal.
- Buka Google Cloud Console.
- Lihat header kanan atas konsol, lalu klik tombol Activate Cloud Shell (tombol ini terlihat seperti perintah terminal
>_). - Sesi terminal akan terbuka di bagian bawah jendela browser Anda. Jika diminta, klik Continue.
Pilih Project
Di terminal Cloud Shell, pastikan Anda bekerja dalam project yang benar.
- Pilih project yang sudah ada atau buat project baru khusus untuk lab ini di Konsol.
- Catat Project ID Anda. Anda dapat menyetel project di shell saat ini dengan menjalankan:
gcloud config set project [YOUR_PROJECT_ID]
Mengaktifkan API
Fitur Kubernetes dan AI tidak diaktifkan secara default untuk project baru. Mengaktifkan API ini akan menginisialisasi layanan Google Cloud yang mendasarinya yang menangani pengelolaan container, model generatif, dan logging terpusat.
👉💻 Jalankan perintah berikut di Cloud Shell untuk mengaktifkannya. Proses ini mungkin memerlukan waktu satu menit.
gcloud services enable \
container.googleapis.com \
generativelanguage.googleapis.com \
cloudresourcemanager.googleapis.com \
logging.googleapis.com
- container.googleapis.com: Google Kubernetes Engine API. Hal ini diperlukan untuk semua operasi tingkat cluster, termasuk membuat, memperbarui, dan menghapus cluster.
- generativelanguage.googleapis.com: API yang memungkinkan Gemini CLI berkomunikasi dengan model bahasa besar Gemini untuk pembuatan dan penalaran teks.
- cloudresourcemanager.googleapis.com: Diperlukan agar agen dapat memeriksa metadata level project, memverifikasi ID project, dan mengelola izin IAM.
- logging.googleapis.com: Penting untuk pemecahan masalah, karena memungkinkan server MCP mengambil dan menganalisis log dari penampung Anda saat terjadi masalah.
3. Mengonfigurasi Gemini CLI
Cloud Shell menyertakan Gemini CLI secara default, sehingga menjadikannya lingkungan yang ideal untuk alur kerja ini. Langkah pertama Anda adalah mengonfigurasinya agar bertindak sebagai "agen" yang memiliki otoritas dan alat khusus yang diperlukan untuk mengelola lingkungan GKE Anda. Langkah konfigurasi ini sangat penting karena membuat koneksi yang aman antara logika AI dan infrastruktur cloud Anda yang sebenarnya.
Mulai Gemini CLI
Di terminal Cloud Shell, buat direktori kerja baru dan jalankan Gemini CLI. Tindakan ini akan memulai sesi tempat Anda dapat melakukan percakapan berkelanjutan dengan model. Tidak seperti perintah sekali pakai, mode interaktif mempertahankan jendela konteks yang mengingat petunjuk Anda sebelumnya dan status project Anda.
👉💻 Jalankan perintah berikut:
mkdir -p ~/gke-lab
cd ~/gke-lab
gemini

Setelah berada di dalam, uji kesadaran dasar alat untuk memastikan alat dapat melihat lingkungan Anda:
- 👉💬 Perintah:
Which Google Cloud project is currently active in this shell?
Anda mungkin diminta untuk mengonfirmasi eksekusi perintah gcloud untuk Anda, yang kemudian dapat Anda setujui.
Anda dapat keluar dari antarmuka kapan saja dengan mengetik /quit.
Catatan: Jika Anda mengalami masalah kapasitas dengan Gemini 2.5 Pro, Anda dapat beralih ke Gemini 2.5 Flash dengan membuka Gemini menggunakan
gemini -m gemini-2.5-flash
atau menggunakan
/model
di dalam antarmuka.
Menghubungkan Ekstensi MCP GKE
Secara default, Gemini CLI adalah alat serbaguna dan tidak memiliki pengetahuan khusus tentang cara berinteraksi dengan cluster Anda. Anda harus menginstal ekstensi MCP GKE. Ekstensi ini berfungsi sebagai plugin yang menentukan serangkaian alat dan fungsi tertentu—seperti "list clusters" atau "get pod logs"—yang dapat dipanggil model saat perlu melakukan tugas.
👉💻 Jalankan perintah berikut untuk menginstal ekstensi GKE dan membuka kembali Gemini CLI:
gemini extensions install https://github.com/GoogleCloudPlatform/gke-mcp.git
gemini
Anda dapat memverifikasi bahwa fitur ini telah diaktifkan dengan benar dengan memasukkan kembali Gemini CLI dan mengetik:
/extensions
4. Menyediakan Infrastruktur
Penyediaan infrastruktur tradisional sering kali melibatkan penelusuran dokumentasi yang rumit atau penulisan ratusan baris kode konfigurasi. Dengan menggunakan agen, Anda dapat berfokus pada pendeskripsian persyaratan dan membiarkan AI menangani terjemahan teknis ke dalam panggilan API yang benar. Bagian ini menunjukkan cara menggunakan agen untuk fase perencanaan dan pembuatan sebenarnya lingkungan GKE Anda.
Perencanaan dan Perbandingan Teknis
Sebelum membuat cluster, Anda harus memilih arsitektur yang sesuai dengan kebutuhan Anda. GKE menawarkan dua mode utama: Standard, tempat Anda memiliki kontrol penuh atas node yang mendasarinya, dan Autopilot, tempat Google mengelola node dan Anda membayar berdasarkan resource yang diminta oleh pod Anda. Mari coba kueri sederhana untuk memahami perbedaan antara keduanya dan mendiskusikan mana yang akan digunakan untuk kasus penggunaan tertentu.
- 👉💬 Perintah:
I need to run a standard 3-tier web application. Compare GKE Standard and GKE Autopilot. Focus on the operational effort for a small team and the cost structure for small workloads.
Coba tanyakan ide infrastruktur lainnya. Bagaimana jika Anda men-deploy workload inferensi AI, memerlukan sesuatu dalam skala yang sangat tinggi, atau memiliki batasan jaringan yang kompleks? Bereksperimen dengan perintah lain.
Jalankan Pembuatan Cluster
Setelah meninjau perbandingan dan membuat pilihan, Anda dapat menginstruksikan agen untuk membangun cluster. Agen akan menganalisis permintaan Anda dan memanggil alat create_cluster dari server GKE MCP untuk men-deploy lingkungan siap produksi berdasarkan persyaratan tersebut.
- 👉💬 Perintah:
Create a GKE Standard zonal cluster named 'gke-lab' in us-central1-a with 1 node with 4 CPUs. The cluster should have Workload Identity enabled.
Catatan: Penyediaan cluster GKE melibatkan penyiapan bidang kontrol, jaringan pribadi virtual, dan konfigurasi node awal, yang biasanya memerlukan waktu 8–10 menit. Jangan tutup sesi Gemini CLI Anda.
Anda dapat menanyakan status cluster, yang akan memanfaatkan server MCP GKE lagi untuk menampilkan informasi terbaru.
- 👉💬 Perintah:
Is the new GKE cluster created and ready to use, yet?
5. Deployment & Validasi
Manfaat utama penggunaan agen AI untuk rekayasa platform adalah kemampuannya dalam melakukan pemeriksaan dan audit "sebelum penerbangan" pada konfigurasi Anda. Daripada men-deploy manifes dan menunggu hingga gagal, Anda dapat menggunakan agen untuk memverifikasi bahwa YAML Anda secara teknis sudah benar dan mematuhi kebijakan keamanan organisasi Anda sebelum mencapai cluster.
Membuat Manifes
Minta agen untuk membuat manifes deployment. Karena memahami versi dan skema Kubernetes API, agen akan menghasilkan YAML yang diformat dengan benar dan menyertakan semua kolom yang diperlukan agar deployment berhasil.
- 👉💬 Perintah:
Generate a Kubernetes YAML manifest for an Nginx web server. I need 3 replicas. Set a memory limit of 256Mi and a CPU limit of 500m. Also, include a Service of type LoadBalancer to make it accessible via the internet. Save the manifest as web-server.yaml
Validasi Teknis dan Audit Keamanan
Pembuatan YAML secara manual sering kali menghasilkan konfigurasi yang berjalan dengan hak istimewa yang lebih banyak daripada yang diperlukan atau tidak memiliki fitur keandalan dasar. Anda dapat menggunakan agen untuk mengaudit manifes yang baru saja dibuat guna memastikan manifes tersebut memenuhi standar modern untuk keamanan dan ketahanan.
- 👉💬 Perintah:
Review the Nginx manifest you just created. Does it include resource requests (not just limits)? Does it specify a non-root user for the container? Add a Pod Disruption Budget to ensure high availability during cluster maintenance. Make any necessary modifications to the file, and tell me what changes were made.
Eksekusi Deployment
Setelah penyediaan cluster dari bagian sebelumnya selesai, beri tahu Gemini CLI untuk menerapkan konfigurasi ke cluster baru Anda. Agen akan menggunakan alatnya untuk berkomunikasi dengan server Kubernetes API dan membuat resource yang diminta.
- 👉💬 Perintah:
Deploy the audited Nginx manifest to the 'gke-lab' cluster. Use the kubectl command to do this.
Pemeriksaan Status Real-time
Daripada menjalankan beberapa perintah kubectl get pods atau kubectl describe, Anda dapat meminta agen untuk memberikan ringkasan bahasa alami tentang progres deployment.
- 👉💬 Perintah:
Are the Nginx pods running? Provide the external IP address assigned to the LoadBalancer once it is available.
Terhambat?
Jika layanan Nginx tampaknya tidak berhasil di-deploy, coba pecahkan masalahnya dengan Gemini CLI. Fitur ini tersedia untuk membantu Anda.
- 👉💬 Perintah:
The Nginx deployment doesn't start up as expected. Can you help troubleshoot?
6. Pemeliharaan & Pemecahan Masalah
Salah satu aspek paling berharga dari platform yang didukung AI adalah kemampuannya untuk operasi "Hari ke-2". Saat sistem gagal, tantangannya sering kali adalah mencari di ribuan baris log untuk menemukan satu error yang penting. Dengan menggunakan Gemini CLI dengan MCP, Anda dapat mengizinkan agen menggabungkan log, peristiwa, dan pesan status untuk memberikan diagnosis tingkat tinggi dan jalur khusus untuk penyelesaian masalah.
Injeksi Kegagalan Manual
Untuk menguji kemampuan diagnostik agen, kita akan sengaja membuat status kegagalan. Di tab terminal terpisah, jalankan perintah ini untuk mengupdate deployment Anda dengan image container yang tidak ada. Hal ini menyimulasikan kesalahan umum manusia: kesalahan ketik dalam tag penampung.
👉💻 Jalankan perintah berikut di luar Gemini CLI:
kubectl set image deployment/nginx nginx=nginx:invalid-version-xyz123
Catatan: Deployment Anda mungkin tidak disebut "nginx". Anda dapat memverifikasinya dengan menjalankan
kubectl get deployments
Kubernetes akan mencoba menarik image ini, gagal karena tidak dapat menemukan tag, dan pod akan memasuki status ImagePullBackOff.
Analisis dengan Gemini CLI
Kembali ke sesi Gemini CLI Anda. Daripada menelusuri konsol Cloud Logging secara manual, minta agen untuk menemukan dan menjelaskan error.
- 👉💬 Perintah:
The Nginx deployment on my 'gke-lab' cluster has stopped working. Use your tools to inspect the cluster state, check the recent events, and explain exactly why the pods are failing to start.
Yang terjadi di sini: Gemini CLI akan mengamati bahwa deployment tidak sehat. Kemudian, alat ini akan menggunakan alat yang tersedia untuk memeriksa pod yang gagal. Agen akan mengidentifikasi error penarikan, menjelaskan bahwa tag tidak valid, dan menyarankan agar Anda kembali ke image yang diketahui berfungsi dengan baik.
Pemeliharaan dan Penilaian Risiko
Pemeliharaan platform melibatkan antisipasi upgrade dan penghentian penggunaan. Anda dapat meminta agen untuk bertindak sebagai SRE dan menilai kondisi serta masa pakai cluster Anda.
- 👉💬 Perintah:
Is my cluster 'gke-lab' running the latest version of GKE? Check for available upgrades and let me know if any of my current resources use deprecated APIs that would break during an upgrade.
Hal ini dapat menyebabkan Gemini memanggil alat server MCP GKE seperti alat status dan rekomendasi cluster.
7. Kesimpulan
Lab ini telah mendemonstrasikan cara baru untuk berinteraksi dengan infrastruktur cloud. Dengan mengintegrasikan agen AI langsung ke alur kerja terminal melalui Gemini CLI dan MCP, Anda telah beralih dari penulis perintah manual menjadi pengarah maksud. Pendekatan ini memungkinkan tim platform menskalakan keahlian mereka dengan menyediakan antarmuka cerdas yang menangani detail pengelolaan Kubernetes yang berulang dan rentan terhadap kesalahan, sementara engineer manusia berfokus pada arsitektur tingkat tinggi dan pemecahan masalah.
Ringkasan Lab
- Konektivitas: Anda berhasil menghubungkan Gemini CLI ke GKE API menggunakan Model Context Protocol, sehingga model AI dapat melihat langsung status project Anda.
- Infrastruktur: Anda menggunakan natural language untuk merancang dan menyediakan cluster GKE, sehingga tidak perlu menghafal flag CLI yang rumit.
- Pengembangan: Anda membuat, mengaudit keamanan, dan men-deploy resource Kubernetes tanpa pengeditan YAML manual, sehingga memastikan praktik terbaik diikuti sejak awal.
- Operasi: Anda menggunakan AI untuk melakukan analisis akar masalah pada deployment yang rusak, sehingga secara signifikan mengurangi waktu rata-rata untuk pemulihan dengan mengizinkan AI meringkas log dan peristiwa.
Pembersihan
Untuk mencegah biaya Google Cloud berkelanjutan untuk resource yang dibuat di lab ini, Anda dapat menginstruksikan agen untuk menghapus cluster.
Catatan: Lewati langkah ini jika Anda berencana menggunakan kembali cluster GKE untuk lab lain.
- 👉💬 Perintah:
Delete the 'gke-lab' cluster and any associated resources.
Langkah Berikutnya
Rekomendasi bacaan lebih lanjut:
- Dokumentasi Gemini CLI: Dokumentasi resmi untuk Gemini CLI.
- Dokumentasi GKE: Halaman landing untuk semua dokumentasi GKE.
- Platform Engineering di Google Cloud: Panduan tentang cara menangani Platform Engineering di Google Cloud.
- AI dan machine learning di GKE: Dokumentasi tentang menjalankan workload AI/ML di GKE.
- Google Cloud Architecture Center: Panduan dan praktik terbaik untuk membangun workload di Google Cloud.