The Evolution of Cloud-Native Architectures: Exploring the Synergy between Kubernetes and Microservices
DOI:
https://doi.org/10.63282/3050-9246.IJETCSIT-V1I4P104Keywords:
Cloud-native architectures, Kubernetes, Microservices, Containerization, DevOps, Service Mesh, Orchestration, CI/CD, Scalability, ResilienceAbstract
Together, these aspects of virtualization have greatly transformed cloud computing's approach to the development, deployment, and management of applications. Together with the appearance of cloud-native architectures, companies have started to adopt efficient, resilient, and scalable software systems. Kubernetes: A highly useful orchestration tool for managing containerized applications in microservices architecture. This paper focuses on understanding Cloud-native architectures, combining Kubernetes with microservices, and its outcomes for software development and deployment. In this context, we detail the definitions and approaches of promising methods and techniques and the strategies for implementing this domain. We also discuss the potential issues and possible research opportunities for further development of this domain. The study is hoped to provide a heuristic to users who wish to adopt Kubernetes to construct robust microservices platforms
Downloads
References
[1] Armbrust, M., Fox, A., Griffith, R., Joseph, A. D., Katz, R., Konwinski, A., ... & Zaharia, M. (2010). A view of cloud computing. Communications of the ACM, 53(4), 50-58.
[2] Buyya, R., Yeo, C. S., & Venugopal, S. (2008, September). Market-oriented cloud computing: Vision, hype, and reality for delivering its services as computing utilities. In 2008 10th IEEE International Conference on high-performance computing and communications (pp. 5-13). IEEE.
[3] Vayghan, L. A., Saied, M. A., Toeroe, M., & Khendek, F. (2019, July). Microservice-based architecture: Towards high-availability for stateful applications with Kubernetes. In 2019 IEEE 19th international conference on software quality, reliability, and security (QRS) (pp. 176-185). IEEE.
[4] Lewis, J., & Fowler, M. (2014, March). A Definition of this New Architectural Term.
[5] Dragoni, N., Giallorenzo, S., Lafuente, A. L., Mazzara, M., Montesi, F., Mustafin, R., & Safina, L. (2017). Microservices: yesterday, today, and tomorrow. Present and ulterior software engineering, 195-216.
[6] Bass, L., Weber, I., & Zhu, L. (2015). DevOps: A software architect's perspective. Addison-Wesley Professional.
[7] Burns, B., Grant, B., Oppenheimer, D., Brewer, E., & Wilkes, J. (2016). Borg, Omega, and Kubernetes. Communications of the ACM, 59(5), 50-57.
[8] Pahl, C., Jamshidi, P., & Zimmermann, O. (2018). Architectural principles for cloud software. ACM Transactions on Internet Technology (TOIT), 18(2), 1-23.
[9] Villamizar, M., Garcés, O., Castro, H., Verano, M., Salamanca, L., Casallas, R., & Gil, S. (2015, September). Evaluating the monolithic and the microservice architecture pattern to deploy web applications in the cloud. 2015 the 10th computing conference was held in Colombia (10ccc) (pp. 583-590). IEEE.
[10] Merkel, D. (2014). Docker: lightweight linux containers for consistent development and deployment. Linux j, 239(2), 2.
[11] Turnbull, J. (2014). The Docker Book: Containerization is the new virtualization. James Turnbull.
[12] Kang, H., Le, M., & Tao, S. (2016, April). Container and microservice-driven design for cloud infrastructure devops. In 2016 IEEE International Conference on Cloud Engineering (IC2E) (pp. 202-211). IEEE.
[13] Davis, C. (2019). Cloud Native Patterns: Designing Change-Tolerant Software. Simon and Schuster.
[14] Laszewski, T., Arora, K., Farr, E., & Zonooz, P. (2018). Cloud Native Architectures: Design high-availability and cost-effective applications for the cloud. Packt Publishing Ltd.
[15] Gilbert, J. (2018). Cloud Native Development Patterns and Best Practices: Practical architectural patterns for building modern, distributed cloud-native systems. Packt Publishing Ltd.
[16] Vayghan, L. A., Saied, M. A., Toeroe, M., & Khendek, F. (2019). Kubernetes as an availability manager for microservice applications. arXiv preprint arXiv:1901.04946.
[17] Sayfan, G. (2019). Hands-On Microservices with Kubernetes: Build, deploy, and manage scalable microservices on Kubernetes. Packt Publishing Ltd.
[18] Luksa, M. (2017). Kubernetes in action. Simon and Schuster.
[19] Arundel, J., & Domingus, J. (2019). Cloud Native DevOps with Kubernetes: building, deploying, and scaling modern applications in the Cloud. O'Reilly Media.
[20] Carrasco, J., Cubo, J., & Pimentel, E. (2014, September). Towards a flexible deployment of multi-cloud applications based on TOSCA and CAMP. In European conference on service-oriented and cloud computing (pp. 278-286). Cham: Springer International Publishing.