What's on this page
Configuring BEL's lifecycle automation
BEL provides lifecycle automation for Linkerd in the form of a Kubernetes operator that runs on the cluster and allows for automated installation and upgrades of Linkerd, across both control plane and data plane.
Opt-in behavior
Lifecycle operator behavior is opt-in. Even with the operator running on the cluster, it will not act on Linkerd unless configured to do so.
Operator behavior is determined by two custom resources: ControlPlane
and
Dataplane
. These work independently of each other; you may use one or both.
Control plane configuration
It’s easy to change the version of Linkerd that’s running on your cluster by
changing the Linkerd version specified in the instance of the ControlPlane
resource on
your cluster:
kubectl edit controlplane/linkerd-control-plane
Once the version has been changed, the control plane operator will upgrade the Linkerd core control plane.
Data plane configuration
The DataPlane
custom resources enable automatic upgrades of Linkerd proxies
running in your application workloads. This requires creating instances of the
DataPlane
resource in
each namespace where Linkerd proxies are running on your cluster.
For instance, to opt-in all proxies in the default
namespace:
kubectl apply -f - <<EOF
apiVersion: linkerd.buoyant.io/v1alpha1
kind: DataPlane
metadata:
name: dp-update
namespace: default
spec:
workloadSelector:
matchLabels: {}
EOF
When the control plane version changes, the data plane operator will restart
each workload selected by the DataPlane
resources, one at a time, so that
the pods will pick up a new version of the Linkerd proxy.