https://github.com/franckverrot/raven
Consul-based Control Plane for Envoy Proxy
https://github.com/franckverrot/raven
consul docker envoy envoy-proxy golang hashicorp nomad service-discovery
Last synced: 2 months ago
JSON representation
Consul-based Control Plane for Envoy Proxy
- Host: GitHub
- URL: https://github.com/franckverrot/raven
- Owner: franckverrot
- License: other
- Created: 2019-03-11T15:39:03.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2019-03-11T15:39:49.000Z (over 7 years ago)
- Last Synced: 2025-01-03T20:12:24.123Z (over 1 year ago)
- Topics: consul, docker, envoy, envoy-proxy, golang, hashicorp, nomad, service-discovery
- Language: Go
- Size: 5.86 KB
- Stars: 2
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Raven
Raven is a control plane for Envoy Proxy that is basing its service discovery
on [Consul][consul].
Envoy Proxy supports a lot of different types of service discoveries:
* `LDS`: Listener Discovery Service: what to listen to;
* `CDS`: Cluster Discovery Service: what apps are available;
* And a lot more, soon to be implemented.
## Usage
HOST_ADDRESS=host.docker.internal make
This should spin up Raven. Now you can start Envoy
make envoy
It is strongly recommended to start Envoy interactively but it works either way.
### Environment variables
* `GRPC_BINDING` : where raven will expose its gRPC interface (default: `127.0.0.1:1984`)
* `CONSUL_URL` : where Consul is located (default: `localhost:8500`)
* `HOST_ADDRESS` : address to use if the service address is `localhost` (useful with Docker for Mac)
## TODO
* [ ] Implement remaining Service Discoveries
* [ ] Implement `AggregatedServiceDiscovery`
* [ ] Use flags along with environment variables
## License
Please see [LICENSE] for licensing details.
[consul]: https://www.consul.io