Open pjebs opened 6 years ago
I have a program in a docker container that listens to udp
Any special requirements in terms of performance and throughput?
It would be nice if it could match nginx
What does that mean? Can you provide numbers?
Just a joke. As fast as possible is nice.
Not expecting nginx performance in immediate future
UDP proxy support is good for IoT. :)
Indeed
+1
It might come or it might not :P
I'll do it. Can't be that hard, can it? (famous last words)
As for use cases, I just came up with one. I'm planning on sending logs from my apps to logstash using GELF, and it uses UDP. Having Fabio in front of the Logstash cluster so I don't lose the logs while doing some maintentance or due to one node going down would be nice đź‘Ť
For information, i have a similary use case... and found this : http://gobetween.io/ It's just work... stable since one month... but not very active project.
Good to know, LordFPL. I'd rather not add another element to the mix, but if I have to, it's nice to see there are alternatives. But yeah, it doesn't seem to be very active, so I'll keep an eye on it just in case.
But if we had this and the GELF logger (PR 246), Fabio would be sending its logs through itself, hehehe.
@Verdoso Since UDP is a connectionless protocol fabio wouldn't buffer the data since it wouldn't know when data didn't get to the upstream server. I can have a look at the GELF logger in #246 and see if that is still ready to be merged.
Yes, I guess the balancing part is just using the consul stated to decide if one server should be sent or not packets. UDP being as it is, I doubt other proxies are doing more than that. That could be enough. I'm checking also if going the tcp route would be performant enough.
I would like to respectfully ask if there was any progress on this issue (L4 UDP)?
I’m still in the middle of moving my family to another country and meeting a deadline. If someone from the community wants to jump in then this is a good opportunity. This should not be too difficult.
— Frank Schröder
On 12. Jul 2018, at 06:30, pj notifications@github.com wrote:
I would like to respectfully ask if there was any progress on this issue (L4 UDP)?
— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.
This would be a really interesting solution for video game servers, especially with the ACLs we can set on remote IPs. Being able to update in realtime which remote IPs should be permitted to even talk into a gameserver instance UDP port would be useful. I'd seriously consider running all gameserver traffic through a Fabio instance running locally on a host.
Another use case is sending telemetry to statsd relays/servers (over UDP 8125, for instance). Being able to provide high availability for those would make me sleep better at night ;)
Hey @magiconair was this still something you were interested in doing? I would really like this feature. Perhaps if you still don't have time I might find some time to work on it. I don't have a lot of experience with Go but I could try if you could point me in the right direction. Thank you :)
+1 would like to load balance UDP for Syslog, DNS, Kerberos.
Another use-case: I'm hoping to migrate a Minetest Server to my new Nomad + Consul Raspberry Pi cluster, which uses UDP.
+1 for UDP support
I just ran into this issue when I encountered my first service that uses UDP. My use-case was a Terraria server, which needs port 7777 on both TCP and UDP. The initial connection seems to be made using TCP, but then it stops there, unless I'm not routing it through fabio.
If nobody is working on this yet, I'd like to give it a try
I doubt anyone's working on it at the moment - it would be awesome if you could give it a go @mier85!
Would like UDP support for Consul + AlertManager mesh.
Forked...need time. @mier85 is maybe faster?
Any news?
@CRASH-Tech I think the answer is that it won't be happening unless someone steps up and implements it
You don't have to ask - I'd just work on it. If you finish the implementation and make a PR and that PR goes ignored for more than a week or two, I'd fork
Yeah, I had thought about this a while ago. Shouldn't be too difficult. What's your use case?