-
Notifications
You must be signed in to change notification settings - Fork 831
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fleet autoscaler with "List" policy throws an error if configured with a fleet with no replicas #3943
Comments
@igooch this seems like it's in your wheelhouse? I'm wondering if there isn't a replica count, there are no count and/or list values set in the status values? |
Oh yep, we when implementing this we made the assumption that the Fleet can't scale to 0 replicas, so it also can't scale from 0 replicas. Currently the list / counter fleet status goes from game server status -> game server set aggregation -> fleet status aggregation. So, no game servers, no aggregation. We could possibly add in a line to create the status from the somewhere in the replica set controller to create empty lists / counters with 0 capacity if there are no game servers on that game server set: agones/pkg/gameserversets/controller.go Lines 645 to 649 in a348312
|
@ashutosji can you take a look and see if this would just require a change to the game server set controller, or if it would also require a change to the autoscaler as well? |
Hi @igooch ,
How can we get list of keys from Fleet spec? is the above approach seems reasonable. |
@kamaljeeti approach seems reasonable, below are some suggested edits, where
The question is still outstanding on whether or not there are any "gotchyas" with the fleet autoscaler. I believe this will work, but we'll want to thoroughly test it. |
What happened:
If we setup a fleet without defining "replicas" and setup an autoscaler with "List" policy, the autoscaler throws the following error.
What you expected to happen:
The fleet autoscaler should be able to determine the desired number of replicas even if there is no replicas present.
How to reproduce it (as minimally and precisely as possible):
Setup a fleet with no replicas defined, and a list based autoscaler for the fleet.
Ex.
Below is the describe output of the fleet autoscaler
Anything else we need to know?:
This is crucial for agones to be used with "Flux CD" (https://fluxcd.io/) and probably other gitops based tools.
Environment:
kubectl version
): 1.27.1The text was updated successfully, but these errors were encountered: