Traefik Mesh website screenshot

Traefik Mesh

Traefik Mesh (formerly Maesh) is a lightweight, non-invasive service mesh built on top of Traefik Proxy for Kubernetes. It provides automatic traffic management, observability, and security for microservices without requiring sidecar containers. Traefik Mesh is compliant with the Service Mesh Interface (SMI) specification and supports HTTP, TCP, and UDP traffic modes, traffic splitting, access control via TrafficTarget, rate limiting, circuit breaking, and retries. The project is effectively dormant: the last released version is v1.4.8 (2022-08-19), and commit activity since then has been limited to CI and documentation maintenance. The GitHub repository is not formally archived as of this profile date and there is no official deprecation banner on the project's README or documentation site, but the lack of feature releases for nearly four years and the absence of an SMI-compatible successor inside Traefik Labs' product line (Traefik Hub is positioned as Kubernetes-native API management, not a service mesh) make this an unmaintained project for practical purposes.

1 APIs 8 Features
KubernetesService MeshOpen SourceSMITraffic ManagementDormantUnmaintained

APIs

Traefik Mesh Controller API

The Traefik Mesh Controller API provides internal debugging and status endpoints for the Traefik Mesh controller pod. It exposes the current dynamic configuration built by the c...

Collections

Features

Non-Invasive Service Mesh

No sidecar containers required; uses per-node Traefik Proxy instances.

SMI Compliance

Full support for Service Mesh Interface (SMI) specification including TrafficSplit, TrafficTarget, HTTPRouteGroup, and TCPRoute.

HTTP Traffic Management

Retry, circuit breaking, rate limiting, and traffic splitting for HTTP services.

TCP and UDP Support

Transparent proxy support for TCP and UDP traffic in addition to HTTP.

Access Control List (ACL) Mode

All traffic forbidden by default unless explicitly allowed via SMI TrafficTarget resources.

Traffic Splitting

Route traffic subsets to different service versions using SMI TrafficSplit.

Kubernetes Annotations

Configure mesh behavior per service via Kubernetes annotations.

Helm Installation

Easy deployment and configuration via official Helm chart.

Use Cases

Canary Deployments

Gradually shift traffic to new service versions using SMI TrafficSplit.

Service-to-Service Access Control

Enforce zero-trust networking with SMI TrafficTarget ACL mode.

Observability

Inspect live mesh configuration, topology, and node readiness via controller API.

Microservices Traffic Management

Apply retries, circuit breakers, and rate limits without changing application code.

Integrations

Traefik Proxy

Uses Traefik Proxy as the data plane proxy on each Kubernetes node.

Kubernetes

Native Kubernetes integration via Custom Resource Definitions and annotations.

SMI Spec

Implements Service Mesh Interface specification for interoperability.

Semantic Vocabularies

Traefik Mesh Context

22 classes · 0 properties

JSON-LD

API Governance Rules

Traefik Mesh API Rules

15 rules · 8 errors 7 warnings

SPECTRAL

JSON Structure

Traefik Mesh Pod Info Structure

0 properties

JSON STRUCTURE

Example Payloads

Resources

🔗
Website
Website
🔗
Documentation
Documentation
👥
GitHubOrganization
GitHubOrganization
👥
GitHubRepository
GitHubRepository
🔗
HelmChart
HelmChart
📰
Blog
Blog
🔗
Community
Community
🔗
Slack
Slack
📜
TermsOfService
TermsOfService
📜
PrivacyPolicy
PrivacyPolicy
🔗
License
License
🔗
Spectral
Spectral
🔗
JSONLD
JSONLD
🔗
Vocabulary
Vocabulary
📄
ReleaseNotes
ReleaseNotes
📄
ChangeLog
ChangeLog
🔗
LlmsText
LlmsText

Sources

Raw ↑
opencollection: 1.0.0
info:
  name: Traefik Mesh Controller API
  version: 1.4.8
items:
- info:
    name: Configuration
    type: folder
  items:
  - info:
      name: Get Current Controller Configuration
      type: http
    http:
      method: GET
      url: http://controller-pod-ip:9000/api/configuration/current
    docs: Returns the current dynamic Traefik configuration built by the Traefik Mesh controller. This is the live configuration
      that the controller has computed from Kubernetes services, SMI resources, and annotations. The response may differ between
      requests as it reflects real-time state.
- info:
    name: Topology
    type: folder
  items:
  - info:
      name: Get Current Mesh Topology
      type: http
    http:
      method: GET
      url: http://controller-pod-ip:9000/api/topology/current
    docs: Returns the current mesh topology as seen by the Traefik Mesh controller, including all discovered services, pods,
      and their relationships within the Kubernetes cluster.
- info:
    name: Status
    type: folder
  items:
  - info:
      name: Get Mesh Node Status
      type: http
    http:
      method: GET
      url: http://controller-pod-ip:9000/api/status/nodes
    docs: Returns a JSON array containing details about the readiness and status of all Traefik Mesh proxy nodes visible to
      the controller. Returns an empty array (HTTP 200) if no nodes are visible.
  - info:
      name: Get Mesh Node Configuration
      type: http
    http:
      method: GET
      url: http://controller-pod-ip:9000/api/status/node/:node/configuration
      params:
      - name: node
        value: traefik-mesh-proxy-abc12
        type: path
        description: The Kubernetes pod name of the Traefik Mesh proxy node.
    docs: Returns the current Traefik configuration running on the specified Traefik Mesh proxy node, identified by its pod
      name. Returns 404 if the pod cannot be found, or other non-200 status codes on errors. The error message is returned
      in the body and logged on the controller.
  - info:
      name: Get Controller Readiness
      type: http
    http:
      method: GET
      url: http://controller-pod-ip:9000/api/status/readiness
    docs: Returns HTTP 200 if the Traefik Mesh controller has successfully started and is ready to process requests. Returns
      HTTP 500 if the controller is not yet ready. Used as a readiness probe in Kubernetes deployments.
bundled: true