Kubernetes Масштабирование подов по триггеру на основе времени

У меня есть сервер, работающий на Kubernetes, для обработки почасовых заданий. Подумайте об использовании службы для предоставления подов и об использовании (внешнего) задания cron для работы с балансировщиком нагрузки, чтобы кубернеты могли автоматически масштабироваться для обработки более высокой нагрузки по мере необходимости. Однако при реализации, если задание cron отправляет, скажем, 100 запросов одновременно, в то время как есть только 1 модуль, весь трафик будет идти в этот модуль, тогда как впоследствии развернутые модули по-прежнему не будут иметь никакого трафика для обработки.

Как я могу обойти эту проблему? Могу ли я сначала масштабировать поды, используя задание cron, прежде чем делать запросы? Или мне следует делать запросы с задержкой по времени, чтобы дать стручкам время развернуться? Или другие предложения также приветствуются!


person jlyh    schedule 10.09.2018    source источник


Ответы (2)


Если вы ищете мгновенное масштабирование в бессерверном стиле, используйте что-нибудь вроде https://github.com/knative/ может быть чем-то, что вы можете использовать поверх Kubernetes / GKE.

Помимо этого, единственный способ масштабировать поды в Kubernetes сегодня - это горизонтальный автомат масштабирования подов, который будет смотреть на средние показатели ЦП / памяти (а если вы используете GKE, он может использовать настраиваемые метрики Stackdriver, которые вы можете открыть из ваше приложение с помощью Prometheus и т. д.).

person Ahmet Alp Balkan    schedule 10.09.2018

Я написал простое клиентское приложение на основе go, которое вы можете соединить с CronJob для масштабирования развертывания. Вы можете черпать из него вдохновение и писать самостоятельно или просто использовать. Надеюсь, это поможет.

https://github.com/balchua/boink

person Bal Chua    schedule 11.09.2018
comment
Спасибо @Bal Chua! Похоже, подход, который я искал, попробую gcp kubernetes apis, спасибо! - person jlyh; 11.09.2018
comment
Более чем счастлив, если эта штука поможет. Я тоже могу принимать PR. - person Bal Chua; 11.09.2018