Skip to content

Commit

Permalink
Merge branch 'main' into main
Browse files Browse the repository at this point in the history
  • Loading branch information
kflynn committed May 29, 2024
2 parents 1003d43 + 2748933 commit abaf71a
Show file tree
Hide file tree
Showing 60 changed files with 752 additions and 401 deletions.
4 changes: 2 additions & 2 deletions .devcontainer/on-create.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ set -euo pipefail
cd $(mktemp -d)

# hugo
scurl -O https://github.com/gohugoio/hugo/releases/download/v0.121.2/hugo_extended_0.121.2_linux-amd64.deb
scurl -O https://github.com/gohugoio/hugo/releases/download/v0.126.1/hugo_extended_0.126.1_linux-amd64.deb
sudo dpkg -i hugo*.deb
rm hugo*.deb

Expand All @@ -22,4 +22,4 @@ echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.clou
scurl https://packages.cloud.google.com/apt/doc/apt-key.gpg \
| sudo apt-key --keyring /usr/share/keyrings/cloud.google.gpg add -
sudo apt-get update
sudo apt-get install google-cloud-cli
sudo apt-get install -y google-cloud-cli
4 changes: 2 additions & 2 deletions .github/workflows/install.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ jobs:
run: |
make build-run.linkerd.io
- uses: actions/[email protected].1
- uses: actions/[email protected].3
with:
name: run.linkerd.io
path: tmp/run.linkerd.io/public
Expand All @@ -50,7 +50,7 @@ jobs:
needs: [build]

steps:
- uses: actions/[email protected].2
- uses: actions/[email protected].7
with:
name: run.linkerd.io

Expand Down
8 changes: 1 addition & 7 deletions MAINTAINERS.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,2 @@
The maintainers of the Linkerd website are the Linkerd maintainers listed in
https://github.com/linkerd/linkerd2/blob/main/MAINTAINERS.md, plus:

- Paul Michael Armstrong (@PaulMichaelArmstrong)
- Charles Pretzer (@cpretzer)
- William Morgan (@wmorgan)

If you'd like to become a maintainer, just come talk to us!
https://github.com/linkerd/linkerd2/blob/main/MAINTAINERS.md.
1 change: 1 addition & 0 deletions linkerd.io/.htmltest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ IgnoreURLs:
- https://godaddy.com/
- https://www.linkedin.com/
- https://tools.ietf.org/
- ^/2/*
DirectoryPath: public
TestFilesConcurrently: true
DocumentConcurrencyLimit: 16
Expand Down
9 changes: 9 additions & 0 deletions linkerd.io/assets/js/follow-linkedin.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
setTimeout(function(){
var buttonWrapper = document.querySelector('.linkedin__btn');
widthOriginal = buttonWrapper.getBoundingClientRect().width;
//console.log("-"+widthOriginal);

if(widthOriginal>99){
buttonWrapper.style.display = 'none';
}
}, 2300);
4 changes: 4 additions & 0 deletions linkerd.io/assets/scss/styles.scss
Original file line number Diff line number Diff line change
Expand Up @@ -925,3 +925,7 @@ blockquote {
.modal-content {
width: 95%;
}

.linkedin__btn{
z-index: 999; display: block; top: 100px; right: -5px; position: fixed;
}
2 changes: 1 addition & 1 deletion linkerd.io/content/2-edge/getting-started/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ more](https://kubernetes.io/docs/setup/).)
Validate your Kubernetes setup by running:

```bash
kubectl version --short
kubectl version
```

You should see output with both a `Client Version` and `Server Version`
Expand Down
2 changes: 1 addition & 1 deletion linkerd.io/content/2-edge/tasks/distributed-tracing.md
Original file line number Diff line number Diff line change
Expand Up @@ -209,7 +209,7 @@ The YAML file is merged with the [Helm values.yaml][helm-values] which shows
other possible values that can be configured.

<!-- markdownlint-disable MD034 -->
[helm-values]: https://github.com/linkerd/linkerd2/blob/stable-{{% latest-linkerd2-stable-version %}}.0/jaeger/charts/linkerd-jaeger/values.yaml
[helm-values]: https://github.com/linkerd/linkerd2/blob/main/jaeger/charts/linkerd-jaeger/values.yaml

It is also possible to manually edit the OpenCensus configuration to have it
export to any backend which it supports. See the
Expand Down
6 changes: 3 additions & 3 deletions linkerd.io/content/2-edge/tasks/upgrade.md
Original file line number Diff line number Diff line change
Expand Up @@ -571,9 +571,9 @@ and then invoke those commands through `linkerd viz stat`,
linkerd upgrade | kubectl apply --prune -l linkerd.io/control-plane-ns=linkerd -f -
# Prune cluster-scoped resources
linkerd upgrade | kubectl apply --prune -l linkerd.io/control-plane-ns=linkerd \
--prune-whitelist=rbac.authorization.k8s.io/v1/clusterrole \
--prune-whitelist=rbac.authorization.k8s.io/v1/clusterrolebinding \
--prune-whitelist=apiregistration.k8s.io/v1/apiservice -f -
--prune-allowlist=rbac.authorization.k8s.io/v1/clusterrole \
--prune-allowlist=rbac.authorization.k8s.io/v1/clusterrolebinding \
--prune-allowlist=apiregistration.k8s.io/v1/apiservice -f -
# Install the Linkerd-Viz extension to restore viz functionality.
linkerd viz install | kubectl apply -f -
```
Expand Down
2 changes: 1 addition & 1 deletion linkerd.io/content/2.10/checks/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<script type="text/javascript">
window.onload = function() {
var hash = window.location.hash;
window.location.href = window.location.origin + "/2.10/tasks/troubleshooting/" + hash;
window.location.href = window.location.origin + "/2/tasks/troubleshooting/" + hash;
}
</script>
<title>Linkerd Check Redirection</title>
Expand Down
2 changes: 1 addition & 1 deletion linkerd.io/content/2.11/checks/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<script type="text/javascript">
window.onload = function() {
var hash = window.location.hash;
window.location.href = window.location.origin + "/2.11/tasks/troubleshooting/" + hash;
window.location.href = window.location.origin + "/2/tasks/troubleshooting/" + hash;
}
</script>
<title>Linkerd Check Redirection</title>
Expand Down
2 changes: 1 addition & 1 deletion linkerd.io/content/2.11/tasks/distributed-tracing.md
Original file line number Diff line number Diff line change
Expand Up @@ -207,7 +207,7 @@ The YAML file is merged with the [Helm values.yaml][helm-values] which shows
other possible values that can be configured.

<!-- markdownlint-disable MD034 -->
[helm-values]: https://github.com/linkerd/linkerd2/blob/stable-{{% latest-linkerd2-stable-version %}}.0/jaeger/charts/linkerd-jaeger/values.yaml
[helm-values]: https://github.com/linkerd/linkerd2/blob/main/jaeger/charts/linkerd-jaeger/values.yaml

It is also possible to manually edit the OpenCensus configuration to have it
export to any backend which it supports. See the
Expand Down
2 changes: 1 addition & 1 deletion linkerd.io/content/2.12/checks/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<script type="text/javascript">
window.onload = function() {
var hash = window.location.hash;
window.location.href = window.location.origin + "/2.12/tasks/troubleshooting/" + hash;
window.location.href = window.location.origin + "/2/tasks/troubleshooting/" + hash;
}
</script>
<title>Linkerd Check Redirection</title>
Expand Down
2 changes: 1 addition & 1 deletion linkerd.io/content/2.12/tasks/distributed-tracing.md
Original file line number Diff line number Diff line change
Expand Up @@ -207,7 +207,7 @@ The YAML file is merged with the [Helm values.yaml][helm-values] which shows
other possible values that can be configured.

<!-- markdownlint-disable MD034 -->
[helm-values]: https://github.com/linkerd/linkerd2/blob/stable-{{% latest-linkerd2-stable-version %}}.0/jaeger/charts/linkerd-jaeger/values.yaml
[helm-values]: https://github.com/linkerd/linkerd2/blob/main/jaeger/charts/linkerd-jaeger/values.yaml

It is also possible to manually edit the OpenCensus configuration to have it
export to any backend which it supports. See the
Expand Down
2 changes: 1 addition & 1 deletion linkerd.io/content/2.13/checks/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<script type="text/javascript">
window.onload = function() {
var hash = window.location.hash;
window.location.href = window.location.origin + "/2.13/tasks/troubleshooting/" + hash;
window.location.href = window.location.origin + "/2/tasks/troubleshooting/" + hash;
}
</script>
<title>Linkerd Check Redirection</title>
Expand Down
2 changes: 1 addition & 1 deletion linkerd.io/content/2.13/tasks/distributed-tracing.md
Original file line number Diff line number Diff line change
Expand Up @@ -209,7 +209,7 @@ The YAML file is merged with the [Helm values.yaml][helm-values] which shows
other possible values that can be configured.

<!-- markdownlint-disable MD034 -->
[helm-values]: https://github.com/linkerd/linkerd2/blob/stable-{{% latest-linkerd2-stable-version %}}.0/jaeger/charts/linkerd-jaeger/values.yaml
[helm-values]: https://github.com/linkerd/linkerd2/blob/main/jaeger/charts/linkerd-jaeger/values.yaml

It is also possible to manually edit the OpenCensus configuration to have it
export to any backend which it supports. See the
Expand Down
2 changes: 1 addition & 1 deletion linkerd.io/content/2.14/checks/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<script type="text/javascript">
window.onload = function() {
var hash = window.location.hash;
window.location.href = window.location.origin + "/2.15/tasks/troubleshooting/" + hash;
window.location.href = window.location.origin + "/2/tasks/troubleshooting/" + hash;
}
</script>
<title>Linkerd Check Redirection</title>
Expand Down
3 changes: 1 addition & 2 deletions linkerd.io/content/2.14/tasks/configuring-timeouts.md
Original file line number Diff line number Diff line change
Expand Up @@ -77,8 +77,7 @@ spec:
Each [route](../../reference/service-profiles/#route) in a [ServiceProfile] may
define a request timeout for requests matching that route. This timeout secifies
the maximum amount of time to wait for a response (including retries) to
complete after the request is sent. If unspecified, the default timeout is 10
seconds.
complete after the request is sent.

```yaml
spec:
Expand Down
2 changes: 1 addition & 1 deletion linkerd.io/content/2.14/tasks/distributed-tracing.md
Original file line number Diff line number Diff line change
Expand Up @@ -209,7 +209,7 @@ The YAML file is merged with the [Helm values.yaml][helm-values] which shows
other possible values that can be configured.

<!-- markdownlint-disable MD034 -->
[helm-values]: https://github.com/linkerd/linkerd2/blob/stable-{{% latest-linkerd2-stable-version %}}.0/jaeger/charts/linkerd-jaeger/values.yaml
[helm-values]: https://github.com/linkerd/linkerd2/blob/main/jaeger/charts/linkerd-jaeger/values.yaml

It is also possible to manually edit the OpenCensus configuration to have it
export to any backend which it supports. See the
Expand Down
2 changes: 1 addition & 1 deletion linkerd.io/content/2.15/checks/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<script type="text/javascript">
window.onload = function() {
var hash = window.location.hash;
window.location.href = window.location.origin + "/2.14/tasks/troubleshooting/" + hash;
window.location.href = window.location.origin + "/2/tasks/troubleshooting/" + hash;
}
</script>
<title>Linkerd Check Redirection</title>
Expand Down
21 changes: 21 additions & 0 deletions linkerd.io/content/2.15/common-errors/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
+++
title = "Common Errors"
weight = 10
[sitemap]
priority = 1.0
+++

Linkerd is generally robust, but things can always go wrong! You'll find
information here about the most common things that cause people trouble.

## When in Doubt, Start With `linkerd check`

Whenever you see anything that looks unusual about your mesh, **always** start
with `linkerd check`. It will check a long series of things that have caused
trouble for others and make sure that your configuration is sane, and it will
point you to help for any problems it finds. It's hard to overstate how useful
this command is.

## Common Errors

{{% sectiontoc "common-errors" %}}
18 changes: 18 additions & 0 deletions linkerd.io/content/2.15/common-errors/failfast.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
+++
title = "Failfast"
description = "Failfast means that no endpoints are available."
+++

If Linkerd reports that a given service is in the _failfast_ state, it
means that the proxy has determined that there are no available endpoints
for that service. In this situation there's no point in the proxy trying
to actually make a connection to the service - it already knows that it
can't talk to it - so it reports that the service is in failfast and
immediately returns an error from the proxy.

The error will be either a 503 or a 504; see below for more information,
but if you already know that the service is in failfast because you saw
it in the logs, that's the important part.

To get out of failfast, some endpoints for the service have to
become available.
11 changes: 11 additions & 0 deletions linkerd.io/content/2.15/common-errors/http-502.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
+++
title = "HTTP 502 Errors"
description = "HTTP 502 means connection errors between proxies."
+++

The Linkerd proxy will return a 502 error for connection errors between
proxies. Unfortunately it's fairly common to see an uptick in 502s when
first meshing a workload that hasn't previously been used with a mesh,
because the mesh surfaces errors that were previously invisible!

There's actually a whole page on [debugging 502s](../../tasks/debugging-502s/).
27 changes: 27 additions & 0 deletions linkerd.io/content/2.15/common-errors/http-503-504.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
+++
title = "HTTP 503 and 504 Errors"
description = "HTTP 503 and 504 mean overloaded workloads."
+++

503s and 504s show up when a Linkerd proxy is trying to make so many
requests to a workload that it gets overwhelmed.

When the workload next to a proxy makes a request, the proxy adds it
to an internal dispatch queue. When things are going smoothly, the
request is pulled from the queue and dispatched almost immediately.
If the queue gets too long, though (which can generally happen only
if the called service is slow to respond), the proxy will go into
_load-shedding_, where any new request gets an immediate 503. The
proxy can only get _out_ of load-shedding when the queue shrinks.

Failfast also plays a role here: if the proxy puts a service into
failfast while there are requests in the dispatch queue, all the
requests in the dispatch queue get an immediate 504 before the
proxy goes into load-shedding.

To get out of failfast, some endpoints for the service have to
become available.

To get out of load-shedding, the dispatch queue has to start
emptying, which implies that the service has to get more capacity
to process requests or that the incoming request rate has to drop.
35 changes: 35 additions & 0 deletions linkerd.io/content/2.15/common-errors/protocol-detection.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
+++
title = "Protocol Detection Errors"
description = "Protocol detection errors indicate that Linkerd doesn't understand the protocol in use."
+++

Linkerd is capable of proxying all TCP traffic, including TLS connections,
WebSockets, and HTTP tunneling. In most cases where the client speaks first
when a new connection is made, Linkerd can detect the protocol in use,
allowing it to perform per-request routing and metrics.

If your proxy logs contain messages like `protocol detection timed out after
10s`, or you're experiencing 10-second delays when establishing connections,
you're probably running a situation where Linkerd cannot detect the protocol.
This is most common for protocols where the server speaks first, and the
client is waiting for information from the server. It may also occur with
non-HTTP protocols for which Linkerd doesn't yet understand the wire format of
a request.

You'll need to understand exactly what the situation is to fix this:

- A server-speaks-first protocol will probably need to be configured as a
`skip` or `opaque` port, as described in the [protocol detection
documentation](../../features/protocol-detection/#configuring-protocol-detection).

- If you're seeing transient protocol detection timeouts, this is more likely
to indicate a misbehaving workload.

- If you know the protocol is client-speaks-first but you're getting
consistent protocol detection timeouts, you'll probably need to fall back on
a `skip` or `opaque` port.

Note that marking ports as `skip` or `opaque` has ramifications beyond
protocol detection timeouts; see the [protocol detection
documentation](../../features/protocol-detection/#configuring-protocol-detection)
for more information.
8 changes: 2 additions & 6 deletions linkerd.io/content/2.15/getting-started/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,11 +23,7 @@ install the *CLI* (command-line interface) onto your local machine. Using this
CLI, you'll then install the *control plane* onto your Kubernetes cluster.
Finally, you'll "mesh" an application by adding Linkerd's *data plane* to it.

{{< note >}}
This page contains quick start instructions intended for non-production
installations. For production-oriented configurations, we suggest reviewing
resources in [Going to Production](/going-to-production/).
{{< /note >}}
{{< releases >}}

## Step 0: Setup

Expand All @@ -42,7 +38,7 @@ more](https://kubernetes.io/docs/setup/).)
Validate your Kubernetes setup by running:

```bash
kubectl version --short
kubectl version
```

You should see output with both a `Client Version` and `Server Version`
Expand Down
13 changes: 13 additions & 0 deletions linkerd.io/content/2.15/reference/helm-chart-version-matrix.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
+++
title = "Helm Chart Version Matrix"
+++

The following version matrices include only the latest versions of the stable
releases along with corresponding app and Helm versions for Linkerd and
extensions. Use these to guide you to the right Helm chart version or to
automate workflows you might have.

* [YAML matrix](/releases/release_matrix.yaml)
* [JSON matrix](/releases/release_matrix.json)

{{< release-data-table />}}
2 changes: 1 addition & 1 deletion linkerd.io/content/2.15/tasks/distributed-tracing.md
Original file line number Diff line number Diff line change
Expand Up @@ -209,7 +209,7 @@ The YAML file is merged with the [Helm values.yaml][helm-values] which shows
other possible values that can be configured.

<!-- markdownlint-disable MD034 -->
[helm-values]: https://github.com/linkerd/linkerd2/blob/stable-{{% latest-linkerd2-stable-version %}}.0/jaeger/charts/linkerd-jaeger/values.yaml
[helm-values]: https://github.com/linkerd/linkerd2/blob/main/jaeger/charts/linkerd-jaeger/values.yaml

It is also possible to manually edit the OpenCensus configuration to have it
export to any backend which it supports. See the
Expand Down
Loading

0 comments on commit abaf71a

Please sign in to comment.