How to configure envoy edge proxy for redis service in kubernetes?

9/20/2018

I want to expose Redis HA service running in kubernetes to clients running outside the cloud. For this, I'm trying to setup envoy which supports Redis. I'm using ambassador which is a wrapper around envoy for kubernetes. Followed this doc for the initial setup. I'm new to envoy and kubernetes.

How can I configure ambassador to act as proxy for my Redis service?

I'm guessing there is someplace to specify address of the Redis service in the proxy. Finding it hard to get this info.This page refers to Redis proxy in envoy documentation but I don't follow where to make the changes.

Also, I'm interested only in the edge proxy feature, not the service proxy feature of envoy for my use case.

-- rainhacker
envoyproxy
kubernetes
redis

1 Answer

9/27/2018

I'd focus on your first sentence rather than your own conclusions which follow.

You want to expose Redis to the public network.
How you ended up with Envoy is beyond me; you probably only need a Kubernetes service with type set to LoadBalancer.
This is a terrible idea because Redis is unauthenticated by default, and the connection is in clear-text, don't say you haven't been warned ;-)

As for Envoy, sure, it does support Redis, but Ambassador has nothing to do with it, and if I understand your requirement correctly, is an entire overkill which seems to mostly distract you rather than help you get the job done.

https://kubernetes.io/docs/tutorials/stateless-application/expose-external-ip-address/

-- samhain1138
Source: StackOverflow