Horizontal Pod Autoscaler - Busy Runner Scheme · Pull Request #223 · actions/actions-runner-controller
Providing an alternative to the current hpa scheme. The TotalNumberOfQueuedAndInProgressWorkflowRuns scheme requires that the hpa be aware of all the repositories that are currently managed by actions - this doesnt scale well in larger organizations where multiple teams are enrolling into actions - they must be aware that the hpa spec be updated.
The PercentageRunnersBusy scheme is a simple autoscaling scheme that retrieves all action runners from github, finds the subset of runners that exist in the hpa namespace by comparing it against the runner resources, and then evaluates the scale up / scale down condition.
This scheme also addresses the issue where an organization has various environments + multiple hpas - where each hpa should be responsible for scaling only the runners the shared namespace.
