You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The docs as well as the helm chart (or the output of linkerd install) suggest that the linkerd (or linkerd-viz) namespace should NOT have the annotation linkerd.io/inject: enabled.
I believe that is incorrect or at least misleading. It worked well that way for a while until I installed flagger according to:
The above installation of flagger (which installs in the linkerd namespace) would not cause flagger's pod to be injected with linkerd-proxy sidecar. Without the sidecar, we'd get this:
$ linkerd check --verbose...linkerd-viz-----------...‼ linkerd-viz pods are injected could not find proxy container for flagger-c98fb9895-vv7cb pod see https://linkerd.io/2/checks/#l5d-viz-pods-injection for hints‼ viz extension pods are running container "linkerd-proxy" in pod "flagger-c98fb9895-vv7cb" is not ready see https://linkerd.io/2/checks/#l5d-viz-pods-running for hints
The above linkerd check would first spin for maybe 5 minutes before printing out the above warning. Furthermore, we'd get this:
$ linkerd viz dashboardWaiting for linkerd-viz extension to become availableWaiting for linkerd-viz extension to become availableWaiting for linkerd-viz extension to become available... ## repeating for 5 minutes or so before popping up the dashboard in browser.
My solution is to inject a sidecar into the flagger pod. The easiest way to do so is to annotate the linkerd namespace with:
Of course, an alternate solution (which I didn't try) is to annotate flagger's kind: Deployment rather than to annotate the entire linkerd namespace. But so far, annotating the namespace seems to work fine for me.
So, we now have a conflicting situation: Linkerd control plane doesn't want sidecar injection in linkerd namespace, but linkerd check for flagger, as well as linkerd vis dashboard (when flagger is installed into linkerd namespace) wants it.
What should be done?
The text was updated successfully, but these errors were encountered:
It turns out I installed viz into the namespace linkerd rather than linkerd-viz.
While the control plane (in namespace linkerd) doesn't want sidecar injection, the viz extension does. When the two components are installed into the same namespace, we'd be stuck in whether to turn on sidecar injection or not.
Now I moved viz to namespace linkerd-viz (while flagger still remains in namespace linkerd without sidecar), everything is finally OK:
The docs as well as the helm chart (or the output of
linkerd install
) suggest that thelinkerd
(orlinkerd-viz
) namespace should NOT have the annotationlinkerd.io/inject: enabled
.I believe that is incorrect or at least misleading. It worked well that way for a while until I installed
flagger
according to:excerpt:
> kubectl apply -k github.com/fluxcd/flagger/kustomize/linkerd
The above installation of
flagger
(which installs in thelinkerd
namespace) would not cause flagger's pod to be injected withlinkerd-proxy
sidecar. Without the sidecar, we'd get this:The above
linkerd check
would first spin for maybe 5 minutes before printing out the above warning. Furthermore, we'd get this:My solution is to inject a sidecar into the
flagger
pod. The easiest way to do so is to annotate thelinkerd
namespace with:Of course, an alternate solution (which I didn't try) is to annotate flagger's
kind: Deployment
rather than to annotate the entirelinkerd
namespace. But so far, annotating the namespace seems to work fine for me.See Also:
However, to enable the sidecar injection, the namespace must NOT have this
label
:That label is automatically created by
linkerd install
. And, according to the following doc, must be set todisabled
:So, we now have a conflicting situation: Linkerd control plane doesn't want sidecar injection in
linkerd
namespace, butlinkerd check
for flagger, as well aslinkerd vis dashboard
(when flagger is installed intolinkerd
namespace) wants it.What should be done?
The text was updated successfully, but these errors were encountered: