
Estamos intentando conectar nuestra aplicación estándar GAE a través de una de nuestras VPC que se utiliza para conectarnos a nuestros clientes VPN. VPC (rsvpn) ejecuta openvpn como cliente y se conecta a nuestra subred OpenVPN. Está configurado con ip_forward y está configurado para reenviar todos los paquetes entrantes destinados a 172.16.0.0/24 hasta tun0. El enrutamiento global de las redes VPC está configurado para enrutar 172.16.0.0/24 a través de rsvpn. Cuando me subo a otra VPC, puedo hacer ping a la subred VPN como se esperaba. Sin embargo, los paquetes de la aplicación GAE destinados a 172.16.0.0/24 no se enrutan a través de rsvpn.
Investigamos un poco y descubrimos que probablemente necesitábamos implementar la aplicación a través de gcloud beta, utilizando vpc_access_connector, así que también hicimos esto. vpc_access_connector se configuró con la subred 10.8.0.0/28 y la aplicación se configuró con la configuración adecuada. Vuelva a implementar la aplicación y todavía no llega al servidor rsvpn.
Cuando miramos la configuración en ejecución de la aplicación, no vemos ninguna mención del vpc_access_connector, pero está claramente configurado en app.yaml.
Discutido con el soporte de Google. Confirman que nuestra configuración debe ser correcta y que la aplicación debe utilizar nuestras tablas de enrutamiento vpc. Lo están investigando actualmente.
Sin embargo, me pregunto si alguien podría arrojar algo de luz sobre esto. La documentación de Google no es sorprendente y encuentro que, de manera bastante consistente, a menudo es incorrecta. Escuché algunas referencias que podrían sugerir que vpc_access_connector solo puede funcionar en entornos flexibles, pero luego los documentos y el soporte de Google dicen que debería funcionar en estándar.
¿Alguien hizo que esta configuración funcionara?
Respuesta1
Nuestra solución terminó siendo agregar permisos de usuario de Compute Network al perfil que ejecuta la implementación. Desafortunadamente, este error de permisos no está registrado en nosotros, sino que es interno de Google. Esto pareció resolver todos los problemas que estábamos experimentando en el entorno estándar. También asegúrese de utilizargcloud beta app deploy