Volume 1 Issue 2 | 2024 | View PDF
Paper Id: IJMSM-V1I2P102
doi: 10.71141/30485037/V1I2P102
Zero Downtime Deployments: SRE Strategies for Continuous Delivery
Deepak
Citation:
Deepak, "Zero Downtime Deployments: SRE Strategies for Continuous Delivery" International Journal of Multidisciplinary on Science and Management, Vol. 1, No. 2, pp. 17-29, 2024.
Abstract:
The idea of zero downtime deployments has now become imperative as organizations that are into modern software development insist on continuity of service delivery and high availability. Site Reliability Engineering (SRE) gives approaches for dealing with such deployments successfully so clients interact with an uninterrupted service. Generally, this journal article discusses the main concepts worth emphasizing in the SRE process and explains how to apply them to establish zero downtime deployments in present-day business conditions. In the Lyft SRE case, blue-green deployments, canary release, feature toggling, and rolling updates help SRE teams keep the system available for users but deliver new features regularly. It provides a discussion of several issues, especially during zero downtime deployments, including handling databases and the state of the applications. Moreover, we explore how setup and deployment automation tools such as Kubernetes, Jenkins, and Continuous Integration/Continuous Deployment (CI/CD) pipelines are used to automate setup and deployment processes. To fill this gap, the article carries out a literature study of the various zero downtime strategies on system reliability, performance and user experience and examines real-life case studies. Several approaches are suggested to achieve highly flexible deployment, namely, monitoring, testing, and rollback procedures. Lastly, the recent trend of zero downtime deployment concepts is discussed in the context of future enhancement of deployment technologies to fulfill emerging requirements for real-time solutions.
Keywords: Zero downtime deployments, Site Reliability Engineering (SRE), Continuous Delivery (CD), Blue-Green Deployments, Canary Releases, Feature Toggles, Database Migrations, Kubernetes, Jenkins, CI/CD Pipelines.
References:
1. Gene Kim et al., The DevOps handbook: How to create world-class agility, reliability, and security in
technology organizations, IT Revolution Press, pp. 1-528, 2021.
2. Michael Hüttermann, Introducing DevOps, DevOps for Developers, pp. 15-31, 2012.
3. Gene Kim, Kevin Behr, and George Spafford, The Phoenix Project: A Novel about IT, DevOps, and Helping
Your Business Win, 5th ed., IT Revolution, pp. 1-432, 2018.
4. Jez Humble, and David Farley, Continuous Delivery Reliable Software Releases Through Build, Test, and
Deployment Automation, Pearson Education, pp. 1-512, 2010.
5. Nicole Forsgren, Jez Humble, and Gene Kim, Accelerate: The Science of Lean Software and DevOps: Building
and Scaling High Performing Technology Organizations, IT Revolution Press, pp. 1-288, 2018.
6. Michael de Jong, Arie van Deursen, and Anthony Cleve, “Zero-Downtime SQL Database Schema Evolution
for Continuous Deployment,” IEEE/ACM 39th International Conference on Software Engineering: Software
Engineering in Practice Track (ICSE-SEIP), Buenos Aires, Argentina, pp. 143-152, 2017.
7. Maxim Tuovinen, “Reducing Downtime During Software Deployment,” Tampere University of Technology,
Master of Science Thesis, pp. 1-59, 2015.
8. A. Gavrilovska, K. Schwan, and V. Oleson, “A Practical Approach for 'Zero' Downtime in an Operational
Information System,” Proceedings 22nd International Conference on Distributed Computing Systems,
Vienna, Austria, pp. 345-352, 2002.
9. Len Bass, Ingo Weber, and Liming Zhu, DevOps A Software Architect's Perspective, Pearson Education, pp.
1-352, 2015.
10. Pilar Rodríguez et al., “Continuous Deployment of Software Intensive Products and Services: A Systematic
Mapping Study,” Journal of Systems and Software, vol. 123, pp. 263-291, 2017.
11. Mojtaba Shahin, Muhammad Ali Babar, and Liming Zhu, “Continuous Integration, Delivery and
Deployment: A Systematic Review on Approaches, Tools, Challenges and Practices,” IEEE Access, vol. 5,
pp. 3909-3943, 2017.
12. Eberhard Wolff, A Practical Guide to Continuous Delivery, Addison-Wesley Professional, pp.1-288, 2017.
13. Sergejs Bobrovskis, and Aleksejs Jurenoks, “A Survey of Continuous Integration, Continuous Delivery and
Continuous Deployment,” BIR Workshops, pp. 1-9, 2018.
14. Aleksi Häkli, “Implementation of Continuous Delivery Systems,” Tampere University of Technology, Master
of Science thesis, pp. 1-62, 2016.
15. Antra Malhotra et al., “Evaluate Canary Deployment Techniques Using Kubernetes, Istio, and Liquibase
for Cloud Native Enterprise Applications to Achieve Zero Downtime for Continuous Deployments,” IEEE
Access, vol. 12, pp. 87883-87899, 2024.
16. Praveen Sivathapandi, Debasish Paul, and Sharmila Ramasundaram Sudharsanam, “Enhancing CloudNative CI/CD Pipelines with AI-Driven Automation and Predictive Analytics,” Australian Journal of
Machine Learning Research Applications, vol. 1, no. 1, pp. 226-265, 2021.
17. Anirudh Mustyala, “CI/CD Pipelines in Kubernetes: Accelerating Software Development and
Deployment,” EPH - International Journal of Science and Engineering, vol. 8, no. 3, pp. 1-11, 2022.
18. SL de Clianna, Mechanism for Surveillance of Standstill and Rollback, Decisions on Negotiating Structure
and Plans for the Uruguay Round, 1987.
19. Nathan E. Busch, and Joseph F. Pilat, “South African Rollback: Revisiting Monitoring and Verification
Lessons after 20 Years,” Comparative Strategy, vol. 33, no. 3, pp. 236-261, 2014.
20. A. Ayyagiri, P.K.G. Pandian, P. Goel, “Efficient Data Migration Strategies in Sharded Databases,” Journal of
Quantum Science and Technology, vol. 1, no. 2, pp. 72-87, 2024.
21. EP Bansleben, Database Migration: A Literature Review and Case Study, 2004.