...

/

Deploying New Releases Using the Canary Strategy

Deploying New Releases Using the Canary Strategy

Learn how to deploy a new release using the canary strategy.

We'll cover the following...

Use Argo Rollouts

What we’ve done up to now is a bit boring. We haven’t yet seen any advantage to using Argo Rollouts. That’s about to change. We’ll deploy a second release, and that should kick off the canary deployment process.

Let’s go!

Shell
helm upgrade devops-toolkit helm \
--namespace devops-toolkit \
--reuse-values \
--set image.tag=2.9.9

Watch the rollouts

We changed the tag of the image to 2.9.9 while reusing all the other values.

Let’s watch the rollout and see what’s going on.

Shell
kubectl argo rollouts \
--namespace devops-toolkit \
get rollout devops-toolkit-devops-toolkit \
--watch

Output of the yaml file

The output is as follows.

YAML
Name: devops-toolkit-devops-toolkit
Namespace: devops-toolkit
Status: ॥ Paused
Strategy: Canary
Step: 1/8
SetWeight: 20
ActualWeight: 20
Images: vfarcic/devops-toolkit-series:2.6.2 (stable)
vfarcic/devops-toolkit-series:2.9.9 (canary)
Replicas:
Desired: 2
Current: 3
Updated: 1
Ready: 3
Available: 3
NAME KIND STATUS AGE INFO
⟳ devops-toolkit-devops-toolkit Rollout ॥ Paused 2m56s
├──# revision:2
│ └──⧉ devops-toolkit-devops-toolkit-6785bfb67b ReplicaSet ✔ Healthy 36s canary
│ └──□ devops-toolkit-devops-toolkit-6785bfb67b-zrzff Pod ✔ Running 36s ready:1/1
└──# revision:1
└──⧉ devops-toolkit-devops-toolkit-849fcb5f44 ReplicaSet ✔ Healthy 2m41s stable
├──□ devops-toolkit-devops-toolkit-849fcb5f44-fgl5v Pod ✔ Running 2m41s ready:1/1
└──□ devops-toolkit-devops-toolkit-849fcb5f44-klcrh Pod ✔ Running 2m41s ready:1/1

Statistics of

...