Как работает планировщик deis?

#deis

#deis

Вопрос:

Я просматриваю документацию deis и не уверен, как работает планировщик.

По сути, я хочу развертывать небольшие приложения. Моя идея состоит в том, чтобы иметь приложения разного размера в зависимости от объема памяти (64M, 128M, 256M и 512M).

Тогда у меня был бы кластер небольших машин (1 процессор, ~ 3 ГБ), и я хочу развернуть / отменить развертывание любого количества приложений, где у большинства из них будет только один экземпляр.

Итак, в этом случае мне нужен планировщик, который просматривает свободную память на каждом узле и развертывает приложение на узле с большим количеством доступных ресурсов (в данном случае на основе памяти).

Например, если у меня есть 2 ГБ, доступные для приложений, у меня может быть следующая балансировка:

 Node1: App1 (256M), App2 (256M), App3 (512M) => Total 1.5 GB
Node2: App4 (512M), App5 (128M), App6 (128M), App7 (256M), App8 (512M), App9 (256M) => Total  1.75 GB
 

Затем, если мне нужно развернуть приложение, которое будет потреблять 512 МБ, планировщик должен развернуть приложение в Node1.

Поэтому я хотел понять, может ли deis быть полезен для этого сценария.

Ответ №1:

По сути, Deis использует fleet в качестве планировщика. В настоящее время флот присваивает задание той машине, которая в кластере ответит первой, и не имеет представления о загрузке машины. Более разумное планирование является приоритетом проекта fleet, и по мере его улучшения улучшается и Deis.

Комментарии:

1. Спасибо. Похоже, нам нужно будет подождать с этим github.com/coreos/fleet/pull/237

2. Обновление год спустя: Флот не планирует планировать распределение ресурсов , поэтому Deis внедрили его самостоятельно .