Docker and Kubernetes Adoption Strategies for Large-Scale Java Applications
-
DOI:
https://doi.org/10.67228/30713498/IJADSMC-2021PI6U1KPublished 05-10-2021
Docker, Kubernetes, Java Applications, Containerization, Microservices, Cloud-Native Architecture, Devops, CI/CD, Scalability, Container Orchestration Issue
Section
ArticlesAbstract
Containerization and cloud-native technologies have altered how large-scale software systems are built, deployed and managed, enabling organizations to achieve more scalability, agility and operational efficiency. Docker and Kubernetes are the de facto standards for packaging software into lightweight portable containers and orchestrating them across distributed environments. Enterprise Java apps are generally mission important to business processes and service millions of users. So, Docker and Kubernetes coming into play provide many advantages: shorter deployment time, better resource management, scalability and fault tolerance. The challenges of application modernization, dependency management, performance tuning, security problems, data persistence and complications of integrating legacy components to contemporary infrastructure. Porting huge Java systems to a containerized and cloud-native architecture. The work proposes a systematic approach for adoption that can be used as support for organizations in the transition process, focusing on evaluation of the application, best practices for containerization, decomposition in microservices when feasible, orchestration with Kubernetes, automated CI/CD pipelines, monitoring and security governance. The suggested methodology aims to reduce risks of migration and increase benefits of cloud native deployment frameworks. The technique was verified using a case study. The case study was based on a large scale business Java software. We have evaluated the deployment efficiency, scalability and reliability of the system and operation performance before and after migration. The results show considerable gains in deployment speed, resource allocation, fault tolerance and infrastructure scalability, and key success factors and lessons learned during the transformation process. The main contributions of this research include realistic adoption model, identification of typical migration problems and mitigation techniques, and supply of concrete proof in favor of Docker and Kubernetes efficacy in corporate Java environments. The learnings from this study provide guidance to organizations that are in the infancy of similar modernization journeys and lay the ground for future implications of adopting emerging cloud native technologies, automation practices and platform engineering strategies to support the increased complexity and distribution of Java application ecosystems.
References
[1] Peinl, René, Florian Holzschuher, and Florian Pfitzer. "Docker cluster management for the cloud-survey results and own solution." Journal of Grid Computing 14.2 (2016): 265-282.
[2] Bogo, Matteo, et al. "Component‐aware orchestration of cloud‐based enterprise applications, from TOSCA to Docker and Kubernetes." Software: Practice and Experience 50.9 (2020): 1793-1821.
[3] Altaf, Umer, et al. "Auto-scaling a defence application across the cloud using docker and kubernetes." 2018 IEEE/ACM International Conference on Utility and Cloud Computing Companion (UCC Companion). IEEE, 2018.
[4] Haque, Mubin Ul, Leonardo Horn Iwaya, and M. Ali Babar. "Challenges in docker development: A large-scale study using stack overflow." Proceedings of the 14th ACM/IEEE international symposium on empirical software engineering and measurement (ESEM). 2020.
[5] Srigadde, B. R. (2020). When Force Is With You but Not Lightning Component. American International Journal of Computer Science and Technology, 2(1), 23-33. https://doi.org/10.63282/3117-5481/AIJCST-V2I1P103
[6] Diouf, Gor Mack, Halima Elbiaze, and Wael Jaafar. "On Byzantine fault tolerance in multi-master Kubernetes clusters." Future Generation Computer Systems 109 (2020): 407-419.
[7] Chang, Chia-Chen, et al. "A kubernetes-based monitoring platform for dynamic cloud resource provisioning." GLOBECOM 2017-2017 IEEE Global Communications Conference. IEEE, 2017.
[8] Muppaneni, R. K. (2020). Retail Reimagined: How Dynamics 365 Commerce Is Driving Omnichannel Experiences. International Journal of AI, BigData, Computational and Management Studies, 1(1), 49-59. https://doi.org/10.63282/3050-9416.IJAIBDCMS-V1I1P106
[9] Manchana, Ramakrishna. "Cloud-Agnostic Solution for Large-Scale HighPerformance Compute and Data Partitioning." North American Journal of Engineering Research 1.2 (2020).
[10] Wang, Yujing, and Darrel Ma. "Developing a process in architecting microservice infrastructure with Docker, Kubernetes, and Istio." arXiv preprint arXiv:1911.02275 (2019).
[11] Naik, Nitin. "Docker container-based big data processing system in multiple clouds for everyone. " 2017 IEEE International Systems Engineering Symposium (ISSE). IEEE, 2017.
[12] Shah, Jay, and Dushyant Dubaria. "Building modern clouds: using docker, kubernetes & Google cloud platform." 2019 IEEE 9th Annual Computing and Communication Workshop and Conference (CCWC). IEEE, 2019.
[13] Li, Qiankun, et al. "Building a Cloud-Ready Program: A highly scalable Implementation based on Kubernetes." Proceedings of the 2nd International Conference on Advances in Image Processing. 2018.
[14] Diouf, Gor Mack, Halima Elbiaze, and Wael Jaafar. "On Byzantine fault tolerance in multi-master Kubernetes clusters." Future Generation Computer Systems 109 (2020): 407-419.
[15] Kommuru, Madhurima, Swathi Thatraju, and Appala Nooka Kumar Doodala. "Challenges of Deep Learning in Natural Language Processing: A Healthcare-Oriented Perspective." International Journal of Machine Learning and Predictive Analytics 3.2 (2020): 01-19.
[16] Aly, Mohab, Foutse Khomh, and Soumaya Yacout. "Kubernetes or openShift? "Which technology best suits eclipse hono IoT deployments? "2018 IEEE 11th Conference on Service-Oriented Computing and Applications (SOCA). IEEE, 2018.
[17] Srigadde, B. R., & Talakola, S. (2020). How to Open a Modal Using Quick Action on the Record Detail Page. International Journal of Artificial Intelligence, Data Science, and Machine Learning, 1(2), 43-51. https://doi.org/10.63282/3050-9262.IJAIDSML-V1I2P105
[18] Varghese, Shiju. "Building Go Web Applications on Google Cloud." Web Development with Go: Building Scalable Web Apps and RESTful Services. Berkeley, CA: Apress, 2015. 251-283.
[19] He, Zhigang. "Novel container cloud elastic scaling strategy based on Kubernetes." 2020 IEEE 5th information technology and mechatronics engineering conference (ITOEC). IEEE, 2020.
Downloads