linkerd2: linkerd-proxy throwing load balancer discovery error
Bug Report
What is the issue?
linkerd-proxy started throwing an error and was unable to connect to other meshed services
How can it be reproduced?
Unknown
Logs, error output, etc
ERR! [249010.471746s] outbound:accept{peer.addr=100.96.11.27:34552}:source{target.addr=100.69.16.83:80}: linkerd2_app_core::errors unexpected error: buffered service failed: load balancer discovery error: discovery task failed
linkerd check
output
kubernetes-api
--------------
√ can initialize the client
√ can query the Kubernetes API
kubernetes-version
------------------
× is running the minimum Kubernetes API version
Kubernetes is on version [1.11.8], but version [1.13.0] or more recent is required
see https://linkerd.io/checks/#k8s-version for hints
√ is running the minimum kubectl version
linkerd-config
--------------
√ control plane Namespace exists
√ control plane ClusterRoles exist
√ control plane ClusterRoleBindings exist
√ control plane ServiceAccounts exist
√ control plane CustomResourceDefinitions exist
√ control plane MutatingWebhookConfigurations exist
√ control plane ValidatingWebhookConfigurations exist
√ control plane PodSecurityPolicies exist
linkerd-existence
-----------------
√ 'linkerd-config' config map exists
√ heartbeat ServiceAccount exist
√ control plane replica sets are ready
√ no unschedulable pods
√ controller pod is running
√ can initialize the client
√ can query the control plane API
linkerd-identity
----------------
√ certificate config is valid
√ trust roots are using supported crypto algorithm
√ trust roots are within their validity period
√ trust roots are valid for at least 60 days
√ issuer cert is using supported crypto algorithm
√ issuer cert is within its validity period
√ issuer cert is valid for at least 60 days
√ issuer cert is issued by the trust root
linkerd-api
-----------
√ control plane pods are ready
√ control plane self-check
√ [kubernetes] control plane can talk to Kubernetes
√ [prometheus] control plane can talk to Prometheus
linkerd-version
---------------
√ can determine the latest version
‼ cli is up-to-date
is running version 20.1.2 but the latest edge version is 20.1.3
see https://linkerd.io/checks/#l5d-version-cli for hints
control-plane-version
---------------------
‼ control plane is up-to-date
is running version 20.1.2 but the latest edge version is 20.1.3
see https://linkerd.io/checks/#l5d-version-control for hints
√ control plane and cli versions match
Environment
- Kubernetes Version:
- Cluster Environment: (GKE, AKS, kops, …)
- Host OS:
- Linkerd version:
Possible solution
Additional context
Verfied the linkerd-proxy sidecar version was also 20.1.2. Similar to https://github.com/linkerd/linkerd2/issues/3935
About this issue
- Original URL
- State: closed
- Created 4 years ago
- Reactions: 3
- Comments: 30 (14 by maintainers)
I have a proxy version which I believe fixes these issues. It should be released in tomorrow’s edge release, but it can be tested manually by adding an annotation to your workload:
Please let us know if you observe any similar issues with the newer version!
So I’ve just witnessed the same thing in one of our pods in our staging environment on :
Output of
kubectl version
Output of
linkerd version
Output of
linkerd check
Deleting the pod resolved the issue.
We’re starting to prepare
stable-2.7.1
to include this fix, hopefully released later this week.In the meantime, I suggest setting the annotation to:
Please report back if you experience this issue again! Thanks
Can’t test on >=1.13 for the moment. Also, I have lots of meshed services. Only saw this error on one service(3 pods) and all 3 pods exhibited the same error. I also verified that linkerd-proxy is running v2.84.0.