Release patterns
In the last section, we discussed the Jenkins pipeline patterns used to speed up the build execution (parallel steps), help with the code reuse (shared libraries), limit the risk of production bugs (rollback), and deal with manual approvals (manual steps). This section will focus on the next group of patterns; this time, related to the release process. They are designed to reduce the risk of updating the production to a new software version.
We already described one of the release patterns, rolling updates, in Chapter 6, Clustering with Kubernetes. Here, we will present two more: blue-green deployment and canary releases.
Information
A very convenient way to use the release patterns in Kubernetes is to use the Istio service mesh. Read more at https://istio.io/.
Blue-green deployment
Blue-green deployment is a technique to reduce the downtime associated with the release. It concerns having two identical production environments...