<p>I'm trying to migrate a voip service using freeswitch on GKE (google cloud managed kubernetes cluster) in order to make the service scalable.</p>

<p>I have managed to migrate freeswitch to docker and get it to run.
I require a high number of ports to be open to allow the necessary traffic.
Kubernetes services do not seem to allow that many ports to be open.</p>

<p>I then tried using the following image and kubernetes configuration and still couldn't contact the freeswitch server.
<a href="https://github.com/sip-li/docker-freeswitch" rel="noreferrer">https://github.com/sip-li/docker-freeswitch</a></p>

<p>I've seen the following issue that  seems to say that it isn't possible yet: <a href="https://github.com/kubernetes/kubernetes/issues/23864" rel="noreferrer">https://github.com/kubernetes/kubernetes/issues/23864</a></p>

<p>But I am no expert so I might have misunderstood, therefore:</p>

<p>Is it possible to run a freeswitch server on GKE that is accessible through an external IP address? Or is it possible to have auto-scaling and auto-discovery of new pods by a SIP load balancer on GKE?</p>

<p>This is possible.
There is lecture on <a href="https://www.youtube.com/watch?v=xgx61YGSS54" rel="noreferrer">youtube</a>, check this out.</p>

<p>They implement Asterisk in kubernetes, but freeswitch should be similar.
Main problem is RTP, they solved it with RTP proxy (kamailio RTP proxy).
They also implement balance loader using kamailio hosted on dedicated server (NOT inside kubernetes).</p>
