Администрирование кластера Dask.distributed
Я настраиваю кластер Dask Python на работе (30 машин, в среднем по 8 ядер). Люди используют только часть мощности своего процессора, поэтому dask-workers
будет работать на фоне с низким приоритетом. Все работники слушают dask-scheduler
на моем главном узле. Он отлично работает, если только я использую его, однако он будет использоваться несколькими людьми одновременно, поэтому я должен иметь возможность администрировать этот кластер:
- Аутентификация пользователей, отклонение неизвестных
- Определите, кто представил какие работы
- Ограничить количество отправленных заданий на пользователя
- Ограничить тайм-аут для расчета на работу
- Убить любую работу в качестве администратора
dask.distributed из коробки предоставляет немного функциональности, описанной выше. Не могли бы вы посоветовать какое-нибудь решение (может быть гибрид Dask + что-то)?
1 ответ
Обычно люди используют диспетчер кластеров, такой как Kubernetes, Yarn, SLURM, SGE, PBS или что-то еще. Эта система обрабатывает аутентификацию пользователей, управление ресурсами и так далее. Затем пользователь использует один из проектов Dask-kubernetes, Dask-yarn, Dask-jobqueue для создания собственного краткосрочного планировщика и рабочих в кластере по мере необходимости.