gobetween icon indicating copy to clipboard operation
gobetween copied to clipboard

[Help Needed!] Collect use cases of real-life gobetween usage

Open yyyar opened this issue 5 years ago • 13 comments

Let's keep this issue for collecting a list of real-life use cases of people and organizations that use gobetween. Everyone encouraged to describe their use cases.

The idea is to put it on website (http://gobetween.io/) and in README or wiki for new potential users to consider and to motivate everyone to push gobetween forward.

The format of use case need to be consistent across all use cases. Also, official approve to show it on gobetween website with the user / organization name, link or logo is needed.

Thank you very much for your support!

yyyar avatar Aug 12 '18 19:08 yyyar

@shantanugadgil @jtopjian Maybe you could be the first to share your use cases? We'll love to put it on website with mention of your organization, if possible.

yyyar avatar Aug 19 '18 10:08 yyyar

I can give our case, but cannot put company logo or name. What kind of format do you want it in?

jamie1911 avatar Aug 19 '18 15:08 jamie1911

@yyyar yes definitely, though I am not sure at the moment about using the company details.

My use case is "sort of" covered in: (Setup 2) https://github.com/yyyar/gobetween/issues/53#issuecomment-290514823

This setup is use extensively in our "on premise" qa setups.

I'll try to make a detailed doc to be shared/attached here later.

shantanugadgil avatar Aug 19 '18 16:08 shantanugadgil

We are using it to load balance high amounts of DNS traffic coming in from the public internet. The layout looks something like the attached image. I can also provide the configurations as well, if you want to show that. gobetween setup-mock

jamie1911 avatar Aug 20 '18 01:08 jamie1911

Our QA team tests various versions of our actual app on a much smaller scale. To perform the "functionality testing", they need to mimic all the "cloud" services in house.

The "app" needs some services which are "elb + autoscaling groups" in AWS. These services are launched as indivdual docker containers, on a shared "worker" farm of machines.

These backend services (srv1, srv2, srv3) are launched as docker containers using Nomad and registered in Consul. Gobetween is also launched via Nomad within the same cluster and this is able to discover the services specific to itself.

Each instance of the app talks to its "services" as DNS endpoints, so all required DNS entries point to the GB instance corresponding to itself. GB acts like the "local ELB" (but with TCP+SNI), routing traffic to the appropriate backend.

Configuration Details: GB version: 0.5.0 Each GB instance is a 2 CPU 1 GB Each "worker" machine is 4 CPU 8 GB

On an average, we have about 20 (twenty) backend services (20 dockers) for each version of the app. Also, we usually have about 10 (ten) different versions of the app running tests.

image

shantanugadgil avatar Aug 21 '18 18:08 shantanugadgil

@yyyar I apologize for the late reply. I haven't been able to deploy gobetween in my infrastructure lately since the pending multi-backend support proves to be a requirement. This is in no way a request for prioritization - I totally get you folks are busy :)

However, we ($work) suggest gobetween as an easy-to-use proxy/loadbalancer utility to users of our public OpenStack cloud. Like most, we've been affected by the IPv4 shortage and can only afford to allocate 1 public IPv4 address per user of the cloud. For users who do not have IPv6, they can install gobetween on a Linux vm and have it forward arbitrary ports to other virtual machines they create. gobetween is a lot easier for them to set up than fiddling with iptables.

jtopjian avatar Aug 22 '18 02:08 jtopjian

Hi all,

a minor update ... we have been testing the above scenario for a PRODUCTION based POC but are currently stalled on #172

shantanugadgil avatar Sep 06 '18 10:09 shantanugadgil

@jtopjian regarding multi-backend support, is it described in a ticket?

illarion avatar Apr 10 '19 09:04 illarion

@illarion Yes: https://github.com/yyyar/gobetween/issues/112

jtopjian avatar Apr 10 '19 14:04 jtopjian

@yyyar Just found this issue and figured I can add another user to this list: We are using gobetween to provision LoadBalancers for KubeOne on environments that do not support LoadBalancers out of the box.

e.g.: https://github.com/kubermatic/kubeone/tree/master/examples/terraform/vsphere https://github.com/kubermatic/kubeone/tree/master/examples/terraform/openstack https://github.com/kubermatic/kubeone/tree/master/examples/terraform/packet

KubeOne is an open source project from Loodse (https://www.loodse.com/) to quickly spin up HA Kubernetes clusters on various infrastructure providers.

gobetween is perfect for us, because it's very simple to configure and operate.

thetechnick avatar Nov 10 '19 12:11 thetechnick

We are using it to load balance high amounts of DNS traffic coming in from the public internet. The layout looks something like the attached image. I can also provide the configurations as well, if you want to show that.

make sure you remove any (especially) ip info from posts... not great security wise - perhaps blur ips out.

dawesi avatar Dec 10 '19 15:12 dawesi

We are using it to load balance high amounts of DNS traffic coming in from the public internet. The layout looks something like the attached image. I can also provide the configurations as well, if you want to show that.

make sure you remove any (especially) ip info from posts... not great security wise - perhaps blur ips out.

Agreed, which is why they are fake IPs 👍

jamie1911 avatar Dec 10 '19 15:12 jamie1911

Our use case is really straightforward. We are load balancing a simple api in .Net Core 3. image

Sm0k3scr33n avatar Jan 30 '20 19:01 Sm0k3scr33n