Text
Uji performa dan keamanan penggunaan RunC, Kata Container, dan gVisor pada Kubernetes
Munculnya teknologi container menjadi solusi bagi pihak pengembang aplikasi dikarenakan kekhawatiran akan aplikasi yang dikembangkan tidak berjalan dengan normal ketika proses deployment dapat teratasi. Terdapat beberapa pilihan low level container runtimes yang dapat digunakan untuk diimplementasikan pada container, yaitu runC, Kata container, dan gVisor. Pembahasan terkait dengan container, tentunya tidak terlepas kaitannya dengan Kubernetes. Hal tersebut karena Kubernetes hadir sebagai sebuah container orchestration. Pemilihan low level container runtime yang tepat tentunya menjadi pendukung dalam peningkatan efektifitas penggunaan suatu Kubernetes cluster. Pengujian lebih lanjut dilakukan baik dari sisi performa dan keamanan dari low level container runtimes yang digunakan. Hal tersebut dilakukan untuk membantu pihak pengembang dalam menentukan low level container runtimes yang akan digunakan pada suatu Kubernetes cluster. Terdapat lima parameter pengujian performa yang diukur, yaitu performa CPU, memori, disk I/O, jaringan, dan performa ketika menjalankan sebuah web server nginx. Terdapat tiga tools yang digunakan untuk melakukan pengujian performa, yaitu sysbench, iperf3, dan Apache Benchmark. Hasil pengujian yang dilakukan menunjukkan, bahwa runC memiliki performa paling baik dari lima parameter performa yang diujikan. Dari segi keamanan, Kata container dan gVisor menunjukkan isolasi terhadap host yang baik karena tidak dapat dilakukan eksploitasi. Hal tersebut berbeda dengan runC, dimana dapat dilakukan eksploitasi terhadap host (worker node), seperti membuat direktori dan melakukan reboot. --
The emergence of container technology is a solution to application developers due to concerns that the developed application will not run normally when the deployment process can be resolved. There are several options of low-level container runtimes that can be used to implement containers, namely runC, said container, and gVisor. Discussions related to containers, of course, cannot be separated from Kubernetes. This is because Kubernetes exists as a container orchestration. The selection of the right low-level container runtime is certainly a support in increasing the effectiveness of using a Kubernetes cluster. Further testing was carried out both in terms of performance and security of the low level container runtimes used. This is done to assist the developer in determining the low level container runtimes to be used in a Kubernetes cluster. There are five performance test parameters that are measured, namely CPU performance, memory, disk I/O, network, and performance when running an nginx web server. There are three tools used to perform performance testing, namely sysbench, iperf3, and Apache Benchmark. The results of the tests carried out show that runC has the best performance of the five performance parameters tested. From a security point of view, the words container and gVisor indicate good host isolation because they cannot be exploited. This is different from runC, which can be exploited against the host (worker node), such as creating directories and rebooting.
No other version available