Я пытаюсь создать активный пассивный кластер в GCP, и я собираюсь использовать для этого собственный балансировщик нагрузки. Например, я хочу, чтобы балансировщик нагрузки перенаправлял трафик только на определенный набор узлов (резервные узлы), только если основной набор узлов (активные узлы) не прошел проверку работоспособности. Я бы подумал, что это возможно, но я не вижу никакого варианта, который позволил бы мне добиться этого. Насколько я могу судить, возможна только циклическая балансировка нагрузки, или я что-то упускаю?
Я не нашел в GCP такой возможности. Однако при использовании LB HTTP я могу думать только о двух наборах IMG и настройке установка мощности в бэкэнде. Таким образом, один IMG будет иметь 100% для получения всех запросов, а второй IMG будет установлен на 0%.
Вам нужно будет следить за проверкой работоспособности IMG или экземпляра, и если некоторые из них неисправны, вы можете изменить настройки емкости для обеих групп с помощью вызовов API. Вам понадобится задание cron для мониторинга и сценарий, который будет запускать вызов API.
В качестве альтернативы вы можете попробовать установить самовосстановление, поэтому неисправный экземпляр будет восстановлен, так как это лучший и простой способ восстановить неисправные экземпляры.
Если это не то, что вы ищете, вы можете отправить запрос функции Вот для балансировки нагрузки.
Балансировка нагрузки с циклическим перебором используется только для вычислительных экземпляров, находящихся в одной группе управляемых экземпляров (MIG). Если вы хотите контролировать режимы балансировки, вам необходимо поместить активные и пассивные узлы в отдельные узлы и регионы / зоны. Опять же, зачем беспокоиться об активных / пассивных узлах, если вы можете сделать свои активные узлы высокодоступными, развернув их в нескольких зонах и регионах? GLB выберет исправные активные узлы.
Если вы думаете, что вам все еще нужны активные / пассивные узлы, насколько мне известно, GCP не предоставляет точную функцию, которую вы запрашиваете, но я думаю, что вы можете приблизиться, настроив balancingMode
и capacity setting
свойство ресурса серверных сервисов GLB. Например, вы можете установить использование ЦП и емкость резервных узлов почти на ноль (но не на ноль) и установить их на 100% на активных узлах. Таким образом, балансировщик нагрузки будет отправлять весь или большую часть трафика на активные узлы, и только при выходе из строя активных узлов он будет направлять трафик на пассивные узлы. Поскольку GLB также имеет географическую привязку, вы можете разместить свои активные узлы в MIG ближе к клиентам.
Ссылка - Документация по глобальному балансировщику нагрузки HTTP Google