Kubernetes Расширение стручков по времени триггера - PullRequest
0 голосов
/ 10 сентября 2018

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

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

Ответы [ 2 ]

0 голосов
/ 11 сентября 2018

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

https://github.com/balchua/boink

0 голосов
/ 10 сентября 2018

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

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

...