Di dunia pengembangan aplikasi modern, Kubernetes telah menjadi platform orkestrasi kontainer yang populer. Namun, mengelola Kubernetes secara manual bisa jadi rumit, terutama bagi developer yang baru memulai.
Kubero hadir sebagai solusi untuk mempermudah deployment aplikasi di Kubernetes, dengan mengusung konsep Platform as a Services (PaaS) yang paling mudah digunakan. Dengan Kubero, Anda tidak perlu lagi menulis manifes Kubernetes atau Dockerfile secara manual. Artikel ini akan membahas konsep, kelebihan, dan cara menggunakan Kubero untuk deployment aplikasi Anda.
Konsep Kubero
Kubero adalah tool yang memungkinkan Anda untuk deploy aplikasi di cluster Kubernetes tanpa perlu repot menulis manifes Kubernetes atau Dockerfile. Dengan Kubero, Anda dapat fokus pada pengembangan aplikasi tanpa perlu khawatir dengan infrastruktur dibaliknya.
Secara sederhana, Kubero dapat dibilang sebagai “Heroku on top of Kubernetes”. Heroku adalah platform deployment yang terkenal dengan kemudahannya. Kubero membawa kemudahan serupa ke dunia Kubernetes.
Dibalik Kemudahan Kubero
Kubero pada dasarnya adalah sebuah Kubernetes Operator dengan antarmuka pengguna (UI) yang ramah pengguna. Kubero hanya membutuhkan dua kontainer untuk beroperasi:
- Kubero Operator
- Kubero UI
Untuk mengelola aplikasi Anda, Kubero menawarkan beberapa pilihan, yaitu melalui Kubero UI, Kubero CLI, atau Kubectl (perintah baris untuk mengelola Kubernetes). Semua data aplikasi Anda disimpan dan dikelola dengan aman melalui Kubernetes API.
Proses CI/CD yang efisien
Kubero memiliki pipeline CI/CD (Continuous Integration/Continuous Delivery) terintegrasi yang memungkinkan developer untuk melakukan deploy aplikasi dengan cepat dan mudah. Dengan Kubero, Anda dapat melakukan deploy aplikasi hanya dengan melakukan push kode ke branch tertentu, atau bahkan menjalankan instance baru berdasarkan Pull Request.
Pipeline CI/CD Kubero tidak membangun image kontainer terlebih dahulu. Sebaliknya, Kubero akan mengambil kode Anda dan menjalankan script build yang sudah ada di dalam kontainer yang sedang berjalan. Dengan pendekatan ini, Kubero menawarkan solusi yang jauh lebih cepat dibandingkan metode tradisional yang memerlukan pembuatan, push, dan pull image kontainer dari registry.
Selain itu, Kubero juga mendukung deploy aplikasi menggunakan image kontainer yang sudah dibuat sebelumnya. Ini memberi Anda fleksibilitas untuk memilih pendekatan yang paling sesuai dengan kebutuhan Anda.
Integrasi dan Buildpack
Kubero dapat menjalankan berbagai macam aplikasi yang bisa berjalan di dalam kontainer. Secara default, Kubero menggunakan image standar untuk membangun dan menjalankan aplikasi Anda. Namun, Anda juga dapat membuat image builder sendiri jika diperlukan, dan tentunya Anda juga dapat membuat deployment pack custom sesuai keinginan.
Berikut beberapa bahasa pemrograman dan framework yang didukung oleh Kubero secara default:
- GoLang (termasuk Hugo, gin-gonic)
- Python (termasuk Flask)
- JavaScript/NodeJS
- PHP (termasuk Laravel)
- Ruby (termasuk Rails)
- Static HTML
- Rust (termasuk Rocket)
Anda dapat menemukan buildpack dan contoh yang telah dikonfigurasi sebelumnya di sini: https://github.com/kubero-dev/kubero
Addons dan Plugin
Addons di Kubero adalah ekstensi yang dideploy menggunakan Kubernetes Operator dan dapat dikonfigurasi melalui UI. Beberapa Addons bawaan sudah tersedia bersama dengan Kubero Operator. Sedangkan Addons lainnya memerlukan instalasi operator terpisah.
Instalasi Kubero
Cara termudah untuk menginstal Kubero adalah menggunakan Kubero CLI. Kubero CLI akan menginstal semua komponen yang diperlukan dan mengkonfigurasi semuanya untuk Anda. Namun, Anda juga dapat menginstal setiap komponen secara terpisah.
Saat ini, Kubero CLI mendukung integrasi dengan penyedia layanan Kubernetes berikut:
- Scaleway
- Linode
- Google Kubernetes Engine (GKE)
- DigitalOcean
- Kind (cluster Kubernetes lokal)
Meskipun demikian, Kubero tetap dapat diinstal pada cluster Kubernetes manapun dengan versi 1.19 atau lebih tinggi.
Panduan Cepat Instalasi Kubero
- Download dan Ekstrak Berkas Kubero CLI
Anda dapat mendownload berkas binary Kubero CLI sesuai dengan sistem operasi Anda.
- Binary (MacOS, Linux)
curl -fsSL get.kubero.dev | bash
- Brew (MacOS, Linux)
brew tap kubero-dev/kubero
brew install kubero-cli
- Jalankan Perintah Instalasi Kubero dan Ikuti Instruksi
kubero install
Instalasi/Upgrade Komponen Individual
Anda juga dapat menginstal setiap komponen Kubero secara terpisah menggunakan flag “-c”. Cara ini berguna jika Anda hanya ingin melakukan upgrade pada satu komponen tertentu.
kubero install -c kubero-operator
Daftar Komponen Kubero (lanjutan):
- ingress
- metrics
- certmanager
- kubero-operator
- kubero-ui
- all (default, menginstal semua komponen dalam urutan terbaik)
Memulai dengan Kubero
Setelah Kubero terinstal, Anda dapat mulai menggunakannya untuk deploy aplikasi Anda. Berikut adalah beberapa langkah dasar:
- Akses Kubero UI: Anda dapat mengakses Kubero UI melalui URL yang disediakan saat instalasi.
- Buat Project: Buat project baru untuk aplikasi Anda.
- Hubungkan Kode: Hubungkan kode aplikasi Anda ke Kubero.
- Konfigurasi Deployment: Konfigurasikan deployment aplikasi Anda, seperti port, replika, dan resource.
- Deploy Aplikasi: Deploy aplikasi Anda dengan mengklik tombol “Deploy”.
Kubero juga menyediakan dokumentasi yang lengkap untuk membantu Anda memulai: https://docs.kubero.dev/
Kesimpulan
Kubero adalah tool yang sangat berguna bagi developer yang ingin deploy aplikasi di Kubernetes dengan mudah dan cepat. Dengan Kubero, Anda dapat fokus pada pengembangan aplikasi tanpa perlu repot dengan infrastruktur dibaliknya.
Sumber Daya Tambahan: