All Projects → linkerd → Linkerd2 Proxy

linkerd / Linkerd2 Proxy

Licence: apache-2.0
A purpose-built proxy for the Linkerd service mesh. Written in Rust.

Programming Languages

rust
11053 projects

Projects that are alternatives of or similar to Linkerd2 Proxy

meshery-kuma
Meshery Adapter for Kuma
Stars: ✭ 35 (-96.64%)
Mutual labels:  cncf, service-mesh
Kuma
🐻 The Universal Service Mesh. CNCF Sandbox Project.
Stars: ✭ 2,516 (+141.23%)
Mutual labels:  cncf, service-mesh
Smi Spec
Service Mesh Interface
Stars: ✭ 729 (-30.11%)
Mutual labels:  cncf, service-mesh
Kubernetes-and-Cloud-Native-Associate-KCNA
Useful notes for the KCNA - Kubernetes and Cloud Native Associate
Stars: ✭ 162 (-84.47%)
Mutual labels:  cncf, service-mesh
service-mesh-performance
Standardizing Service Mesh Value Measurement
Stars: ✭ 234 (-77.56%)
Mutual labels:  cncf, service-mesh
meshery-adapter-library
Library of common functionality for Meshery Adapters
Stars: ✭ 20 (-98.08%)
Mutual labels:  cncf, service-mesh
Kubernetes Handbook
Kubernetes中文指南/云原生应用架构实践手册 - https://jimmysong.io/kubernetes-handbook
Stars: ✭ 9,420 (+803.16%)
Mutual labels:  cncf, service-mesh
meshery
Meshery, the cloud native manager
Stars: ✭ 1,587 (+52.16%)
Mutual labels:  cncf, service-mesh
meshery.io
Site for Meshery, the cloud native management plane
Stars: ✭ 135 (-87.06%)
Mutual labels:  cncf, service-mesh
Networkservicemesh
The Hybrid/Multi-cloud IP Service Mesh
Stars: ✭ 456 (-56.28%)
Mutual labels:  cncf, service-mesh
Spiffe
The SPIFFE Project
Stars: ✭ 818 (-21.57%)
Mutual labels:  cncf
Participatecommunity
如何参加 CNCF 等开源社区呢?如何向 Kubernetes 等开源仓库提交贡献呢?这里提供一些信息
Stars: ✭ 18 (-98.27%)
Mutual labels:  cncf
Meshery.io
Site for Meshery, the multi-mesh manager
Stars: ✭ 29 (-97.22%)
Mutual labels:  service-mesh
Awesome Scalability Toolbox
My opinionated list of products and tools used for high-scalability projects
Stars: ✭ 34 (-96.74%)
Mutual labels:  service-mesh
Istio Demo
demonstrating canary deployments with istio
Stars: ✭ 12 (-98.85%)
Mutual labels:  service-mesh
Distribution
The toolkit to pack, ship, store, and deliver container content
Stars: ✭ 6,445 (+517.93%)
Mutual labels:  cncf
Pitstop
This repo contains a sample application based on a Garage Management System for Pitstop - a fictitious garage. The primary goal of this sample is to demonstrate several software-architecture concepts like: Microservices, CQRS, Event Sourcing, Domain Driven Design (DDD), Eventual Consistency.
Stars: ✭ 708 (-32.12%)
Mutual labels:  service-mesh
Istio
Connect, secure, control, and observe services.
Stars: ✭ 28,970 (+2677.56%)
Mutual labels:  service-mesh
Cka Pre
总结一些Kubernets 知识点, 根据CNCF curriculum v1.9.0 编写
Stars: ✭ 39 (-96.26%)
Mutual labels:  cncf
Meshery Linkerd
Meshery adapter for Linkerd
Stars: ✭ 34 (-96.74%)
Mutual labels:  service-mesh

linkerd2

GitHub license Slack Status

This repo contains the transparent proxy component of Linkerd2. While the Linkerd2 proxy is heavily influenced by the Linkerd 1.X proxy, it comprises an entirely new codebase implemented in the Rust programming language.

This proxy's features include:

  • Transparent, zero-config proxying for HTTP, HTTP/2, and arbitrary TCP protocols.
  • Automatic Prometheus metrics export for HTTP and TCP traffic;
  • Transparent, zero-config WebSocket proxying;
  • Automatic, latency-aware, layer-7 load balancing;
  • Automatic layer-4 load balancing for non-HTTP traffic;
  • Automatic TLS (experimental);
  • An on-demand diagnostic tap API.

This proxy is primarily intended to run on Linux in containerized environments like Kubernetes, though it may also work on other Unix-like systems (like macOS).

The proxy supports service discovery via DNS and the linkerd2 Destination gRPC API.

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

Building the project

A Makefile is provided to automate most build tasks. It provides the following targets:

  • make build -- Compiles the proxy on your local system using cargo
  • make clean -- Cleans the build target on the local system using cargo clean
  • make test -- Runs unit and integration tests on your local system using cargo
  • make test-flakey -- Runs all tests, including those that may fail spuriously
  • make package -- Builds a tarball at target/release/linkerd2-proxy-${PACKAGE_VERSION}.tar.gz. If PACKAGE_VERSION is not set in the environment, the local git SHA is used.
  • make docker -- Builds a Docker container image that can be used for testing. If the DOCKER_TAG environment variable is set, the image is given this name. Otherwise, the image is not named.

Cargo

Usually, Cargo, Rust's package manager, is used to build and test this project. If you don't have Cargo installed, we suggest getting it via https://rustup.rs/.

Repository Structure

This project is broken into many small libraries, or crates, so that components may be compiled & tested independently. The following crate targets are especially important:

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

linkerd2-proxy is copyright 2018 the linkerd2-proxy 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.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].