digilib@itb.ac.id +62 812 2508 8800

Skalabilitas merupakan salah satu fitur utama Kubernetes yang terkait dengan konfigurasi sumber daya terhadap suatu aplikasi. Salah satu fitur skalabilitas yang dimiliki Kubernetes atalah Horizontal Pod Autoscaling (HPA). Akan tetapi, metrik yang dapat digunakan oleh HPA bawaan Kubernetes terbatas dan hanya berperilaku reaktif. Dengan demikian, berbagai solusi HPA dengan kode sumber terbuka sudah banyak diimplementasikan untuk memenuhi kasus penggunaan yang lebih spesifik, salah satunya HPA prediktif dengan model statistik untuk memprediksi kebutuhan autoscaling secara lebih dini. Salah satu model statistik yang cocok untuk skenario data penggunaan yang berbasis deret waktu adalah model Holt-Winters. Akan tetapi, karena solusi prediktif dibangun berdasarkan data beban historis dengan pola tertentu, solusi prediktif rentan mengalami degradasi kinerja layanan bila terdapat lonjakan beban di luar pola atau yang dikenal sebagai beban burst. Tugas akhir ini mengusulkan implementasi sistem yang menawarkan manfaat HPA secara prediktif dengan meminimalisir dampak terhadap kinerja layanan sesuai Service Level Indicator (SLI) dan Service Level Objective (SLO) yang telah dikonfigurasi dalam skenario beban burst. Dengan memanfaatkan kemampuan observability dari teknologi service mesh Istio, fungsi deteksi pelanggaran SLO ditambahkan pada implementasi kode sumber terbuka yang sudah banyak digunakan. Fungsi deteksi pelanggaran SLO ini dibangun di atas fitur observability service mesh terhadap HTTP request yang diterima oleh suatu layanan, seperti metrik latensi dan jumlah request yang diterima. Data metrik kemudian diolah sesuai SLI yang dikonfigurasi yaitu berupa tail latency persentil ke-99. Pengujian yang dilakukan menunjukkan bahwa sistem yang dibangun berhasil meminimalisir dampak terhadap kinerja layanan dengan tetap menjaga penggunaan sumber daya yang seefisien mungkin, dengan penurunan latensi p99 hingga 160 milisekon pada 4000 RPS layanan HTTP.