Emissary-ingress vs Lura
Emissary-ingress
emissary-ingress.devLura
luraproject.orgSide by side
| Figure | Emissary-ingress | Lura |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Linux | Yes | — |
| API | — | Yes |
| Self-hosted | Yes | Yes |
| Plans published | 1 | 1 |
| Spec score · API Gateway Software | 7.7 (#17) | 7.9 (#11) |
| Architecture | Emissary persists state in Kubernetes instead of requiring a separate database, and uses Envoy for traffic routing and proxying. | Its building blocks include configuration, router, and proxy packages, with helpers for encoding, logging, and service discovery. |
Plans
In their own words
Emissary-ingress
Emissary-ingress is a free, open-source Kubernetes API gateway, Layer 7 load balancer, and Ingress built on Envoy Proxy. It handles HTTP, HTTPS, HTTP proxy, HTTPS proxy, TCP, TLS, gRPC, and HTTP/3 traffic. Developers can add, remove, merge, or separate services through Kubernetes resources or annotations, and use annotations to control traffic shares for canary deployments. Emissary stores state in Kubernetes rather than requiring a separate database, with Envoy handling routing and proxying. It can check requests through an external authentication service and a third-party rate limit service, and supports request transformation and client certificate validation, including mutual TLS. A diagnostics service helps investigate configuration issues. Emissary can act as an Istio edge proxy and supports Consul service discovery. It is self-hosted on Linux; Helm is the recommended installation method, with Kubernetes YAML also documented. The project is intended for cloud-native organizations where developers operate their services, as well as developers and operators.
Lura
Lura is a free, open-source Go library for building stateless API gateways and proxies in cloud-native or on-premises deployments. It combines multiple backend sources behind endpoints, allowing a client to request data through one endpoint and receive only the needed fields. Its proxy can group, wrap, transform, and reduce responses, with an EntityFormatter for response manipulation. The framework is organized around configuration, router, and proxy packages, with helpers for encoding, logging, and service discovery. Documented middleware covers balancing, concurrent requests, request and response logging, response merging, and HTTP URL patterns. Lura supports HTTP(S), while adapters for Thrift, gRPC, AMQP, and NATS can be added. The router layer can use other routers, frameworks, or middleware, and generic libraries support plugins such as OAuth layers. It is compiled from source and requires Go. Pricing is free.