support for proxy protocol v2 and AWS ELB custom TLV type
- Dominant language
- Ruby
- Stars
- 13.6k
- Forks
- 1.4k
- Avg merge
- 1d 3h
- Merged PRs (30d)
- 20
Description
We'd love to put fluentd behind an AWS PrivateLink endpoint, but still be able to see data about which endpoint the consumer is using (which we can then use to identify which consumer is talking to us). AWS ELB supports proxy protocol v2 and includes a custom TLV type that exposes the endpoint id on the consumer side.
Similar to the `add_remote_addr` option in fluentd for http, we'd love to see an `accept_proxy` option that enables support at the tcp level to use the proxy protocol information and expose the TLV values as well.
* https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-target-groups.html#proxy-protocol
* https://www.haproxy.org/download/1.8/doc/proxy-protocol.txt
Contributor guide
Research direction
Start by locating the HTTP implementation of the add_remote_addr option and the TCP input entry point, then read the linked AWS ELB and HAProxy proxy protocol specifications. Done means fluentd can accept Proxy Protocol v2 at the TCP level and expose the AWS ELB custom TLV values, including the consumer endpoint ID.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- aws, ruby
- Domain
- cloud, networking
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100