Sermant
Sermant is an open-source service mesh enhancement framework designed to provide Java-oriented traffic governance, microservice management, and observability capabilities without requiring application code changes.
- Java service mesh enhancement framework for microservice governance (service mesh, microservices)
- Non-intrusive Java agent-based integration that avoids code modification (application runtime, instrumentation)
- Traffic governance features including routing, rate limiting, and circuit breaking (traffic management)
- Microservice governance with service registration, discovery, and configuration management integration (service governance)
- Observability support for tracing and monitoring of Java microservices (observability, monitoring)
More About Sermant
Sermant is an open-source project under the Cloud Native Computing Foundation (CNCF) that focuses on enhancing service mesh (service mesh) capabilities for Java-based microservices through a non-intrusive Java agent model. It addresses the problem of applying traffic governance, service governance, and observability across distributed Java applications without requiring refactoring or direct code instrumentation in each service.
The core approach of Sermant is based on a Java agent (application runtime, instrumentation) that attaches to Java applications at startup and intercepts traffic and runtime behavior. This design allows Sermant to integrate service mesh governance features into existing microservices with minimal changes to deployment topology. By working at the JVM layer, Sermant can support heterogeneous frameworks within the Java ecosystem while presenting a consistent governance layer.
In the area of traffic governance (traffic management), Sermant supports capabilities such as fine-grained routing control, gray or canary release strategies, rate limiting, and circuit breaking. These functions enable operators to manage request flows, apply progressive delivery patterns, and protect backend services from overload. Because these controls are applied via the agent, developers are not required to embed traffic control logic into application code.
For microservice governance (service governance), Sermant integrates with common service registration and discovery mechanisms and configuration management systems where supported by its plugins and adapters. This allows Sermant to participate in service discovery flows and apply governance policies based on service metadata. The framework can coordinate with existing registries and configuration centers that are typical in Java microservice environments.
Sermant also provides observability features (observability, monitoring), including support for tracing and metrics collection in Java microservices. By capturing runtime data through the agent, Sermant allows platform teams to monitor service interactions, latency, and error conditions, and to feed this data into compatible monitoring and tracing backends where such integrations are available. This helps align service governance policies with runtime telemetry.
The project is structured as an extensible framework (plugin framework), where capabilities are delivered through plugins that can be enabled or disabled based on deployment requirements. This plugin model facilitates integration with various registries, configuration centers, and observability stacks. Enterprises can adopt Sermant within existing Kubernetes or cloud-native environments, using it alongside or in complement to service mesh infrastructure to enhance governance for Java workloads in particular.
From a directory and taxonomy perspective, Sermant fits into the categories of service mesh enhancement for Java (service mesh), Java runtime governance (application runtime, microservice governance), and observability-enabling instrumentation (observability, monitoring). It is relevant to platform engineering teams that manage Java-based microservices and require centralized policy enforcement and visibility without modifying application code.