9 Reliability-Based Best Practices for Canary Deploys
Blog post from New Relic
In the realm of software deployment, canary deploys are highlighted as an effective strategy for introducing new changes with minimal disruption, allowing for quick rollback if issues arise. New Relic advocates for canary deploys, which involve releasing new functionalities to a subset of servers to monitor performance before a full rollout. The blog outlines best practices for canary deployments, emphasizing the importance of careful planning, defining appropriate metrics, and ensuring the canary process covers a significant portion of the workload without compromising service stability. The balance between canary time, size, and metric selection is crucial, as highlighted by Google engineer Štěpán Davidovič's "triangle of canarying," which guides these deployments to enhance predictive accuracy while minimizing risks. The piece underscores that while canary deploys are powerful tools for maintaining reliability and speed in software updates, their success depends on thoughtful design tailored to the specific needs and scale of an organization.