Назад | Перейти на главную страницу

Google Cloud Load Balancer напрямую в облачную функцию?

Я пытаюсь отправить трафик из Балансировщик нагрузки Google Cloud (LB) прямо в Облачная функция.

Функция My Cloud имеет HTTP URL trigger и если я нажимаю этот URL-адрес в браузере, он работает, поэтому все, что мне нужно, это правило балансировщика нагрузки для прокси-сервера этого URL-адреса.

Итак, настройка будет такой:

Load Balancer -> Cloud Function -> Cloud Storage

Однако, глядя на конфигурацию бэкэнда LB, кажется, что единственными разрешенными параметрами являются либо служба (например, виртуальная машина), либо сегмент (например, облачное хранилище):

снимок экрана конфигурации балансировщика нагрузки

Я что-то упустил или просто нет возможности отправить трафик напрямую из Cloud Load Balancer в Cloud Function?

Я считаю, что подход, описанный в вашем вопросе, - это то, что невозможно сделать. Насколько я понял, вы хотите обслуживать статический веб-сайт, и если какие-либо файлы будут переименованы / перемещены, вы хотите, чтобы облачная функция управляла маршрутизацией.

Помимо триггеров Http, облачные функции предлагают Триггер облачного хранилища, которые позволяют действовать в зависимости от поведения корзины облачного хранилища. Таким образом, всякий раз, когда происходит изменение в ведре, содержащем все статические файлы, вы можете действовать в соответствии с ним и использовать REST backendServices и / или правила пересылки для изменения конфигураций балансировщика нагрузки и настройки любого существующего статического файла (ов) для правильной маршрутизации и маршрутизации всех остальных URL-адресов в статический файл 301 по умолчанию.

Надеюсь это поможет.

Для будущих читателей с июля 2020 года балансировщик нагрузки HTTPS теперь может обрабатывать маршрутизацию к Cloud Function, Cloud Run и AppEngine. Смотрите ниже объявление от Google:

https://cloud.google.com/blog/products/networking/better-load-balancing-for-app-engine-cloud-run-and-functions