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
Interactive Wheel Spinner Tool – Add Choices and Randomly Pick a Winner
Raffle Ticket Generator
Instant Online Dice Roller
Sudoku Solver
Tambola Number Generator
Tambola Ticket Generator