Как установить частную связь между Google App Engine и Compute Engine? - PullRequest
2 голосов
/ 26 мая 2019

У меня есть веб-приложение / Api, которое в настоящее время работает на ресурсе Google App Engine. Поскольку вычисления API-интерфейса требуют значительных вычислительных ресурсов, я передал вычислительную часть управляемой автоматически масштабируемой группе Google Compute Engine с балансировщиком нагрузки HTTP во внешнем интерфейсе (для поддержания единого IP-адреса и балансировки нагрузки между несколькими двигатели, которые нерестятся динамически).

В настоящее время я просто выполняю HTTP-вызов на IP-адрес балансировщика нагрузки из ядра приложения. Поскольку GAE и GCE находятся в одном и том же регионе, это, однако, кажется крайне неэффективным (я знаю, что механизм приложений и вычислительные механизмы все еще находятся в двух физически разделенных центрах обработки данных). Это также создает угрозу безопасности, так как я постоянно получаю звонки от случайных IP-ботов, пытающихся использовать потенциальные лазейки в безопасности. Кроме того, я проверяю действительность токенов API только на уровне ядра приложения, так как не хочу предоставлять доступ к базе данных пользователя для механизма вычислений (по соображениям безопасности), так что это означает, что между механизмом приложения и механизмом вычислений проверка не выполняется , так что последний отвечает на все звонки, которые он получает.

Есть ли способ установить частную связь между ядром приложения и облачным движком?

Моя цель состоит в том, чтобы не открывать GCE для всего Интернета, учитывая, что он принимает звонки только с одного IP-адреса / ресурса

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

Другие креативные идеи приветствуются!

1 Ответ

5 голосов
/ 26 мая 2019

Похоже, что Бессерверный доступ к VPC может быть потенциальным решением.Из обзора взято следующее:

Бессерверный доступ к VPC позволяет подключаться из стандартной среды App Engine и облачных функций непосредственно к вашей сети VPC.Это соединение позволяет вашим приложениям стандартной среды App Engine и облачным функциям получать доступ к ресурсам в вашей сети VPC через внутренние (частные) IP-адреса.Использование внутренних IP-адресов увеличивает задержку обмена данными между вашими службами Google Cloud Platform и позволяет не предоставлять внутренние ресурсы общедоступному Интернету.

Бессерверный доступ к VPC только позволяет вашему приложению или функции отправлять запросы ресурсам в вашей сети VPC иполучать ответы на эти запросы.Связь в обратном направлении, когда виртуальная машина инициирует запрос к приложению или функции, требует, чтобы вы использовали публичный адрес приложения или функции.

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