FleetAutoscaler with Counter policy trying to scale Fleet to negative replicas count
What happened: I had an issue with the fleet auto scaler trying to scale to -41 replicas. As I see, fleet auto scaler with Counter policy does not respect the game server's namespace when calculating the current game server count. I have different namespaces like qa1, qa2, etc., and each has a fleet my-fleet, where 1-2 game servers are launched. I did debug and saw that ListGameServersByFleetOwner returned all game servers in a cluster with fleet owner name my-fleet. I'm expecting that fleet and game servers are namespaced resources. I did the simple fix - we just added namespace name to fleet name, like my-fleet-qa1, my-fleet-qa2
What you expected to happen: Fleet is the namespaced resource. I need to be able to create a fleet with the same name in different namespaces with CountsAndLists policy.
How to reproduce it (as minimally and precisely as possible):
- Create 2 fleets with the same name in different namespaces.
- Create 2 fleet autoscaler with Counter policy
- Just autoscale them.
Anything else we need to know?:
Environment:
- Agones version: 1.42
- Kubernetes version (use
kubectl version): 1.29 - Cloud provider or hardware configuration: GKE
- Install method (yaml/helm): helm
- Troubleshooting guide log(s):
- Others:
Just checking because the title is a bit confusing - did the Fleet go to negative replica count because you ended up with multiple FleetAutoscalers pointing at the same Fleet?
Basically making sure this isn't two bugs, not just one.
I have multiple FleetAutoscaler with there own Fleet:
- namespace qa1 with fleetAutoscaler my-fleet-autoscaler with fleet my-fleet
- namespace qa2 with fleetAutoscaler my-fleet-autoscaler with fleet my-fleet ...
- namespace qa15 with fleetAutoscaler my-fleet-autoscaler with fleet my-fleet
When I'm testing autoscaler in any of qa*, I see that it's trying to go to negative numbers.
As a quick fix for that moment is to add namespace suffix to names:
- namespace qa1 with fleetAutoscaler my-fleet-autoscaler-qa1 with fleet my-fleet-qa1
- namespace qa2 with fleetAutoscaler my-fleet-autoscaler-qa2 with fleet my-fleet-qa2 ...
- namespace qa15 with fleetAutoscaler my-fleet-autoscaler-qa15 with fleet my-fleet-qa15
'This issue is marked as Stale due to inactivity for more than 30 days. To avoid being marked as 'stale' please add 'awaiting-maintainer' label or add a comment. Thank you for your contributions '
ooh, we should definitely fix this.
Will work on a fix !