This release updates the proxy to configure inbound route configurations--including authorizations and filters--via discovery from the control plane. If the controller does not yet configure routes, the proxy uses a default route. Route authorizations always extend the server's authorizations, so routes need not be defined to admit traffic. However, if a server have at least one route, *only* traffic that matches a route will be permitted, otherwise requests fail with a 404. If the proxy receives a router filter of an unknown type (i.e., because the controller is running a later version of the API that includes new types), then the proxy will FAIL all requests on that route with an internal server error. It's considered safer to fail hard in this case, rather than to silently ignore a configured policy that could potentially be security-sensitive. --- * build(deps): bump smallvec from 1.8.1 to 1.9.0 (linkerd/linkerd2-proxy#1795) * build(deps): bump serde_json from 1.0.81 to 1.0.82 (linkerd/linkerd2-proxy#1797) * build(deps): bump either from 1.6.1 to 1.7.0 (linkerd/linkerd2-proxy#1798) * Add an HTTP route redirect filter (linkerd/linkerd2-proxy#1799) * Add HTTP and gRPC route failure-injection filters (linkerd/linkerd2-proxy#1805) * build(deps): bump tracing-subscriber from 0.3.11 to 0.3.14 (linkerd/linkerd2-proxy#1806) * build(deps): bump pin-project from 1.0.10 to 1.0.11 (linkerd/linkerd2-proxy#1807) * build(deps): bump unicode-normalization from 0.1.20 to 0.1.21 (linkerd/linkerd2-proxy#1808) * build(deps): bump fixedbitset from 0.4.1 to 0.4.2 (linkerd/linkerd2-proxy#1809) * build(deps): bump serde from 1.0.137 to 1.0.138 (linkerd/linkerd2-proxy#1810) * build(deps): bump regex from 1.5.6 to 1.6.0 * build(deps): bump once_cell from 1.12.0 to 1.13.0 * build(deps): bump hyper from 0.14.19 to 0.14.20 (linkerd/linkerd2-proxy#1816) * add shutdown grace period timeout for graceful shutdowns (linkerd/linkerd2-proxy#1815) * dev: Update dev tooling (linkerd/linkerd2-proxy#1820) * build(deps): bump serde from 1.0.138 to 1.0.139 (linkerd/linkerd2-proxy#1819) * build(deps): bump hashbrown from 0.12.1 to 0.12.2 (linkerd/linkerd2-proxy#1818) * build(deps): bump prettyplease from 0.1.15 to 0.1.16 (linkerd/linkerd2-proxy#1821) * Revert "build(deps): bump tracing-subscriber from 0.3.11 to 0.3.14 (linkerd/linkerd2-proxy#1806)" (#1822) * Configure inbound HTTP routes via gRPC (linkerd/linkerd2-proxy#1814) Signed-off-by: Oliver Gould <ver@buoyant.io> |
||
---|---|---|
.devcontainer | ||
.github | ||
audits | ||
bin | ||
charts | ||
cli | ||
cni-plugin | ||
controller | ||
grafana | ||
jaeger | ||
multicluster | ||
pkg | ||
policy-controller | ||
policy-test | ||
proto | ||
proxy-identity | ||
test | ||
testutil | ||
viz | ||
web | ||
.dockerignore | ||
.editorconfig | ||
.gitattributes | ||
.gitignore | ||
.golangci.yml | ||
.helmdocsignore | ||
.markdownlint.yaml | ||
.proxy-version | ||
ADOPTERS.md | ||
BUILD.md | ||
CHANGES.md | ||
CODE_OF_CONDUCT.md | ||
CONTRIBUTING.md | ||
Cargo.lock | ||
Cargo.toml | ||
DCO | ||
Dockerfile-debug | ||
Dockerfile-proxy | ||
EXTENSIONS.md | ||
GOVERNANCE.md | ||
LICENSE | ||
MAINTAINERS.md | ||
README.md | ||
RELEASE.md | ||
ROADMAP.md | ||
SECURITY.md | ||
STEERING.md | ||
TEST.md | ||
deny.toml | ||
go.mod | ||
go.sum | ||
rust-toolchain | ||
tools.go |
README.md
Linkerd
🎈 Welcome to Linkerd! 👋
Linkerd is an ultralight, security-first service mesh for Kubernetes. Linkerd adds critical security, observability, and reliability features to your Kubernetes stack with no code change required.
Linkerd is a Cloud Native Computing Foundation (CNCF) project.
Repo layout
This is the primary repo for the Linkerd 2.x line of development.
The complete list of Linkerd repos is:
- linkerd2: Main Linkerd 2.x repo, including control plane and CLI
- linkerd2-proxy: Linkerd 2.x data plane proxy
- linkerd2-proxy-api: Linkerd 2.x gRPC API bindings
- linkerd: Linkerd 1.x
- website: linkerd.io website (including docs for 1.x and 2.x)
Quickstart and documentation
You can run Linkerd on any modern Kubernetes cluster in a matter of seconds. See the Linkerd Getting Started Guide for how.
For more comprehensive documentation, start with the Linkerd docs. (The doc source code is available in the website repo.)
Working in this repo
BUILD.md
includes general information on how to work in this repo.
We ❤️ pull requests! See CONTRIBUTING.md
for info on
contributing changes.
Get involved
- Join Linkerd's user mailing list, developer mailing list, and announcements mailing list.
- Follow @Linkerd on Twitter.
- Join the Linkerd Slack.
- Join us in the regular online community meetings!
Community meetings
We host regular online meetings for contributors, adopters, maintainers, and anyone else interested to connect in a synchronous fashion. These meetings usually take place the last Thursday of the month at 9am Pacific / 4pm UTC.
We're a friendly group, so please feel free to join us!
Steering Committee meetings
We host regular online meetings for the Linkerd Steering Committee. All are welcome to attend, but audio and video participation is limited to Steering Committee members and maintainers. These meetings are currently scheduled on an ad-hoc basis and announced on the linkerd-users mailing list.
Code of Conduct
This project is for everyone. We ask that our users and contributors take a few minutes to review our Code of Conduct.
Security
See SECURITY.md for our security policy, including how to report vulnerabilities.
A third party security audit was performed by Cure53 in June 2019. You can see the full report here.
License
Copyright 2021 the Linkerd Authors. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use these files except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.