Company
Date Published
Author
Mark Harrison
Word count
4404
Language
English
Hacker News points
None

Summary

Mark Harrison's article from February 3, 2020, delves into the concept of rolling deployments, a software deployment strategy that allows updates without downtime, thus keeping applications available 24/7. Unlike big-bang deployments that take the whole application offline, rolling deployments incrementally update software across multiple targets, ensuring at least one instance remains online to serve users. This method offers several advantages, such as the ability to perform health checks and rollbacks seamlessly. The article provides practical examples of implementing rolling deployments using popular tools like Docker, Kubernetes, and Octopus Deploy, highlighting Docker's native support for rolling updates and Kubernetes' capability to manage pod updates incrementally. Additionally, the article touches on the potential challenges of database rollbacks during deployments and emphasizes the importance of backward-compatible database changes. Harrison concludes by recommending rolling deployments for their minimal disruption and compatibility with continuous integration and delivery (CI/CD) pipelines.