Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove proxy-protocol #117

Merged
merged 1 commit into from
Jun 7, 2017
Merged

Conversation

stewartpark
Copy link
Contributor

@stewartpark stewartpark commented Jun 7, 2017

/cc @kruppel @kev71187 @jeremyd @Sasso

tl;dr: Our healthcheck has been sending us an empty string with proxy protocol header prepended. So this PR is to disable proxy protocol on ELB since we are not utilizing it

To work around Kubernetes's S-NAT'd incoming node port traffic in order to preserve source IP, many production deployments use proxy protocol, but since we set up ELB right to be HTTP, this hasn't been our problem, since it'd set X-Forwarded-For.

Though we have enabled it by default, and it was causing our apps having lots of parse errors, since our apps don't understand how proxy protocol works.

The below is the packets we're getting as healthchecks to our apps:

PROXY TCP4 10.100.102.67 10.100.102.67 28225 32004
PROXY TCP4 10.100.101.66 10.100.101.66 63765 32004
PROXY TCP4 10.100.101.66 10.100.101.66 49552 32004
PROXY TCP4 10.100.100.36 10.100.100.36 17443 32004
PROXY TCP4 10.100.101.66 10.100.101.66 49928 32004
PROXY TCP4 10.100.100.36 10.100.100.36 45398 32004
PROXY TCP4 10.100.102.67 10.100.102.67 19289 32004
PROXY TCP4 10.100.102.67 10.100.102.67 20684 32004
PROXY TCP4 10.100.101.66 10.100.101.66 48946 32004
PROXY TCP4 10.100.101.66 10.100.101.66 28947 32004
PROXY TCP4 10.100.101.66 10.100.101.66 64861 32004
PROXY TCP4 10.100.103.186 10.100.103.186 48271 32004
PROXY TCP4 10.100.103.186 10.100.103.186 10005 32004
PROXY TCP4 10.100.103.186 10.100.103.186 42040 32004
PROXY TCP4 10.100.103.186 10.100.103.186 7869 32004
PROXY TCP4 10.100.103.186 10.100.103.186 8891 32004
...

And it's supposed to be empty strings for puma to ignore it.

@iamsaso
Copy link
Contributor

iamsaso commented Jun 7, 2017

Tested in one of our internal apps and parse error goes away!

@iamsaso iamsaso merged commit 5e8dc95 into master Jun 7, 2017
@stewartpark stewartpark deleted the stewkevin/fix-proxy-protocol-healthcehck branch June 7, 2017 23:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

2 participants