Teknologi virtualisasi kontainer membawa efisiensi ke tingkat yang jauh lebih tinggi jika dibandingkan dengan Virtual Machine (VM) tradisional yang memvirtualisasikan mesin fisik. Saat ini, teknologi kontainer telah sukses diterapkan dalam lingkungan operasional, terutama bersamaan dengan adopsi arsitektur layanan mikro (microservices). Meskipun demikian, dalam pengelolaan skala besar di dunia nyata, pengoperasian ratusan kontainer sekaligus sering kali mendatangkan berbagai tantangan baru bagi tim IT.

Sebagai contoh, ketika operator harus menangani terlalu banyak kontainer secara manual, potensi terjadinya eror dalam pengelolaan menjadi sangat tinggi.

Untuk mengatasi kelemahan tersebut, kini tersedia alat orkestrasi seperti Kubernetes yang berfungsi mengatur pengelolaan kontainer secara otomatis. Dengan menggunakan Kubernetes, operator sistem dapat mengendalikan banyak kontainer sekaligus dalam satu waktu. Hal ini memungkinkan penerapan teknologi kontainer untuk layanan berskala besar menjadi jauh lebih mudah dan efisien.

monitoring kubernetes

Penyedia layanan cloud global pun bergerak cepat mengadopsi perubahan ini ke dalam lini produk mereka. Langkah ini diambil karena infrastruktur yang andal tetap diperlukan untuk menyokong kestabilan orkestrasi tersebut. Melalui penempatan layanan Kubernetes (K8s) di atas infrastruktur virtual yang sudah ada, penyedia cloud dapat menghadirkan manajemen kontainer yang terabstraksi penuh. Pendekatan ini sejalan dengan upaya pengurangan biaya pengelolaan infrastruktur perusahaan.

Saat ini, mencerminkan tren industri tersebut, banyak layanan berbasis kontainer yang telah sukses beroperasi secara global. Beberapa di antaranya meliputi Azure Kubernetes Service (AKS), Google Kubernetes Engine (GKE), dan Amazon Elastic Kubernetes Service (EKS).

Mekanisme JENNIFER APM untuk Lingkungan K8s

monitoring kubernetes

Catatan Teknis: Artikel ini menggunakan contoh lingkungan AKS (Azure Kubernetes Service). Namun, perlu dipahami bahwa prinsip utama dari produk JENNIFER APM adalah mendukung K8s secara universal. Oleh karena itu, metode pemantauan yang sama dapat diterapkan di semua lingkungan cloud lainnya dengan fokus penjelasan pada ekosistem Docker.

Secara prinsip, agen JENNIFER mendukung arsitektur K8s dengan cara yang sama seperti mendukung lingkungan kontainer biasa. Pada dasarnya, kita hanya perlu mendaftarkan eksekusi file agen serta mengatur variabel lingkungan (environment variables) di dalam kontainer. Sebelumnya, aktivasi agen JENNIFER di lingkungan Docker dapat dilakukan melalui dua metode berikut:

  1. Menentukan volume penyimpanan dan variabel lingkungan untuk file biner agen secara langsung.

  2. Membangun citra (build image) dengan menyertakan file biner agen dan variabel lingkungan di dalam file spesifikasi Dockerfile kontainer.

Arsitektur Kubernetes melibatkan distribusi unit kerja berupa pod yang membungkus kontainer di dalamnya. Oleh sebab itu, dukungan agen untuk K8s tetap mengacu pada dua prinsip dasar di atas. Dalam praktiknya, metode kedua dapat langsung diimplementasikan ke dalam cluster K8s Anda.

Mengonfigurasi Persistensi Data Menggunakan YAML

Karakteristik unik K8s memungkinkan sebuah volume penyimpanan terhubung langsung ke tingkat pod (yang dapat berisi grup kontainer). Oleh karena itu, koneksi antara file biner agen JENNIFER dan kontainer dilakukan melalui mekanisme Persistent Volume (PV) yang diatur oleh K8s.

Setelah volume yang berisi file biner agen siap, Anda hanya perlu menambahkan konfigurasi volume yang terhubung ke PV serta mengatur parameter env di dalam file konfigurasi YAML.

monitoring kubernetes

Selanjutnya, Anda dapat menggunakan perintah standar berikut untuk menerapkan konfigurasi: kubectl apply -f <nama_file>.yaml

Setelah perintah dijalankan, Anda dapat langsung memeriksa apakah proses monitoring kubernetes pada dasbor JENNIFER APM sudah berfungsi dengan normal.

monitoring kubernetes

Memantau Skalabilitas Pod (Autoscaling) Secara Real-Time

Sebagai kelebihan utama dari platform cloud, pengguna dapat dengan bebas menambahkan atau menghapus worker node pada infrastruktur abstrak K8s. Di saat yang sama, Anda juga bisa melakukan skala kapasitas (scaling) jumlah instance pod pada aplikasi, baik secara manual maupun otomatis.

Kubernetes mendukung fitur Horizontal Pod Autoscaling (HPA) untuk penskalaan otomatis berdasarkan beban kerja. Sebagai contoh, jika satu instance awal diatur di dalam berkas “demo.yaml” dan disetel untuk berkembang maksimal hingga 3 unit saat beban puncak, sistem akan berjalan secara dinamis.

Ketika kondisi server sedang senggang tanpa adanya beban traffic, hanya akan ada 1 pod yang aktif berjalan. Namun, adakalanya pod tersebut belum langsung memunculkan grafik data di konsol JENNIFER. Hal ini terjadi karena adanya perbedaan jeda antara pod yang baru diunggah dengan permintaan (request) riil yang dikirimkan ke aplikasi internal.

Akan tetapi, jika Anda melakukan uji beban (load testing) dalam kondisi ini, sistem HPA akan otomatis mengunggah 3 pod sekaligus untuk membagi beban kerja. Anda dapat langsung memantau hasil lonjakan data dan performa dari ketiga pod tersebut secara transparan di layar konsol JENNIFER APM.

Melakukan monitoring kubernetes kini menjadi jauh lebih praktis dan akurat demi menjaga stabilitas aplikasi microservices Anda dari risiko crash. Jika Anda ingin mencoba langsung keandalan JENNIFER APM dalam mengawal arsitektur kontainer Anda, dapatkan fasilitas free trial gratis selama 30 hari khusus pengguna baru dengan [Klik Di Sini].

0 CommentsClose Comments

Leave a comment