linkerd2

module
v18.7.1+incompatible Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 17, 2018 License: Apache-2.0

README

Linkerd2

Build Status GitHub license Slack Status

🎈 Welcome to Linkerd2! 👋

Note: this project is currently in the middle of a migration from the old name (Conduit) to the new name (Linkerd2). While this transition is ongoing, there will be references to Conduit that don't make a lot of sense. Not to worry, we're working on it! For more information, check out the announcement.

Linkerd2 is an ultralight 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.

Linkerd2 (pronouned "linker-DEE-two") acts as a transparent HTTP/gRPC/thrift/tcp/etc proxy, and can be deployed alongside existing applications regardless of what language they're written in. It works with many common protocols and utilizes Kubernetes as a backend for service discovery.

It is separated into two major components: the control plane and the data plane. The control plane interacts with the service discovery backend, orchestrates the data plane and is written in Go. The data plane runs alongside existing applications, provides the proxy that manages traffic itself and is written in Rust.

Currently, Linkerd2 is capable of proxying all TCP traffic, including WebSockets and HTTP tunneling, along with reporting top-line metrics (success rates, latencies, etc) for all HTTP, HTTP/2, and gRPC traffic.

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

Get involved

Documentation

View Conduit docs for more a more comprehensive guide to getting started, or view the full Conduit roadmap.

Getting started with Conduit

  1. Install the Conduit CLI with curl https://run.conduit.io/install | sh .

  2. Add $HOME/.conduit/bin to your PATH.

  3. Install Conduit into your Kubernetes cluster with conduit install | kubectl apply -f -.

  4. Verify that the installation succeeded with conduit check.

  5. Explore the Conduit controller with conduit dashboard.

  6. Optionally, install a demo application to run with Conduit.

  7. Add your own service to the Conduit mesh!

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.

Dependencies

There are some projects used by Linkerd2 that are not part of this repo.

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.

License

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

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.

Directories

Path Synopsis
cli
cmd
controller
ca
gen/common/healthcheck
Package healthcheck is a generated protocol buffer package.
Package healthcheck is a generated protocol buffer package.
gen/controller/tap
Package tap is a generated protocol buffer package.
Package tap is a generated protocol buffer package.
gen/public
Package public is a generated protocol buffer package.
Package public is a generated protocol buffer package.
k8s
tap
pkg
k8s
cmd
Package testutil provides helpers for running the linkerd integration tests.
Package testutil provides helpers for running the linkerd integration tests.
web
srv

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL