Multi-Objective Optimization untuk Container Scheduling Menggunakan Algoritma Ɛ-NSGA-II

Eka Wijaya Susilo(1*), Henry Novianus Palit(2), Rolly Intan(3),


(1) Program Studi Teknik Informatika
(2) Program Studi Teknik Informatika
(3) Program Studi Teknik Informatika
(*) Corresponding Author

Abstract


Teknologi containerization sebagai implementasi virtualisasi di level OS meraih popularitas di beberapa tahun terakhir untuk menggantikan beberapa peranan virtual machine. Dalam implementasinya, seringkali dibutuhkan sejumlah container untuk menjalankan sebuah peran, sehingga diperlukan sistem orkestrasi untuk proses scheduling dan management container. Namun container scheduler yang tersedia pada sistem orkestrasi seperti Kubernetes umumnya hanya berfokus pada ketersediaan system resource dan general threshold. Padahal optimasi dalam hal efisiensi cluster sambil mempertahankan performa cluster tentulah penting untuk diimplementasikan sehingga dapat meminimalkan biaya operasional.
Optimasi pada container scheduler dilakukan secara multi-objektif dengan fokus pada efisiensi cluster dan throughput aplikasi yang di-schedule. Optimasi dilakukan dengan memanipulasi jumlah replika container yang menyala dan alokasinya di dalam cluster berdasarkan jumlah request yang diterima aplikasi. Proses optimasi dilakukan dengan menggunakan algoritma Epsilon-Dominance Non-Dominated Sorting Genetic Algorithm II (Ɛ-NSGA-II).
Hasil pengujian dalam cluster berisi 5 node menunjukkan bahwa proses optimasi scheduling dapat menghasilkan keputusan alokasi container yang optimal dan sesuai target yang ditentukan user. Proses algoritma Ɛ-NSGA-II untuk menghasilkan alokasi tersebut juga dapat selesai dalam rentang waktu yang pendek.


Keywords


genetic algorithm; multi-objective optimization; Kubernetes; container

Full Text:

PDF

References


Brands, T., Wismans, L., & van Berkum, E. 2014. Multi-objective transportation network design: Accelerating search by applying Ɛ-NSGAII. 2014 IEEE Congress On Evolutionary Computation (CEC), 405-412. doi: 10.1109/cec.2014.6900486

Example Voting App. 2018. GitHub repository: https://github.com/dockersamples/example-voting-app

Guerrero, C., Lera, I., & Juiz, C. 2017. Genetic Algorithm for Multi-Objective Optimization of Container Allocation in Cloud Architecture. Journal Of Grid Computing, 16(1), 113-135. doi: 10.1007/s10723-017-9419-x

Kollat, J., & Reed, P. 2005. The value of online adaptive search: a performance comparison of NSGA-II, Ɛ-NSGAII, and ƐMOEA. The Third International Conference On Evolutionary Multi-Criterion Optimization (EMO 2005), Lecture Notes in Computer Science, vol. 3410, p. 386–98.

Kollat, J., & Reed, P. 2006. Comparing state-of-the-art evolutionary multi-objective algorithms for long-term groundwater monitoring design. Advances In Water Resources, 29(6), 792-807. doi: 10.1016/j.advwatres.2005.07.010

kube-scheduler. 2018. Retrieved from https://kubernetes.io/docs/reference/command-line-tools-reference/kube-scheduler/

Kumar, A. 2018. Top 5+ Microservices Architecture and Design Best Practices - DZone Microservices. Retrieved from https://dzone.com/articles/top-5-microservices-architecture-and-design-best-p

Topliceanu, A. 2018. Scheduling in Kubernetes. Retrieved from http://alexandrutopliceanu.ro/post/scheduling-in-kubernetes/

What is Kubernetes - Learn Kubernetes from Basics. 2018. Retrieved from https://www.learnitguide.net/2018/08/what-is-kubernetes-learn-kubernetes.html


Refbacks

  • There are currently no refbacks.


Jurnal telah terindeks oleh :