diff --git a/linkerd.io/assets/scss/styles.scss b/linkerd.io/assets/scss/styles.scss index 32a762a471..c7901f4e4c 100644 --- a/linkerd.io/assets/scss/styles.scss +++ b/linkerd.io/assets/scss/styles.scss @@ -368,6 +368,14 @@ .enterprise-support__entry-content { order: 1; } + .enterprise-support__entry-description { + > * { + margin-bottom: 24px; + } + > :last-child { + margin-bottom: 0; + } + } .enterprise-support__entry-image { order: 2; } diff --git a/linkerd.io/content/2-edge/getting-started/_index.md b/linkerd.io/content/2-edge/getting-started/_index.md index 5edb5c535c..2f85902645 100644 --- a/linkerd.io/content/2-edge/getting-started/_index.md +++ b/linkerd.io/content/2-edge/getting-started/_index.md @@ -25,10 +25,8 @@ Finally, you'll "mesh" a 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 alternative -approaches, such as the [Linkerd Production -Toolkit](https://buoyant.io/linkerd/getting-started/) by Buoyant, which includes -continuous monitoring, vulnerability alerts, and upgrade assistance for Linkerd. +installations. For production-oriented configurations, we suggest reviewing +resources in [Going to Production](/going-to-production/). {{< /note >}} ## Step 0: Setup diff --git a/linkerd.io/content/2-edge/tasks/multicluster.md b/linkerd.io/content/2-edge/tasks/multicluster.md index 0a5dc04129..0230ff04e3 100644 --- a/linkerd.io/content/2-edge/tasks/multicluster.md +++ b/linkerd.io/content/2-edge/tasks/multicluster.md @@ -106,7 +106,7 @@ With a valid trust anchor and issuer credentials, we can install Linkerd on your ```bash # first, install the Linkerd CRDs in both clusters -linkerd install --crds | +linkerd install --crds \ | tee \ >(kubectl --context=west apply -f -) \ >(kubectl --context=east apply -f -) diff --git a/linkerd.io/content/2.10/getting-started/_index.md b/linkerd.io/content/2.10/getting-started/_index.md index 987e79ee00..57db2307b0 100644 --- a/linkerd.io/content/2.10/getting-started/_index.md +++ b/linkerd.io/content/2.10/getting-started/_index.md @@ -25,10 +25,8 @@ more of your own services by adding Linkerd's *data plane* to them. {{< note >}} This page contains quick start instructions intended for non-production -installations. For production-oriented configurations, we suggest alternative -approaches, such as the [Linkerd Production -Toolkit](https://buoyant.io/linkerd/getting-started/) by Buoyant, which includes -continuous monitoring, vulnerability alerts, and upgrade assistance for Linkerd. +installations. For production-oriented configurations, we suggest reviewing +resources in [Going to Production](/going-to-production/). {{< /note >}} ## Step 0: Setup diff --git a/linkerd.io/content/2.11/getting-started/_index.md b/linkerd.io/content/2.11/getting-started/_index.md index 1906a6fe33..14ae533417 100644 --- a/linkerd.io/content/2.11/getting-started/_index.md +++ b/linkerd.io/content/2.11/getting-started/_index.md @@ -25,10 +25,8 @@ Finally, you'll "mesh" a 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 alternative -approaches, such as the [Linkerd Production -Toolkit](https://buoyant.io/linkerd/getting-started/) by Buoyant, which includes -continuous monitoring, vulnerability alerts, and upgrade assistance for Linkerd. +installations. For production-oriented configurations, we suggest reviewing +resources in [Going to Production](/going-to-production/). {{< /note >}} ## Step 0: Setup diff --git a/linkerd.io/content/2.12/getting-started/_index.md b/linkerd.io/content/2.12/getting-started/_index.md index 5edb5c535c..2f85902645 100644 --- a/linkerd.io/content/2.12/getting-started/_index.md +++ b/linkerd.io/content/2.12/getting-started/_index.md @@ -25,10 +25,8 @@ Finally, you'll "mesh" a 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 alternative -approaches, such as the [Linkerd Production -Toolkit](https://buoyant.io/linkerd/getting-started/) by Buoyant, which includes -continuous monitoring, vulnerability alerts, and upgrade assistance for Linkerd. +installations. For production-oriented configurations, we suggest reviewing +resources in [Going to Production](/going-to-production/). {{< /note >}} ## Step 0: Setup diff --git a/linkerd.io/content/2.12/tasks/multicluster.md b/linkerd.io/content/2.12/tasks/multicluster.md index 0a5dc04129..0230ff04e3 100644 --- a/linkerd.io/content/2.12/tasks/multicluster.md +++ b/linkerd.io/content/2.12/tasks/multicluster.md @@ -106,7 +106,7 @@ With a valid trust anchor and issuer credentials, we can install Linkerd on your ```bash # first, install the Linkerd CRDs in both clusters -linkerd install --crds | +linkerd install --crds \ | tee \ >(kubectl --context=west apply -f -) \ >(kubectl --context=east apply -f -) diff --git a/linkerd.io/content/2.13/getting-started/_index.md b/linkerd.io/content/2.13/getting-started/_index.md index 5edb5c535c..2f85902645 100644 --- a/linkerd.io/content/2.13/getting-started/_index.md +++ b/linkerd.io/content/2.13/getting-started/_index.md @@ -25,10 +25,8 @@ Finally, you'll "mesh" a 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 alternative -approaches, such as the [Linkerd Production -Toolkit](https://buoyant.io/linkerd/getting-started/) by Buoyant, which includes -continuous monitoring, vulnerability alerts, and upgrade assistance for Linkerd. +installations. For production-oriented configurations, we suggest reviewing +resources in [Going to Production](/going-to-production/). {{< /note >}} ## Step 0: Setup diff --git a/linkerd.io/content/2.13/tasks/multicluster.md b/linkerd.io/content/2.13/tasks/multicluster.md index 0a5dc04129..0230ff04e3 100644 --- a/linkerd.io/content/2.13/tasks/multicluster.md +++ b/linkerd.io/content/2.13/tasks/multicluster.md @@ -106,7 +106,7 @@ With a valid trust anchor and issuer credentials, we can install Linkerd on your ```bash # first, install the Linkerd CRDs in both clusters -linkerd install --crds | +linkerd install --crds \ | tee \ >(kubectl --context=west apply -f -) \ >(kubectl --context=east apply -f -) diff --git a/linkerd.io/content/2.14/getting-started/_index.md b/linkerd.io/content/2.14/getting-started/_index.md index 5edb5c535c..ffdc21e290 100644 --- a/linkerd.io/content/2.14/getting-started/_index.md +++ b/linkerd.io/content/2.14/getting-started/_index.md @@ -25,10 +25,8 @@ Finally, you'll "mesh" a 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 alternative -approaches, such as the [Linkerd Production -Toolkit](https://buoyant.io/linkerd/getting-started/) by Buoyant, which includes -continuous monitoring, vulnerability alerts, and upgrade assistance for Linkerd. +installations. For production-oriented configurations, we suggest reviewing +resources in [Going to Production](/going-to-production/). {{< /note >}} ## Step 0: Setup @@ -71,7 +69,11 @@ To install the CLI manually, run: curl --proto '=https' --tlsv1.2 -sSfL https://run.linkerd.io/install | sh ``` -Be sure to follow the instructions to add it to your path. +Be sure to follow the instructions to add it to your path: + +```bash +export PATH=$HOME/.linkerd2/bin:$PATH +``` (Alternatively, if you use [Homebrew](https://brew.sh), you can install the CLI with `brew install linkerd`. You can also download the CLI directly via the diff --git a/linkerd.io/content/2.14/tasks/multicluster.md b/linkerd.io/content/2.14/tasks/multicluster.md index 0a5dc04129..0230ff04e3 100644 --- a/linkerd.io/content/2.14/tasks/multicluster.md +++ b/linkerd.io/content/2.14/tasks/multicluster.md @@ -106,7 +106,7 @@ With a valid trust anchor and issuer credentials, we can install Linkerd on your ```bash # first, install the Linkerd CRDs in both clusters -linkerd install --crds | +linkerd install --crds \ | tee \ >(kubectl --context=west apply -f -) \ >(kubectl --context=east apply -f -) diff --git a/linkerd.io/content/2.9/getting-started/_index.md b/linkerd.io/content/2.9/getting-started/_index.md index 0b707db83a..4df2807f9a 100644 --- a/linkerd.io/content/2.9/getting-started/_index.md +++ b/linkerd.io/content/2.9/getting-started/_index.md @@ -25,10 +25,8 @@ more services by adding the *data plane* proxies. (See the {{< note >}} This page contains quick start instructions intended for non-production -installations. For production-oriented configurations, we suggest alternative -approaches, such as the [Linkerd Production -Toolkit](https://buoyant.io/linkerd/getting-started/) by Buoyant, which includes -continuous monitoring, vulnerability alerts, and upgrade assistance for Linkerd. +installations. For production-oriented configurations, we suggest reviewing +resources in [Going to Production](/going-to-production/). {{< /note >}} ## Step 0: Setup diff --git a/linkerd.io/content/blog/2023/1011-cve-2023-44487.md b/linkerd.io/content/blog/2023/1011-cve-2023-44487.md new file mode 100644 index 0000000000..dc1e9159c6 --- /dev/null +++ b/linkerd.io/content/blog/2023/1011-cve-2023-44487.md @@ -0,0 +1,130 @@ +--- +title: 'How Linkerd became resilient to CVE-2023-44487, a HTTP/2 DDOS vulnerability, six months prior to its disclosure' +author: 'william' +date: 2023-10-12T00:00:00+00:00 +thumbnail: /images/djim-loic-ft0-Xu4nTvA-unsplash.jpg +draft: false +featured: false +slug: linkerd-cve-2023-44487 +tags: [Linkerd] +--- + +![A fast-moving clock](/images/djim-loic-ft0-Xu4nTvA-unsplash.jpg) + +Yesterday, [CVE-2023-44487](https://nvd.nist.gov/vuln/detail/CVE-2023-44487), a +DDOS vulnerability in many HTTP/2 implementations, was disclosed. This is a very +interesting attack involving the specifics of how HTTP/2 multiplexes concurrent +requests on the same TCP connection, and there are several great writeups on how +it works—see e.g. Cloudflare's [HTTP/2 Rapid Reset: deconstructing the +record-breaking +attack](https://blog.cloudflare.com/technical-breakdown-http2-rapid-reset-ddos-attack/) +and Google's [How it works: The novel HTTP/2 ‘Rapid Reset’ DDoS +attack](https://cloud.google.com/blog/products/identity-security/how-it-works-the-novel-http2-rapid-reset-ddos-attack) +for details of how this attack works and the consequences. + +We're happy to report that due to Linkerd's internal security policies and the +security-awareness and rapid response of the Rust community, all recent versions +of Linkerd are resilient to this class of DDOS attack. In fact, Linkerd has been +resilient to these attacks since April of this year! + +Specifically, versions of Linkerd that are resilient to CVE-2023-44487 include: + +* All versions of Linkerd 2.14.x +* Linkerd 2.13.1 and all later minor versions of Linkerd 2.13 +* Linkerd 2.12.5 and all later minor versions of Linkerd 2.12 + +Linkerd solved this vulnerability 6 months ago thanks in part to our dependency +handling procedures, but mostly thanks to the the security-mindedness of the +Rust community. + +Let's see just how this feat happened. + +## Linkerd is a security-first project + +It's no understatement to say that Linkerd treats security as a critical +requirement. Organizations around the world rely on Linkerd for everything from +protecting sensitive customer medical and financial data, to scheduling COVID +tests, to building 911 call centers. For some people, Linkerd is quite literally +a life-or-death project. + +Part of that approach is the choice of technologies like Rust, of course, which +allow us to avoid an entire class of buffer overflow exploits and other +vulnerabilities that are [endemic to languages like C and +C++](https://www.zdnet.com/article/chrome-70-of-all-security-bugs-are-memory-safety-issues/). + +But another, just as important part is simply how seriously the project takes +potential security vulnerabilities. Tracing the path to resolution for +CVE-2023-44487 is a great example of that. Here's how it happened: + +This issue was first tracked as a vulnerability in the Rust community as +[RUSTSEC-2023-0034](https://rustsec.org/advisories/RUSTSEC-2023-0034.html) on +April 14, 2023. At that point it had actually [already been fixed in +`h2`](https://seanmonstar.com/post/730794151136935936/hyper-http2-rapid-reset-unaffected), +the underlying library that Linkerd uses to handle HTTP/2 requests, as a change +that had gone out [on April 12th, two days +earlier](https://github.com/hyperium/h2/pull/668). + +The fix was published in [`h2` +v0.3.17](https://rustsec.org/advisories/RUSTSEC-2023-0034.html). Linkerd +automatically flagged that dependency [on April +13th](https://github.com/linkerd/linkerd2-proxy/commit/67306bc7ba19286352762362e4e1876ce5924442) +through [GitHub's Dependabot](https://github.com/dependabot), the automated +dependency tool that Linkerd uses to ensure it stays up-to-date with critical +dependencies. The Linkerd team published the update as [proxy release +v2.198.1](https://github.com/linkerd/linkerd2-proxy/releases/tag/release%2Fv2.198.1). + +On April 13th, this new proxy version [was pulled into the main Linkerd +repo](https://github.com/linkerd/linkerd2/commit/19a404fd196e251e969ac6c4a552a3c7af698dc5). +On April 14th, we pushed it to [Linkerd +2.13.1](https://github.com/linkerd/linkerd2/releases/tag/stable-2.13.1)—two days +after the underlying fix in `h2`, and the same day it was recognized as an +vulnerability in the Rust ecosystem. The fix also went out on +[edge-23.4.2](https://github.com/linkerd/linkerd2/releases/tag/edge-23.4.2) on +April 21st, and from there it was in all future and stable releases. + +In short: **two days after the fix was made in the underlying Rust HTTP/2 library, +it was already in the hands of Linkerd users as a stable release, and all +Linkerd releases since April have been protected against this vulnerability.** +While this vulnerability is making the news this week, Linkerd adopters have +been protected for almost 6 months. + +## h2, hyper, and more + +But what is `h2` anyways? The [h2](https://github.com/hyperium/h2) library and +its companion [hyper](https://hyper.rs/) are two of the foundational libraries +that Linkerd uses to handle HTTP/2 requests in the proxy. HTTP/2 is used +extensively by Linkerd: not only does Linkerd proxy application-initiated HTTP/2 +and gRPC (which uses HTTP/2) requests, Linkerd also transparently upgrades all +HTTP/1 communication in between two meshed pods to HTTP/2! This is part of +Linkerd's magic: by using `h2`, we can can dramatically reduce TCP connection +usage and improve performance and resiliency for inter-service HTTP traffic +without the application needing to do anything. + +Like much of the Rust async networking stack, these libraries represent the +pinnacle of modern network programming. The Linkerd team has been heavily +involved in `h2` for years. [Buoyant](https://buoyant.io), the primary sponsor +of Linkerd, also sponsored significant portions of h2 development, and Linkerd +maintainers occupy the third and fourth spots on the [`h2` contributor +leaderboard](https://github.com/hyperium/h2/graphs/contributors). + +But ultimately it is to the credit of `h2` maintainer Sean McArthur that +[CVE-2023-44487 was addressed six months +ago](https://seanmonstar.com/post/730794151136935936/hyper-http2-rapid-reset-unaffected), +allowing Linkerd to maintain its commitment to security and simplicity for its +users everywhere around the globe. A heartfelt thanks to you, Sean. + +## 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 +the [mailing lists](/community/get-involved/). Come and join the fun! + +(Photo by [Djim +Loic](https://unsplash.com/@loic?utm_content=creditCopyText&utm_medium=referral&utm_source=unsplash) +on +[Unsplash](https://unsplash.com/photos/ft0-Xu4nTvA?utm_content=creditCopyText&utm_medium=referral&utm_source=unsplash).) diff --git a/linkerd.io/content/blog/_index.md b/linkerd.io/content/blog/_index.md index 8e30837e24..8ec46e6b44 100644 --- a/linkerd.io/content/blog/_index.md +++ b/linkerd.io/content/blog/_index.md @@ -7,7 +7,7 @@ tags: - Tutorials & How-To's - Video items: - - blog/2023/0912-linkerd-214 + - blog/2023/1011-cve-2023-44487.md - blog/2023/0720-flat-networks.md description: Read the latest blog posts covering the Linkerd service mesh, from technical tutorials to announcements to what’s next on the roadmap. keywords: [] diff --git a/linkerd.io/content/blog/linkerd-hero-march.md b/linkerd.io/content/blog/linkerd-hero-march.md index 168ec749cb..51eee97ad5 100644 --- a/linkerd.io/content/blog/linkerd-hero-march.md +++ b/linkerd.io/content/blog/linkerd-hero-march.md @@ -11,7 +11,8 @@ tags: keywords: [hero] --- -We are excited to announce that this month's Linkerd Hero is Naveen Nalam. +We are excited to announce that this month's Linkerd Hero is +[Naveen Nalam](https://www.linkedin.com/in/nnalam/). Congrats, Naveen! ## What are Linkerd Heroes? diff --git a/linkerd.io/content/community/heroes/_index.md b/linkerd.io/content/community/heroes/_index.md index ba4a89ed58..b56e4787a9 100644 --- a/linkerd.io/content/community/heroes/_index.md +++ b/linkerd.io/content/community/heroes/_index.md @@ -16,234 +16,240 @@ top_hero: image: "/images/heroes-graphic.svg" image_on_the_right: false alt: Portrait of Rio Kierkels -voted: - badge: "/uploads/credly-badges_voted.svg" - heroes: +heroes: - name: Cameron Boulton date: September 2023 blurb: Technical contributions hero_type: contributor image: "/uploads/2023/09/cameron-portrait.jpeg" alt: Portrait of Cameron Boulton - github_url: "https://www.linkedin.com/in/cameronboulton/" + url: "/2023/09/30/announcing-the-september-2023-linkerd-hero/" - name: Mikael Fridh date: July 2023 blurb: Technical contributions hero_type: contributor image: "/uploads/2023/07/mikael-fridh-portrait.jpeg" alt: Portrait of Mikael Fridh - github_url: "https://www.linkedin.com/in/mikaelfridh/" + url: "/2023/07/25/announcing-the-july-2023-linkerd-hero/" - name: Yu Cao date: February 2023 blurb: Technical contributions hero_type: contributor image: "/uploads/2023/02/yu-cao-portrait.png" alt: Portrait of Yu Cao - github_url: "https://github.com/yc185050" + url: "/2023/02/10/announcing-the-february-2023-linkerd-hero/" - name: Steve Reardon date: November 2022 blurb: Helping community members hero_type: community image: "/uploads/steve-reardon.jpeg" alt: Portrait of Steve Reardon - github_url: "https://github.com/Monkman08/" + url: "/2022/11/22/announcing-novembers-linkerd-hero/" - name: Dan Williams date: September 2022 blurb: Helping community members hero_type: community image: "/uploads/dan-williams-portrait.png" alt: Portrait of Dan Williams - github_url: "https://www.linkedin.com/in/dan-williams-5501a8105/" + url: "/2022/09/23/announcing-septembers-linkerd-hero/" - name: Dani Baeyens date: August 2022 blurb: Technical contributions hero_type: contributor image: "/uploads/dani-baeyens-portrait.png" alt: Portrait of Dani Baeyens - github_url: "https://www.linkedin.com/in/danibaeyens/" + url: "/2022/08/24/announcing-augusts-linkerd-hero/" - name: Dominik Táskai date: July 2022 blurb: Helping community members hero_type: community image: "/uploads/dominik-taskai-portrait.png" alt: Portrait of Dominik Táskai - github_url: "https://www.linkedin.com/in/dtaskai/" + url: "/2022/07/27/announcing-julys-linkerd-hero/" - name: Chris Voss date: June 2022 blurb: Spreading the Linkerd message hero_type: ambassador image: "/uploads/chris-voss.jpeg" alt: Portrait of Chris Voss - github_url: "https://www.linkedin.com/in/christopher-voss-99161111/" + url: "/2022/06/08/announcing-junes-linkerd-hero/" - name: Naveen Nalam date: March 2022 blurb: Technical contributions hero_type: contributor image: "/uploads/naveen-nalam.png" alt: Portrait of Naveen Nalam - github_url: "https://www.linkedin.com/in/nnalam/" + url: "/2022/04/05/announcing-marchs-linkerd-hero/" - name: Krzysztof Dryś date: January 2022 blurb: Technical contributions hero_type: contributor image: "/uploads/krzysztof_drys.jpeg" alt: Portrait of Krzysztof Dryś - github_url: "https://github.com/krzysztofdrys" + url: "/2022/01/27/announcing-januarys-linkerd-hero/" - name: Aleksandr Tarasov date: December 2021 blurb: Spreading the Linkerd message hero_type: ambassador image: "/uploads/aleksandr_tarasov.jpeg" alt: Portrait of Aleksandr Tarasov - github_url: "https://github.com/aatarasoff" + url: "/2021/12/09/announcing-decembers-linkerd-hero/" - name: Alberto Sadde date: October 2021 blurb: Helping community members hero_type: community image: "/uploads/alberto-sadde.png" alt: Portrait of Alberto Sadde - github_url: https://github.com/aesadde + url: "/2021/10/28/announcing-octobers-linkerd-hero/" - name: Dom DePasquale date: August 2021 blurb: Spreading the Linkerd message hero_type: ambassador image: "/uploads/dom-depasqual.png" alt: Portrait of Dom DePasquale - github_url: https://github.com/dad264 + url: "/2021/08/26/announcing-augusts-linkerd-hero/" - name: Sanskar Jaiswal date: July 2021 blurb: Technical contributions hero_type: contributor image: "/uploads/jaiswal.png" alt: Portrait of Jasiwal - github_url: https://github.com/aryan9600 + url: "/2021/07/29/announcing-julys-linkerd-hero/" - name: Steve Gray date: June 2021 blurb: Spreading the Linkerd message hero_type: ambassador image: "/uploads/steve-gray.png" alt: Portrait of Steve Gray - github_url: https://github.com/steve-gray + url: "/2021/06/24/announcing-junes-linkerd-heroes/" - name: Steve Reardon date: June 2021 blurb: Spreading the Linkerd message hero_type: ambassador image: "/uploads/steve-reardon.jpeg" alt: Portrait of Steve Reardon - github_url: https://github.com/Monkman08 + url: "/2021/06/24/announcing-junes-linkerd-heroes/" - name: Rio Kierkels date: April 2021 blurb: Helping community members hero_type: community image: "/uploads/rio-kierkels.png" alt: Portrait of Rio Kierkels - github_url: https://www.linkedin.com/in/rio-kierkels-70a67b26/ - - name: Mayank Shah - date: March 2021 - blurb: Technical contributions - hero_type: contributor - image: "/uploads/mayank-shah.png" - alt: Portrait of Mayank Shah - github_url: https://github.com/mayankshah1607 - - name: Sergio Mendéz - date: February 2021 - blurb: Spreading the Linkerd message - hero_type: ambassador - image: "/uploads/sergio.jpg" - alt: Portrait of Sergio Mendéz - github_url: https://www.linkedin.com/in/sergioarmgpl/ - - name: Richard Pijnenburg - date: January 2021 - blurb: Helping community members - hero_type: community - image: "/uploads/richard-pijnenberg-2.jpg" - alt: Portrait of Richard Pijnenberg - github_url: https://www.linkedin.com/in/richard-pijnenburg/ - - name: Lutz Behnke - date: December 2020 - blurb: Technical contributions - hero_type: contributor - image: "/uploads/vita_image_lutz_behnke.jpg" - alt: Portrait of Lutz Behnke - github_url: https://www.linkedin.com/in/lutz-behnke-096a19/ -nominated: - badge: "/uploads/credly-badges_nominated.svg" - heroes: + url: https://www.linkedin.com/in/rio-kierkels-70a67b26/ - name: Saim Safdar date: April 2021 blurb: Spreading the Linkerd message hero_type: ambassador image: "/uploads/saim safdar 1.png" alt: Portrait of Saim Safdar - github_url: https://github.com/Saim-Safdar + url: https://github.com/Saim-Safdar + nominated: true - name: Ali Ariff date: April 2021 blurb: Technical contributions hero_type: contributor image: "/uploads/ali 1.png" alt: Portrait of Ali Ariff - github_url: https://github.com/aliariff + url: https://github.com/aliariff + nominated: true + - name: Mayank Shah + date: March 2021 + blurb: Technical contributions + hero_type: contributor + image: "/uploads/mayank-shah.png" + alt: Portrait of Mayank Shah + url: https://github.com/mayankshah1607 - name: Fredrik Klingenberg date: March 2021 blurb: Spreading the Linkerd message hero_type: ambassador image: "/uploads/fredrick-klingenberg.jpg" alt: Portrait of Fredrick Klingenberg - github_url: https://www.linkedin.com/in/fredrikklingenberg/ + url: https://www.linkedin.com/in/fredrikklingenberg/ + nominated: true - name: Henry Hagnäs date: March 2021 blurb: Spreading the Linkerd message hero_type: ambassador image: "/uploads/henry-elk-profile.jpg" alt: Portrait of Henry Hagnas - github_url: https://www.linkedin.com/in/hagnas/ + url: https://www.linkedin.com/in/hagnas/ + nominated: true - name: Christian Hüning date: March 2021 blurb: Helping community members hero_type: community image: "/uploads/christian-huning.png" alt: Portrait of Christian Huning - github_url: https://www.linkedin.com/in/christian-h%C3%BCning-964191a3/ + url: https://www.linkedin.com/in/christian-h%C3%BCning-964191a3/ + nominated: true + - name: Sergio Mendéz + date: February 2021 + blurb: Spreading the Linkerd message + hero_type: ambassador + image: "/uploads/sergio.jpg" + alt: Portrait of Sergio Mendéz + url: https://www.linkedin.com/in/sergioarmgpl/ - name: NJM date: February 2021 blurb: Helping community members hero_type: community image: "/uploads/njm.png" alt: Portrait of NJM - github_url: https://linkerd.io/community/heroes/ + url: https://linkerd.io/community/heroes/ + nominated: true - name: Piyush Singariya date: February 2021 blurb: Technical contributions hero_type: contributions image: "/uploads/piyush-singariya.png" alt: Portrait of Piyush Singariya - github_url: https://www.linkedin.com/in/piyushsingariya/ + url: https://www.linkedin.com/in/piyushsingariya/ + nominated: true + - name: Richard Pijnenburg + date: January 2021 + blurb: Helping community members + hero_type: community + image: "/uploads/richard-pijnenberg-2.jpg" + alt: Portrait of Richard Pijnenberg + url: https://www.linkedin.com/in/richard-pijnenburg/ - name: Matt Young date: January 2021 blurb: Spreading the Linkerd message hero_type: ambassador image: "/uploads/matt-young.png" alt: Portrait of Matt Young - github_url: https://www.linkedin.com/in/halcyondude/ + url: https://www.linkedin.com/in/halcyondude/ + nominated: true - name: Jimil Desai date: January 2021 blurb: Technical contributions hero_type: contributor image: "/uploads/jamil-desai-2.jpeg" alt: Portrait of Jimil Desai - github_url: https://www.linkedin.com/in/jimil-desai-30179416b/ + url: https://www.linkedin.com/in/jimil-desai-30179416b/ + nominated: true + - name: Lutz Behnke + date: December 2020 + blurb: Technical contributions + hero_type: contributor + image: "/uploads/vita_image_lutz_behnke.jpg" + alt: Portrait of Lutz Behnke + url: https://www.linkedin.com/in/lutz-behnke-096a19/ - name: Maxime Bélanger date: December 2020 blurb: Helping community members hero_type: community image: "/uploads/maxime-belanger.png" alt: Portrait of Maxime Bélanger - github_url: https://www.linkedin.com/in/maximeb/ + url: https://www.linkedin.com/in/maximeb/ + nominated: true - name: David Sudia date: December 2020 blurb: Spreading the Linkerd message hero_type: ambassador image: "/uploads/david-sudia.png" alt: Portrait of David Sudia - github_url: https://www.linkedin.com/in/davidsudia/ + url: https://www.linkedin.com/in/davidsudia/ + nominated: true --- diff --git a/linkerd.io/content/enterprise/_index.md b/linkerd.io/content/enterprise/_index.md index 2e1c8ecb95..93652ad823 100644 --- a/linkerd.io/content/enterprise/_index.md +++ b/linkerd.io/content/enterprise/_index.md @@ -7,16 +7,24 @@ layout: enterprise type: enterprise weight: 1 top_hero: - title: Linkerd Enterprise Support and Training + title: Enterprise Support and Training description: "Linkerd was created by Buoyant and contributed to the Cloud Native Computing Foundation in 2017. It was the first service mesh to achieve graduated status, and today powers the critical production systems of enterprises around the world.\n\nHere, you'll find commercial products, support, and training for Linkerd." support: - - title: Enterprise Support + - title: Distributions + entries: + - title: Buoyant Enterprise for Linkerd + description: "From the creators of Linkerd. Rust-based network security and reliability for modern applications. Built on open source and designed for the enterprise.\n\n- Uniform encryption, authentication, and authorization across your network\n- Global application traffic management, cluster failover, and cost-aware routing\n- Full L7 visibility\n- FIPS compliant distribution" + image: /uploads/enterprise/buoyant.svg + button: + href: https://buoyant.io/enterprise-linkerd/ + text: Learn more + - title: Support entries: - title: Enterprise support from Buoyant, creators of Linkerd - description: "- 24x7 Enterprise Support\n- FIPS compliant distribution\n- Support, training, architectural reviews, and more" + description: "- 24x7 Enterprise Support\n- Support, training, architectural reviews, and more" image: /uploads/enterprise/buoyant.svg button: - href: https://buoyant.io/ + href: https://buoyant.io/linkerd-support/ text: Learn more - title: Enterprise-grade Linkerd Support for Production Environment description: "Run Linkerd confidently with 24*7 enterprise support from the officially recognized commercial services Linkerd partner." diff --git a/linkerd.io/content/going-to-production/_index.md b/linkerd.io/content/going-to-production/_index.md index 59527819c7..5476e729bb 100644 --- a/linkerd.io/content/going-to-production/_index.md +++ b/linkerd.io/content/going-to-production/_index.md @@ -3,7 +3,7 @@ title = "Going to Production" weight = 20 +++ -The Linkerd project itself don't provide a formal guide for deploying Linkerd to +The Linkerd project itself doesn't provide a formal guide for deploying Linkerd to a production environment. Below are some external resources that might prove helpful: diff --git a/linkerd.io/layouts/community/heroes.html b/linkerd.io/layouts/community/heroes.html index cd2276c148..4e29173d32 100644 --- a/linkerd.io/layouts/community/heroes.html +++ b/linkerd.io/layouts/community/heroes.html @@ -1,6 +1,4 @@ {{ define "main" }} {{ partial "heroes/top-hero.html" .Params.top_hero }} -{{ partial "heroes/heroes-section.html" .Params.voted }} -{{ partial "heroes/heroes-section.html" .Params.nominated }} - +{{ partial "heroes/heroes-section.html" .Params.heroes }} {{ end }} diff --git a/linkerd.io/layouts/partials/enterprise/support.html b/linkerd.io/layouts/partials/enterprise/support.html index e84029b5cd..2f3d587d22 100644 --- a/linkerd.io/layouts/partials/enterprise/support.html +++ b/linkerd.io/layouts/partials/enterprise/support.html @@ -13,7 +13,7 @@

{{ .title }}

{{ .title }}

-
{{ .description | markdownify }}
+
{{ .description | markdownify }}
{{ .button.text }} diff --git a/linkerd.io/layouts/partials/heroes/heroes-section.html b/linkerd.io/layouts/partials/heroes/heroes-section.html index 9e31d991aa..5a3ac3076a 100644 --- a/linkerd.io/layouts/partials/heroes/heroes-section.html +++ b/linkerd.io/layouts/partials/heroes/heroes-section.html @@ -2,9 +2,9 @@