Skip to content

Commit

Permalink
Merge branch 'linkerd:main' into main
Browse files Browse the repository at this point in the history
  • Loading branch information
karr9 authored Jun 21, 2024
2 parents bbd81e5 + 560b37a commit a1f49e5
Show file tree
Hide file tree
Showing 16 changed files with 341 additions and 57 deletions.
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;
}
41 changes: 41 additions & 0 deletions linkerd.io/content/2.14/tasks/flagger.md
Original file line number Diff line number Diff line change
Expand Up @@ -180,6 +180,47 @@ spec:
EOF
```

In case you are using `ServiceProfile`s (for features not
currently supported with `HttpRoute`s) you will
need to change your `Canary` to use the SMI interface as provider:

```yaml
apiVersion: flagger.app/v1beta1
kind: Canary
metadata:
name: podinfo
namespace: test
spec:
provider: "smi:v1alpha2"
targetRef:
apiVersion: apps/v1
kind: Deployment
name: podinfo
service:
# service port number
port: 9898
# container port number or name (optional)
targetPort: 9898
analysis:
interval: 10s
threshold: 5
stepWeight: 10
maxWeight: 100
metrics:
- name: success-rate
templateRef:
name: success-rate
namespace: test
thresholdRange:
min: 99
interval: 1m
```
This will override the default flagger's mesh provider from `linkerd` to `smi:v1alpha2`.
Flagger will create `TrafficSplit`s instead of `HTTPRoute`s.
Linkerd SMI extension will monitor these `TrafficSplit`s
and will change `dstOverrides` on your `ServiceProfile`s when the deployment is happening.

The Flagger controller is watching these definitions and will create some new
resources on your cluster. To watch as this happens, run:

Expand Down
18 changes: 9 additions & 9 deletions linkerd.io/content/2.15/tasks/install-helm.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ page. {{< /note >}}
The `linkerd-crds` chart sets up the CRDs linkerd requires:

```bash
helm install linkerd-crds linkerd/linkerd-crds \
helm install linkerd-crds linkerd-edge/linkerd-crds \
-n linkerd --create-namespace
```

Expand All @@ -62,7 +62,7 @@ helm install linkerd-control-plane \
--set-file identityTrustAnchorsPEM=ca.crt \
--set-file identity.issuer.tls.crtPEM=issuer.crt \
--set-file identity.issuer.tls.keyPEM=issuer.key \
linkerd/linkerd-control-plane
linkerd-edge/linkerd-control-plane
```

{{< note >}} If you are using [Linkerd's CNI plugin](../../features/cni/), you
Expand All @@ -80,7 +80,7 @@ specified in those files.
You can get `values-ha.yaml` by fetching the chart file:

```bash
helm fetch --untar linkerd/linkerd-control-plane
helm fetch --untar linkerd-edge/linkerd-control-plane
```

Then use the `-f` flag to provide this override file. For example:
Expand All @@ -92,7 +92,7 @@ helm install linkerd-control-plane \
--set-file identity.issuer.tls.crtPEM=issuer.crt \
--set-file identity.issuer.tls.keyPEM=issuer.key \
-f linkerd-control-plane/values-ha.yaml \
linkerd/linkerd-control-plane
linkerd-edge/linkerd-control-plane
```

## Upgrading with Helm
Expand All @@ -103,9 +103,9 @@ First, make sure your local Helm repos are updated:
helm repo update

helm search repo linkerd
NAME CHART VERSION APP VERSION DESCRIPTION
linkerd/linkerd-crds <chart-semver-version> Linkerd gives you observability, reliability, and securit...
linkerd/linkerd-control-plane <chart-semver-version> {{% latestedge %}} Linkerd gives you observability, reliability, and securit...
NAME CHART VERSION APP VERSION DESCRIPTION
linkerd-edge/linkerd-crds <chart-semver-version> Linkerd gives you observability, reliability, and securit...
linkerd-edge/linkerd-control-plane <chart-semver-version> {{% latestedge %}} Linkerd gives you observability, reliability, and securit...
```

During an upgrade, you must choose whether you want to reuse the values in the
Expand Down Expand Up @@ -136,10 +136,10 @@ your `values.yaml` file. Then you can use:

```bash
# the linkerd-crds chart currently doesn't have a values.yaml file
helm upgrade linkerd-crds linkerd/linkerd-crds
helm upgrade linkerd-crds linkerd-edge/linkerd-crds

# whereas linkerd-control-plane does
helm upgrade linkerd-control-plane linkerd/linkerd-control-plane --reset-values -f values.yaml --atomic
helm upgrade linkerd-control-plane linkerd-edge/linkerd-control-plane --reset-values -f values.yaml --atomic
```

The `--atomic` flag will ensure that all changes are rolled back in case the
Expand Down
22 changes: 22 additions & 0 deletions linkerd.io/content/blog/2024/0524-backstage-and-linkerd.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
author: 'catherine'
date: 2024-05-23T00:00:00Z
title: Building a Secure, Reliable, Observable IDP with Backstage & Linkerd
tags:
- Backstage
- Video
description: This CNCF Cloud Native Live session explores building a rock-solid Internal Developer Platform (IDP) Backstage that empowers developers with self-service tools while streamlining security and observability.
keywords: [Backstage, Video]
thumbnail: '/uploads/2024/05/cnl-backstage-linkerd-thumbnail.png'
featuredImage: '/uploads/2024/05/cnl-backstage-linkerd-screenshot.png'
---
Smooth workflows are critical in the cloud-native world. This CNCF Cloud
Native Live session explores building a rock-solid Internal Developer
Platform (IDP) Backstage that empowers developers with self-service tools
while streamlining security and observability. Watch the recording with
Linkerd Tech Evangelist Flynn and Backstage Maintainer Ben Lambert as
they show you how a service mesh like Linkerd can supercharge your IDP,
ensuring seamless communication and clear visibility.

<!-- markdownlint-disable MD033 -->
<iframe style="width:800px; height:450px;" src="https://www.youtube.com/embed/43Yq24I0KNI?si=DAtnX3dNXZf2dDFI" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
171 changes: 171 additions & 0 deletions linkerd.io/content/blog/2024/0606-edge-release-roundup.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,171 @@
---
author: 'flynn'
date: 2024-06-06T00:00:00Z
title: |-
Linkerd Edge Release Roundup: June 2024
url:
/2024/06/06/linkerd-edge-release-roundup/
thumbnail: '/uploads/2023/06/roundup-clocks-square.png'
featuredImage: '/uploads/2024/06/roundup-06-featured.png'
tags: [Linkerd, linkerd, edge, release, roundup]
featured: false
---

{{< fig
alt="June 2024 Linkerd Edge Release Roundup"
src="/uploads/2023/06/roundup-clocks-rect.png" >}}

Welcome to the June 2024 Edge Release Roundup post, where we dive into the
most recent edge releases to help keep everyone up to date on the latest and
greatest!

## How to give feedback

Remember, edge releases are a snapshot of our current development work on
`main`; by definition, they always have the most recent features but they may
have incomplete features, features that end up getting rolled back later, or
(like all software) even bugs. That said, edge releases *are* intended for
production use, and go through a rigorous set of automated and manual tests
before being released.

We would be delighted to hear how these releases work out for you! You can
open [a GitHub issue](https://github.com/linkerd/linkerd2/issues/) or
[discussion](https://github.com/linkerd/linkerd2/discussions/), join us on
[Slack](https://slack.linkerd.io), or visit the [Buoyant Linkerd
Forum](https://linkerd.buoyant.io) -- all are great ways to reach us.

## Community contributions

We couldn't do what we do without the Linkerd community, and this batch of
releases is definitely no exception. Huge thanks to [knowmost], [Marwan
Ahmed], and [Nico Feulner] for their contributions! You'll find more
information about all of these contributions in the release-by-release details
below.

[knowmost]: https://github.com/knowmost
[Marwan Ahmed]: https://github.com/marwanad
[Nico Feulner]: https://github.com/nico151999

## Recommendations and breaking changes

We recommend `edge-24.5.5` for anyone considering an `edge-24.5.*` release; it
has important fixes for the Linkerd CNI plugin on GKE. `edge-24.5.1` is
specifically **not** recommended for users of GKE, due to a bug with the
default Linkerd configuration in that release.

Starting in `edge-24.5.1`, the `patchs` metric introduced in `edge-24.3.4` is
renamed to `patches`.

Finally, starting in `edge-24.5.2`, Linkerd will install the GRPCRoute CRD in
the `gateway.networking.k8s.io` API group, in preparation for later GRPCRoute
support. (You can disable this by setting `enableHttpRoutes` to `false` when
installing, which will also prevent Linkerd from installing the HTTPRoute CRD
in the `gateway.networking.k8s.io` API group.)

## The releases

This group of releases has focused on IPv6 support - delivered in
`edge-24.5.2`! - and finalizing fixes for some edge cases in the way Linkerd
handles EndpointSlices and HTTPRoutes. Of course, each edge release has _many_
dependency updates; we won't list them all here, but you can find them in the
release notes for each release.

### [`edge-24.5.5`](https://github.com/linkerd/linkerd2/releases/tag/edge-24.5.5) (May 31, 2024)

This release switches IPv6 off by default for the entire control plane,
including the Linkerd CNI plugin. Set `disableIPv6` to `false` to enable IPv6.

### [`edge-24.5.4`](https://github.com/linkerd/linkerd2/releases/tag/edge-24.5.4) (May 23, 2024)

_We recommend [`edge-24.5.5`] instead of this release. In this release, IPv6
support is off by default for most of the control plane, but it is mistakenly
on by default for the Linkerd CNI plugin._

This release adds support for JSON output to the `linkerd inject`, `linkerd
uninject` and `linkerd profile` commands, and a `--token` flag to `linkerd
diagnostics policy` that allows specifying the context token to use so that
you can see how specific clients will see policies. It also adds support for
setting the group ID for the control plane (thanks, [Nico Feulner]!), switches
IPv6 to off by default for the control plane, adds support for several proxy
settings to the `linkerd-control-plane` chart, allows overriding how many
cores control-plane components can use, correctly supports Gateway API
producer routes, fixes a race conditions around EndpointSlice updates, and
fixes intermittent routing failures with HTTPRoute ([issue 12610]).

[`edge-24.5.5`]: https://github.com/linkerd/linkerd2/releases/tag/edge-24.5.5
[Nico Feulner]: https://github.com/nico151999
[issue 12610]: https://github.com/linkerd/linkerd2/issues/12610

### [`edge-24.5.3`](https://github.com/linkerd/linkerd2/releases/tag/edge-24.5.3) (May 15, 2024)

_If you use the Linkerd CNI plugin on GKE, you will need to disable IPv6 or
use [`edge-24.5.5`] instead._

This release removes an internal limit on the number of concurrent gRPC
streams to the control plane, leaving available memory as the only constraint.

### [`edge-24.5.2`](https://github.com/linkerd/linkerd2/releases/tag/edge-24.5.2) (May 13, 2024)

_If you use the Linkerd CNI plugin on GKE, you will need to disable IPv6 or
use [`edge-24.5.5`] instead._

This release adds support for IPv6. It defaults to enabled: set `disableIPv6`
to `true` when installing to disable it. It also correctly sets the
`backend_not_found` status on HTTPRoutes with no backends. Finally, it adds
the Gateway API GRPCRoute resource (in the `gateway.networking.k8s.io` API
group) as part of continued work on support for GRPCRoutes, although this edge
release doesn't attach any functionality to the CRD.

To prevent Linkerd from installing any CRDs into `gateway.networking.k8s.io`,
set `enableHttpRoutes` to `false` when installing.

### [`edge-24.5.1`](https://github.com/linkerd/linkerd2/releases/tag/edge-24.5.1) (May 2, 2024)

_We recommend [`edge-24.5.5`] instead of this release due to a bug that
prevents Linkerd from functioning on GKE with the default configuration.
Additionally, this release has one breaking change: the `patchs` metric
introduced in [`edge-24.3.4`] is now correctly named `patches`._

This release adds configurable HTTP/2 server keepalives, fixes CLI issues and
opaque-port issues when using native sidecars ([issue #12395]), restores
Server v1beta1 to ease migrations after it was mistakenly removed in
[`edge-24.1.2`], fixes an issue that could cause the endpoints gauge to report
incorrect numbers of endpoints, and continues ongoing work on upcoming IPv6
support.

Additionally, it avoids unnecessary cleanup of headless endpoint mirrors
during garbage collection (thanks, [Marwan Ahmed]!) and cleans up some
documentation in the code (thanks, [knowmost]!).

[issue #12395]: https://github.com/linkerd/linkerd2/issues/12395
[`edge-24.3.4`]: https://github.com/linkerd/linkerd2/releases/tag/edge-24.3.4
[`edge-24.1.2`]: https://github.com/linkerd/linkerd2/releases/tag/edge-24.1.2
[Marwan Ahmed]: https://github.com/marwanad
[knowmost]: https://github.com/knowmost

## Installing the latest edge release

Installing the latest edge release needs just a single command.

```bash
curl --proto '=https' --tlsv1.2 -sSfL https://run.linkerd.io/install-edge | sh
```

You can also [install edge releases with Helm](https://linkerd.io/2.15/tasks/install-helm/).

## Linkerd is for everyone

Linkerd is a graduated project of the [Cloud Native Computing
Foundation](https://cncf.io/). Linkerd is [committed to open
governance.](/2019/10/03/linkerds-commitment-to-open-governance/) If you have
feature requests, questions, or comments, we'd love to have you join our
rapidly-growing community! Linkerd is hosted on
[GitHub](https://github.com/linkerd/), and we have a thriving community on
[Slack](https://slack.linkerd.io/), [Twitter](https://twitter.com/linkerd), and
in [mailing lists](/community/get-involved/). Come and join the fun!

----

_Linkerd generally does new edge releases weekly; watch this space to keep
up-to-date. Feedback on this blog series is welcome! Just ping `@flynn` on the
[Linkerd Slack](https://slack.linkerd.io)._
Loading

0 comments on commit a1f49e5

Please sign in to comment.