Hey everyone! I'm trying to deploy the game Satisfactory on my Kubernetes cluster, but I'm hitting a wall when it comes to establishing a TCP/UDP connection to the server. I've got the YAML files from the developers' GitHub (which you can check out [here](https://github.com/wolveix/satisfactory-server/tree/main/cluster)).
Just to give you a quick background on my setup:
- **OS**: Arch Linux
- **Kubernetes**: Vanilla 1.32.3
- **CNI**: Calico
- **LoadBalancer**: MetalLB
- **KubeProxyConfig**: Mode: ipvs
I've deployed the service exactly as described in the GitHub repository, but I can't get a connection. When I switch the service type from LoadBalancer to NodePort and use the host IP, I can connect with telnet on the allocated port, but the NodePort isn't usable since it's outside the expected range for the game. The LoadBalancer setup isn't working either, because when I check services, my LoadBalancer gets an external IP, but I can't connect through telnet (getting 'No route to host').
Other similar applications, like ingress-nginx or gitea, are connecting just fine without issues. Any ideas on what might be going wrong?
4 Answers
Are you trying to connect from a different host than the one you're running the LoadBalancer on? That could be causing some issues. Make sure your firewall settings allow traffic on those ports as well!
I spent some time troubleshooting as well, and it turned out to be a simple issue on my end! I hadn't defined the IP address pool correctly via L2Advertisement, so the IP wasn’t published right, resulting in 'no route to host'. Once I fixed that in my YAML config, everything worked perfectly! Just a heads-up in case it's something similar for you.
I had a similar issue with a setup a while back! I switched to using `hostNetwork: true` in the pod spec which solved my connectivity problem right away. Since you're in a controlled VM environment, it might be worth a shot!
It sounds like you're dealing with a routing issue. Have you tried testing the connection from one of the cluster nodes directly? You could use `nc -z -v 192.168.179.252 7777` for TCP and `nc -z -v -u 192.168.179.252 7777` for UDP. I was skeptical about UDP as well, but it seemed to work fine with MetalLB in my experience!
Related Questions
Sudoku Solver
Tambola Number Generator
Tambola Ticket Generator
UK Bingo Card Generator
US Bingo Card Generator
Bingo Number Generator