Canary
Definition
A canary is a deployment strategy used in software development and operations to reduce the risk of introducing a new software version into production. It involves gradually rolling out the update to a small subset of users or systems before a full-scale deployment. This approach allows teams to monitor the new version’s performance and stability, identifying any issues before they impact the entire user base.
Secure Settings Example
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-app
spec:
replicas: 10
selector:
matchLabels:
app: my-app
template:
metadata:
labels:
app: my-app
spec:
containers:
- name: my-app-container
image: my-app:latest
strategy:
type: RollingUpdate
rollingUpdate:
maxUnavailable: 1
maxSurge: 1
Insecure Settings Example
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-app
spec:
replicas: 10
selector:
matchLabels:
app: my-app
template:
metadata:
labels:
app: my-app
spec:
containers:
- name: my-app-container
image: my-app:latest
strategy:
type: Recreate