The ideal way to keep scaling sentry on on-premise is autoscale based on the request load. While the web processes, workers are horizontally scalable, celery beat scheduler is not.
On kubernetes, A single pod contains one web instance, fixed number of worker instances and a celery beat scheduler.
If we add replicas to pods based on request load. We have to run multiple celery beat schedulers unless we split application to web and worker pods which is undesirable.
Multiple celery beat instances are at the risk of sending duplicate tasks. redbeat solves few optimization problems and prevents multiple instances of celery beat from sending duplicate tasks.
Redbeat is by heroku. https://github.com/sibson/redbeat