Updating cluster components
This page documents the update process for all platform components.
Updating App Cluster
The App Cluster contains only one component: the konnector
deployment.
To update the konnector
, simply change it's container image to the new one.
Example using kubectl
kubectl set image --namespace kube-bind deployment/konnector konnector=public.ecr.aws/w5n9a2g2/anynines/konnector:v1.4.0
Example using a manifest
Apply this updated deployment manifest:
apiVersion: apps/v1
kind: Deployment
metadata:
name: konnector
namespace: kube-bind
labels:
app: konnector
spec:
replicas: 2
selector:
matchLabels:
app: konnector
template:
metadata:
labels:
app: konnector
spec:
restartPolicy: Always
serviceAccountName: konnector
containers:
- name: konnector
# This image should point to the new version:
image: public.ecr.aws/w5n9a2g2/anynines/konnector:v1.4.0
env:
- name: POD_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
- name: POD_NAMESPACE
valueFrom:
fieldRef:
fieldPath: metadata.namespace
Updating Control Plane Cluster
Crossplane runtime
To update the crossplane runtime, please refer to the upstream documentation. The exact process will depend on your installation method.
Crossplane providers and configuration packages
- Update anynines provider
kubectl patch providers/provider-anynines \
--type merge -p '{"spec":{"package":"public.ecr.aws/w5n9a2g2/klutch/provider-anynines:v1.3.2"}}'
- Finally update anynines configuration package
kubectl patch configurations/w5n9a2g2-anynines-dataservices \
--type merge -p '{"spec":{"package":"public.ecr.aws/w5n9a2g2/anynines/dataservices:v1.4.0"}}'
Provider backend
Please read the change log before updating, and follow any migration instructions there.
- Install the latest CRDs for the backend according to the backend installation instructions
- Update the backend deployment according to the installation instructions
- If the new version also introduces new Data Service types, follow the binding creation steps (interactively or non-interactively) to install them in App Clusters.
Notes
Downtime during update
While an update is in progress, the crossplane providers and klutch-bind backend may incur a short downtime. Note that this does not affect any of the Data Service instances: they will continue to be running and reachable.
Any changes to the Data Service instances (creation, update, deletion) that were made while an update is in progress will be applied as soon as the update is complete.