kubernetesservicemeshlinkerd

Fresh cluster and linkerd - viz doesn't startup


I've got an issue, I'm trying to install linkerd on my cluster, all is going well

I went exactly with this official README

https://linkerd.io/2.11/tasks/install-helm/

installed it via helm

MacBook-Pro-6% helm list -n default
NAME        NAMESPACE   REVISION    UPDATED                                 STATUS      CHART           APP VERSION
linkerd2    default     1           2021-12-15 15:47:10.823551 +0100 CET    deployed    linkerd2-2.11.1 stable-2.11.1

linkerd itself works, and the linkerd check command as well

MacBook-Pro-6% linkerd version
Client version: stable-2.11.1
Server version: stable-2.11.1

but when I try to install viz dashboard as described in the getting-started page I run

linkerd viz install | kubectl apply -f -

and when going with

linkerd check
...
Status check results are √

Linkerd extensions checks
=========================
/ Running viz extension check

and it keeps on checking the viz extensions, and when I ran linkerd dashboard (deprecated I know) shows the same error

Waiting for linkerd-viz extension to become available

anyone got any clue what I'm doing wrong ? Been stuck at this part for 2hrs &_& and noone seem to have any answers

note, when I ran, linkerd check after instalation of viz I get


linkerd-viz
-----------
√ linkerd-viz Namespace exists
√ linkerd-viz ClusterRoles exist
√ linkerd-viz ClusterRoleBindings exist
√ tap API server has valid cert
√ tap API server cert is valid for at least 60 days
‼ tap API service is running
    FailedDiscoveryCheck: failing or missing response from https://10.190.101.142:8089/apis/tap.linkerd.io/v1alpha1: Get "https://10.190.101.142:8089/apis/tap.linkerd.io/v1alpha1": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)
    see https://linkerd.io/2.11/checks/#l5d-tap-api for hints
‼ linkerd-viz pods are injected
    could not find proxy container for grafana-8d54d5f6d-cv7q5 pod
    see https://linkerd.io/2.11/checks/#l5d-viz-pods-injection for hints
√ viz extension pods are running
× viz extension proxies are healthy
    No "linkerd-proxy" containers found in the "linkerd" namespace
    see https://linkerd.io/2.11/checks/#l5d-viz-proxy-healthy for hints

debugging


Solution

  • From your problem descripiton:

    ‼ linkerd-viz pods are injected could not find proxy container for grafana-8d54d5f6d-cv7q5 pod see https://linkerd.io/2.11/checks/#l5d-viz-pods-injection for hints

    and:

    MacBook-Pro-6% helm list -n default

    I encountered a similar problem but with flagger pod rather than grafana pod (I didn't attempt to install grafana component like you did).

    A side effect of my problem is this:

    $ linkerd viz dashboard
    Waiting for linkerd-viz extension to become available
    Waiting for linkerd-viz extension to become available
    Waiting for linkerd-viz extension to become available
    ... ## repeating for 5 minutes or so before popping up the dashboard in browser.
    

    The cause for my problem turned out to be that I installed the viz extension into the linkerd namespace. It should belong to the linkerd-viz namespace.

    Looking at your original problem description, it seems that you installed the control plane into the default namespace (as opposed to the linkerd namespace.) While you can use any namespace you want, the control plane must be in a separate namespace from the viz extension. Details can be seen in the discussion I wrote here: