Preemptive Cloud Run на GKE - PullRequest
       38

Preemptive Cloud Run на GKE

0 голосов
/ 07 января 2020

Возможно ли создать Cloud Run на кластере Kubernetes GKE (Anthos) с узлами Preemptible, и если это так, вы также можете включить плагины, такие как gke-node-pool-shiftter и gke-pvm-killer, или это будет мешать работе облака запускать такие действия, как автоматическое масштабирование модулей

https://hub.helm.sh/charts/rimusz/gke-node-pool-shifter

https://hub.helm.sh/charts/rimusz/gke-pvm-killer

1 Ответ

2 голосов
/ 07 января 2020

Технически Cloud Run на кластере GKE все еще остается кластером GKE в конце дня, поэтому он может иметь упреждающие пулы узлов.

Однако некоторые компоненты Knative Serving, такие как activator и autoscaler находятся в горячем пути обслуживания запросов. Вы должны удостовериться, что они не попадают в выгружаемый пул. Точно так же controller и webhook в некоторой степени играют центральную роль в жизненном цикле плоскости управления объектов Knative API, поэтому вам также необходимо убедиться, что эти модули находятся в не выгружаемом пуле узлов.

Во-вторых, Knative (на данный момент) не поддерживает селекторы узлов или портит / допуски: https://knative.tips/pod-config/node-affinity/ Он просто не дает вам способа указать nodeSelector или другие сходные поля в шаблоне Pod объекта Knative Service. .

Следовательно, вам нужно найти способ (например, реализовать свой мутантный веб-крюк для входа в модули, созданные в Knative), чтобы добавлять такие селекторы узлов в Pod, что довольно утомительно.

Однако, комбинируя портовые узлы и допуски pd, я думаю, что вы можете получить системные компоненты Knative в конечном итоге в невыгружаемый пул, а все остальное (например, созданные в модуле Knative) в других узлах (т.е. вытесняемых узлах).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...