Google-appengine-standard — маршрутизация через vpc_access_connector

Google-appengine-standard — маршрутизация через vpc_access_connector

Мы пытаемся подключить наше стандартное приложение GAE через один из наших VPC, который используется для подключения к нашим VPN-клиентам. VPC (rsvpn) запускает openvpn в качестве клиента, подключаясь к нашей подсети OpenVPN. Он настроен с помощью ip_forward и настроен на пересылку всех входящих пакетов, предназначенных для 172.16.0.0/24, через tun0. Глобальная маршрутизация сетей VPC настроена на маршрутизацию 172.16.0.0/24 через rsvpn. Когда я подключаюсь к другому VPC, я могу выполнить ping в подсеть VPN, как и ожидалось. Однако пакеты приложения GAE, предназначенные для 172.16.0.0/24, не маршрутизируются через rsvpn.

Мы немного покопались и обнаружили, что нам, вероятно, нужно развернуть приложение через gcloud beta, используя vpc_access_connector, поэтому мы сделали это. vpc_access_connector настроен с подсетью 10.8.0.0/28, и приложение настроено с соответствующей конфигурацией. Повторно разворачиваем приложение, и оно все еще не попадает на сервер rsvpn.

Если посмотреть на текущую конфигурацию приложения, то мы не увидим упоминания vpc_access_connector, но он явно настроен в app.yaml.

Обсуждалось с поддержкой Google. Они подтверждают, что наша настройка должна быть правильной и что приложение должно использовать наши таблицы маршрутизации vpc. В настоящее время они изучают это.

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

Кто-нибудь заставлял эту установку работать?

решение1

Наше решение в конечном итоге заключалось в добавлении разрешений Compute Network User в профиль, выполняющий развертывание. К сожалению, эта ошибка разрешений не выводится на нас, а является внутренней для Google. Это, по-видимому, решило все проблемы, с которыми мы столкнулись в стандартной среде. Также обязательно используйтеgcloud beta app deploy

Связанный контент