A service mesh for Kubernetes and beyond. Main repo for Linkerd 1.x.
Switch branches/tags
alex/announcer alex/classify-exceptions alex/client-timeouts alex/composed-dtab alex/daemonset-namer alex/default-telemeter alex/delegator-addr-neg alex/dester alex/destination alex/disable-shutdown alex/dst-concrete alex/dtree-find alex/dynamic-params alex/etcd-announce alex/grpc-streaming-bug alex/insert alex/instrument-namerd alex/istio-interpreter alex/istio-routing alex/killphrase alex/leozc/t2095 alex/macro alex/marathon-ip-per-task alex/match-error alex/metrics-reaper alex/metrics alex/namer-state-transformer alex/namerd-plugin-assets alex/namerd-timeout alex/new-relic alex/proxy-example alex/reader-discarded alex/security alex/service-stream-stats alex/singletonpool alex/usage-flakey alex/wire-it-up alex/write-queue alex/☃ alex/0.8.0 alex/0.8.1 alex/1.0.0-rc3 alex/1.1.1 alex/1.4.6-balancers dad/client-tls-doc-update dad/consul-dtab-failure dad/finagle-18-12 dad/graceful-shutdown dad/graceperiod-shutdown dad/h2-clear-context dad/h2-forwarded-header dad/h2-l5d-err dad/h2-request-resolver dad/log-lines-dtab-store dad/request-resolver dad/stream-large-requests-after dad/1.4.2 dad/1.4.3 dad/1.4.4 dad/1.5.1 deebo91/deprecate-third-party-resource deebo91/finagle-18-upgrade deebo91/infinite-consul-log deebo91/release-link-fix deebo91/scala-doc-fix deebo91/update-forward-cert-docs deebo91/1.3.2 deebo91/1.3.3 eliza/build.sbt eliza/bytebuf eliza/changelog-owners eliza/configmap-error-handling eliza/consul-dtab-store-parse-error eliza/consul-failure-handling eliza/consul-leak-test eliza/consul-logging-denoise eliza/consul-refactor eliza/consul-warning eliza/delete-resource-versions eliza/deprecated-sbt-ops eliza/detect-bad-framing eliza/dont-fear-the-reaper eliza/dtab-prop-tests eliza/empty-tls-certs eliza/fix-bufferedstream-poll-leak eliza/fix-consul-example eliza/fix-failure-accrual-backoff eliza/fix-on-reset eliza/fix-release-note-endpoint eliza/fix-release-notes eliza/fix-spurious-exception eliza/go-away eliza/grpc-classifier eliza/grpc-memory-leak eliza/grpc-streaming-bug-code-style eliza/h2load eliza/h2spec eliza/interrupt-handler-refactor eliza/k8s-logging-perf eliza/k8s-modify eliza/k8s-style eliza/kube-refactor/configmap-interpreter eliza/newest-relic eliza/per-dst-stream-stats eliza/protocol-error-message eliza/really-deprecate-statsd eliza/resource-version-filtering eliza/ssl-docs-fix eliza/stabilize-race eliza/stats-test-embetterment eliza/stream-stats-exception-handler eliza/stream-stats-time-interval eliza/tls-reloading-tests eliza/too-old-resource-version eliza/unary-grpc-fix eliza/1.2.0-rc2 eliza/1.2.0 eliza/1.2.1 eliza/1.2.2 eliza/1.3.0 eliza/1.3.1-rc1 eliza/1.3.1 eliza/1.3.4 eliza/1.3.5 esbie/acceptance-test-test esbie/dynamic-path-modules esbie/istio-merge-test esbie/istio-rewrite-headers esbie/istio-routing-proto esbie/shorter-dst-ids fix_consul_namer graalvm greg/customize-tracer greg/k8s-ca identifier_bug1963 istio kl/debug kl/http-service-name kl/span-ids kl/thrift-fix kl/thrift-rpc kl/tls-debug kl/tls kube-refactor leozc/announcer_param master phil/move-istio-own-module phil/1433-istio-refactoring phil/1433-mixer-preconditions rmars/inject rmars/namerd-admin rmars/optimize-require rmars/svc-stats siggy/bytebuf siggy/no-netty3 siggy/openjdk-alpine siggy/reset-cancel siggy/usage-admin siggy/1.3.0-interpreter-bounce siggy/8u151-jre siggy/134-integration stevej/change_repo_name stevej/issue_945 stevej/shorted_metrics_lock twitter-develop ver/config-visibility ver/consul-lazy-services ver/deadlines-act ver/deez-treez ver/default-telemetry ver/dst-hashcode ver/extensible-admin ver/finagle-37 ver/finagle-http2 ver/flowz ver/forless-routing-factory ver/fun-suite ver/graceful-shutdown ver/grpc-event-stream ver/h2-codec ver/h2-error-resetter ver/h2-fix-tls ver/h2-no-accum ver/h2-no-frame-aggregation ver/h2-reset-streams ver/h2-server-multiplexing ver/h2-test-touchup ver/h2-trailers-constructor ver/h2+alpn ver/h2+h1up ver/h2+headers ver/h2+streamfail ver/h2+upgrade ver/h2 ver/http2+l5d ver/http2+q ver/http2 ver/hup-bounce-interpreters ver/namerd-lb-295 ver/namerd-tls ver/netty4-valed-routingfactory ver/remote-debugTrace ver/subnetter ver/telemeter-admin-2 ver/telemeter-admin ver/test-util-touchy ver/usage-grpc-mv ver/1.3.0-interpreter-bounce ver/1.3.4-ck-3
Nothing to show
Clone or download
dadjeibaah Upgrade finagle version to 18.11.0 (#2187)
* Switch `Reader.ReaderDiscarded` to new `ReaderDiscardedException`
* `Reader` trait's `read` method signature no longer takes the argument `n: Int`. Updates all classes that implement this method signature.
* use `withStack`instead  of the deprecated `transformed` method in `ListeningStackServer
* include a default `reqTraceKey` and `repTraceKey` wherever PayloadSizeFilter is used.
* refactor dispatchers to use `transport.close` instead of `transport.context.onClose`
* Breaking change: `maxChunkSize` is removed and is no longer a configurable `param` in Finagle

fixes #2187 

Signed-off-by: Dennis Adjei-Baah <dennis@buoyant.io>
Latest commit 68b200b Dec 6, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci Increase circleci resource class to large (#2143) Oct 8, 2018
.github Add root CODEOWNERS (#1928) May 4, 2018
admin Add support for socket options for Linkerd and Namerd server endpoints ( Oct 2, 2018
ci Add h2load to test script (#1758) Dec 22, 2017
config/src Upgrade finagle version to 18.11.0 (#2187) Dec 7, 2018
consul/src Upgrade to Finagle 18.9.1 (#2127) Oct 1, 2018
etcd Upgrade finagle dependency to 18.6.0 (#2049) Jul 11, 2018
finagle Upgrade finagle version to 18.11.0 (#2187) Dec 7, 2018
grpc Upgrade to Finagle 18.9.1 (#2127) Oct 1, 2018
interpreter Add a new consul backed interpreter to Linkerd (#2144) Oct 18, 2018
istio-proto/src/main Refactor Istio code before adding Mixer precondition checks (#1403) (#… Oct 12, 2017
istio/src Remove broken links (#1706) Nov 24, 2017
k8s/src Upgrade finagle version to 18.11.0 (#2187) Dec 7, 2018
linkerd Upgrade finagle version to 18.11.0 (#2187) Dec 7, 2018
marathon/src Exclude Marathon tasks in health-check grace period (#2098) (#2099) Aug 16, 2018
mesh Update Delegator interface to return a single value only (#1862) Mar 20, 2018
namer Upgrade finagle version to 18.11.0 (#2187) Dec 7, 2018
namerd Upgrade finagle version to 18.11.0 (#2187) Dec 7, 2018
project Upgrade finagle version to 18.11.0 (#2187) Dec 7, 2018
router Upgrade finagle version to 18.11.0 (#2187) Dec 7, 2018
telemetry Fix incorrect match introduced by #2163 (#2176) Nov 16, 2018
test-util/src/main/scala/io/buoyant/test Install git during circleci setup (#1878) Mar 28, 2018
validator/src/main/scala/io/buoyant/namerd Replace string-interpolation in log messages with sprintf-style loggi… Aug 23, 2017
.gitignore Add protoc script which downloads and runs protoc (#1138) Mar 14, 2017
ADOPTERS.md Remove ozon from adopters' list (#2142) Oct 12, 2018
BUILD.md Add buildtime base docker image overwrite guideline (#1867) Mar 16, 2018
CHANGES.md 1.5.2 (#2178) Nov 19, 2018
CONTRIBUTING.md Capitalize Linkerd and Namerd in documentation (#1743) Dec 12, 2017
DCO Replace CLA with DCO (#1722) Dec 5, 2017
GOVERNANCE.md add GOVERNANCE.md and demarcate super-maintainers (#1813) Feb 15, 2018
ISSUE_TEMPLATE.md Capitalize Linkerd and Namerd in documentation (#1743) Dec 12, 2017
LICENSE 🌅 Introducing linkerd 🎈 Jan 13, 2016
MAINTAINERS.md Add @ccmtaylor to MAINTAINERS.md (#1857) Mar 15, 2018
PLUGINS.md Update PLUGINS.md (#2177) Nov 16, 2018
README.md fix copyright in README (#1866) Mar 15, 2018
protoc Remove echo statement from protoc script (#1380) Jun 12, 2017
sbt 🌅 Introducing linkerd 🎈 Jan 13, 2016



GitHub license Circle CI Slack Status Docker Pulls CII Best Practices

🎈 Welcome to Linkerd! 👋

Linkerd is a transparent service mesh, designed to make modern applications safe and sane by transparently adding service discovery, load balancing, failure handling, instrumentation, and routing to all inter-service communication.

Linkerd (pronouned "linker-DEE") acts as a transparent HTTP/gRPC/thrift/etc proxy, and can usually be dropped into existing applications with a minimum of configuration, regardless of what language they're written in. It works with many common protocols and service discovery backends, including scheduled environments like Mesos and Kubernetes.

Linkerd is built on top of Netty and Finagle, a production-tested RPC framework used by high-traffic companies like Twitter, Pinterest, Tumblr, PagerDuty, and others.

Linkerd is hosted by the Cloud Native Computing Foundation (CNCF).

Want to try it?

We distribute binaries which you can download from the Linkerd releases page. We also publish Docker images for each release, which you can find on Docker Hub.

For instructions on how to configure and run Linkerd, see the user documentation on linkerd.io.

Working in this repo

BUILD.md includes general information on how to work in this repo. Additionally, there are documents on how to build several of the application subprojects:

  • linkerd -- produces linkerd router artifacts
  • namerd -- produces namerd service discovery artifacts
  • grpc -- produces the protoc-gen-io.buoyant.grpc code generator

We ❤️ pull requests! See CONTRIBUTING.md for info on contributing changes.

Related Repos

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.


Copyright 2018, 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


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.