Abstract
Microservice architecture is nowadays a popular design pattern for cloud applications. Usually microservices are launched on the servers of a cloud datacenter inside virtualization containers. This provides their isolation and performance comparable to virtual machines. However, security of virtualization containers remains a problem. They share the hosts machine operating kernel and thus their mutual isolations depends on proper implementation of kernel isolation features like cgroups or namespaces. Moreover the usage of kernel security modules like SELinux is hindered by different base Linux distributions used for containers creation. The concept of unikernels provides much better security for microservices. They are launched on a hypervisor instead of a full operating system kernel and contain only the base files needed to run the application. However their performance in realistic environments still remains a question. In this paper we port a microservice-based cloud application from Docker containers to Rumpkernel and OSv unikernels and analyse its performance. It is shown, that the performance of this unikernel-based port can match or exceed the more traditional approaches.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
References
Madhavapeddy, A., Mortier, R., Rotsos, C., Scott, D.J., Singh, B., Gazagnaire, T., Smith, S.A., Hand, S., Crowcroft, J.A.: Unikernels: library operating systems for the cloud. ACM SIGPLAN Not. 48(4), 461–472 (2013). ASPLOS’13
Engler, D.R., Kaashoek, M., O’Toole, J.: Exokernel: an operating system architecture for application-level resource management. ACM SIGOPS Oper. Syst. Rev. 29(5), 251–266 (1995)
Pavlicek, R.C.: Unikernels: Beyond Containers to the Next Generation of Cloud. O’Reilly Media (2017)
Madhavapeddy, A., Scott, D.J.: Unikernels: rise of the virtual library operating system. Commun. ACM 51(1), 61–69 (2014)
Galois Inc.: The Haskell Lightweight Virtual Machine (HaLVM) source archive. https://github.com/GaloisInc/HaLVM. Accessed 24 May 2019
Bratterud, A., Walla, A., Haugerud H., Engelstad, P.E., Begnum, K.M.: IncludeOS: a minimal, resource efficient unikernel for cloud services. In: 2015 IEEE 7th International Conference on Cloud Computing Technology and Science, pp. 250–257 (2015)
Olivier, P., Chiba, D., Lankes, S., Min, C., Ravindran, B.: A binary-compatible unikernel. In: Proceedings of the 15th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments, pp. 59–73 (2019)
Briggs, I., Day, M.J., Guo, Y., Marheine, P., Eide, E.: A Performance Evaluation of Unikernels (2014). http://media.taricorp.net/performance-evaluation-unikernels.pdf. Accessed 24 May 2019
Xavier, B.G., Ferreto, T., Jersak, L.C.: Time provisioning evaluation of KVM, docker and unikernels in a cloud platform. In: 2016 16th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing, pp. 277–280 (2016)
Goethals, T., Sebrechts, M., Atrey, A., Volckaert, B., Turck, F.D.: Unikernels vs containers: an in-depth benchmarking study in the context of microservice applications. In: 2018 IEEE 8th International Symposium on Cloud and Service Computing, pp. 1–8 (2018).
Plauth, M., Feinbube, L., Polze, A.: A performance evaluation of lightweight approaches to virtualization. In: CLOUD COMPUTING 2017: The Eighth International Conference on Cloud Computing, GRIDs, and Virtualization, pp. 34–48 (2017)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2020 Springer Nature Switzerland AG
About this paper
Cite this paper
Jaworski, J., Karwowski, W., Rusek, M. (2020). Microservice-Based Cloud Application Ported to Unikernels: Performance Comparison of Different Technologies. In: Borzemski, L., Świątek, J., Wilimowska, Z. (eds) Information Systems Architecture and Technology: Proceedings of 40th Anniversary International Conference on Information Systems Architecture and Technology – ISAT 2019. ISAT 2019. Advances in Intelligent Systems and Computing, vol 1050. Springer, Cham. https://doi.org/10.1007/978-3-030-30440-9_24
Download citation
DOI: https://doi.org/10.1007/978-3-030-30440-9_24
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-30439-3
Online ISBN: 978-3-030-30440-9
eBook Packages: Intelligent Technologies and RoboticsIntelligent Technologies and Robotics (R0)