Explaining the concept of canary deployment
As previously mentioned, when we write a new version of an application, we need to deliver it without stopping or delaying the service in any way. An important step, therefore, is to deploy and test the new version first. If an error occurs, we will then need to rollback the deployments and maintain the old version of the application until any problems with the new version are solved. The canary deployment was created to so solve deployment-related problems such as this.
The canary deployment is a deployment pattern that allows us to deliver a new version of an application to the subset of a server. Then, the new version of the application can be tested, and, if an error occurs, then the delivery rolls back and keeps the old version, propagating a new version for the remaining servers. In this pattern, we can define some servers as canary servers. The deployment first occurs in the canary server, after which a test is done on the canary server....