Migración a La Cumbre de innovación:
Obtenga información sobre cómo migrar y modernizar a Azure puede aumentar el rendimiento, la resistencia y la seguridad de su empresa, lo que le permite adoptar completamente la inteligencia artificial.Regístrese ahora
Este explorador ya no se admite.
Actualice a Microsoft Edge para aprovechar las características y actualizaciones de seguridad más recientes, y disponer de soporte técnico.
En este artículo se describe cómo conectar una aplicación a Azure SQL Managed Instance en varios escenarios de aplicación diferentes dentro de redes virtuales de Azure o entre ellas.
Hoy en día puede elegir entre varias opciones sobre cuándo y cómo hospedar la aplicación. Puede elegir alojar una aplicación en la nube mediante Azure App Service o algunas de las opciones integradas de Virtual Network de Azure, como Azure App Service Environment, Azure Virtual Machines y Virtual Machine Scale Sets. También podría elegir un enfoque de nube híbrida ("mixto") y mantener las aplicaciones en el entorno local. Sea cual sea la elección que elija, la aplicación puede conectarse a Azure SQL Managed Instance en varios escenarios de aplicación diferentes dentro de redes virtuales de Azure o entre ellas.
También puede habilitar el acceso a los datos a la instancia administrada desde fuera de una red virtual, por ejemplo, desde servicios multiinquilino de Azure, como Power BI y Azure App Service, o desde una red local no conectada a las redes virtuales a través de VPN. Para lograr estos escenarios y similares, consulte Configuración del punto de conexión público en Azure SQL Managed Instance.
Conexión desde dentro de la misma red virtual
La conexión de una aplicación dentro de la misma red virtual que Instancia administrada de SQL es el escenario más sencillo. Las máquinas virtuales dentro de la red virtual pueden conectarse directamente entre sí si se encuentran en subredes diferentes. Esto significa que, para conectar una aplicación que está en un entorno de App Service Environment o una máquina virtual, solo hace falta configurar la cadena de conexión para que apunte al punto de conexión de red virtual local.
Conexión desde dentro de una red virtual diferente
La conexión de una aplicación cuando reside en una red virtual diferente a la de SQL Managed Instance requiere que la aplicación obtenga acceso primero a la red virtual donde se implementa SQL Managed Instance o a la propia instancia de SQL Managed Instance. Las redes virtuales no tienen por qué estar en la misma suscripción.
Hay tres opciones para conectarse a SQL Managed Instance en una red virtual diferente:
De las tres, los puntos de conexión privados son la opción más segura y económica para los recursos porque:
solo exponen la instancia de SQL Managed Instance de su red virtual
solo permiten conectividad unidireccional
solo requieren una dirección IP en la red virtual de la aplicación
Si los puntos de conexión privados no pueden cumplir completamente los requisitos del escenario, considere la posibilidad de emparejamiento de redes virtuales en su lugar. El emparejamiento usa la red troncal de Azure, por lo que no hay ninguna penalización de latencia notable para la comunicación entre los límites de la red virtual. El emparejamiento de redes virtuales se admite entre redes en todas las regiones (emparejamiento de red virtual global), mientras que las instancias hospedadas en subredes creadas antes del 22 de septiembre de 2020 solo admiten el emparejamiento dentro de su región.
Conexión desde el entorno local
Puede conectar la aplicación local al punto de conexión local de la red virtual de SQL Managed Instance. Para hacerlo desde el entorno local, debe establecer una conexión de sitio a sitio entre la aplicación y la red virtual de Instancia administrada de SQL. Si el acceso de solo datos a la instancia administrada es suficiente, puede conectarse a ella desde fuera de una red virtual a través de un punto de conexión público. Consulte Configuración del punto de conexión público en Azure SQL Managed Instance para más información.
Hay dos opciones para conectar una aplicación local a una red virtual de Azure:
Si ha establecido una conexión local a Azure correctamente y no puede establecer una conexión a SQL Managed Instance, compruebe si el firewall tiene abierta la conexión saliente en el puerto 1433 de SQL, así como el intervalo de puertos 11000-11999 para el redireccionamiento.
Conexión del cuadro de desarrollador
También es posible conectar el cuadro de desarrollador a Instancia administrada de SQL. Para acceder al servicio desde su cuadro de desarrollador a través de una red virtual, primero debe establecer una conexión entre el cuadro de desarrollador y la red virtual de SQL Managed Instance. Para ello, configure una conexión de punto a sitio a una red virtual mediante la autenticación de certificados de Azure nativa. Para obtener más información, consulte Configuración de una conexión de punto a sitio para conectarse a Azure SQL Managed Instance desde un equipo local.
Otro escenario común es el lugar donde se instala una puerta de enlace de VPN en una red virtual independiente (y quizás una suscripción),-red tipo spoke, en relación con la que hospeda SQL Managed Instance (red central). La conectividad a SQL Managed Instance desde la red radial se configura a través de una de las opciones enumeradas en Conexión desde una red virtual diferente: puntos de conexión privados, emparejamiento de VNet o puerta de enlace de red virtual a red virtual.
En el diagrama de arquitectura de ejemplo siguiente se muestra el emparejamiento de VNet:
Si va a emparejar redes en estrella tipo hub-and-spoke, asegúrese de que VPN Gateway vea las direcciones IP de la red del centro de conectividad. Para ello, realice los siguientes cambios en Configuración de emparejamiento:
En la red virtual que hospeda la puerta de enlace de VPN, vaya a Emparejamientos, busque la conexión de red virtual emparejada de SQL Managed Instance y seleccione Permitir tránsito de puerta de enlace.
En la red virtual que hospeda SQL Managed Instance (red central), vaya a Emparejamientos, busque la conexión de red virtual emparejada de la puerta de enlace de VPN y seleccione Usar puertas de enlace remotas.
Un caso especial de conexión de Azure App Service a SQL Managed Instance es cuando se integra Azure App Service en una red emparejada a una red virtual de Instancia administrada de SQL. Ese caso requiere la siguiente configuración:
La red virtual de Instancia administrada de SQL no debe tener una puerta de enlace.
La red virtual de Instancia administrada de SQL debe tener establecida la opción Use remote gateways.
La red virtual emparejada debe tener establecida la opción Allow gateway transit.
Este escenario se ilustra en el diagrama siguiente:
Nota
La característica de integración de la red virtual no integra una aplicación con una red virtual que tenga una puerta de enlace de ExpressRoute. Incluso si la puerta de enlace de ExpressRoute está configurada en modo de coexistencia, la integración de la red virtual no funcionará. Si necesita acceder a recursos mediante una conexión de ExpressRoute, puede usar App Service Environment, que funciona en la red virtual.
Para solucionar problemas de conectividad, revise lo siguiente:
Si no puede conectarse a Instancia administrada de SQL desde una máquina virtual de Azure dentro de la misma red virtual, pero una subred diferente, compruebe que no haya un grupo de seguridad de red establecido en la subred de la máquina virtual que bloquee el acceso. Además, abra la conexión saliente en el puerto 1433 de SQL, así como los puertos del intervalo 11000-11999, ya que son necesarios para conectarse mediante redireccionamiento dentro del límite de Azure.
Asegúrese de que la propagación de las rutas de puerta de enlace está deshabilitada para la tabla de rutas asociada a la red virtual.
Si utiliza VPN de punto a punto, compruebe la configuración en Azure Portal para ver si detecta números de entrada/salida. Los números distintos de cero indican que Azure enruta el tráfico hacia y desde un entorno local.
Compruebe que la máquina cliente (que ejecuta el cliente de VPN) tenga entradas de ruta para todas las redes virtuales a las que necesita acceso. Las rutas se almacenan en %AppData%\Roaming\Microsoft\Network\Connections\Cm\<GUID>\routes.txt.
Como se muestra en esta imagen, hay dos entradas para cada red virtual implicada y una tercera entrada para el punto de conexión de VPN que está configurado en el portal.
Otra manera de comprobar las rutas es mediante el comando siguiente. La salida muestra las rutas a las diversas subredes:
Si usa el emparejamiento de red virtual para conectar una aplicación hospedada por Azure App Service, y la red virtual de Instancia administrada de SQL tiene un intervalo de direcciones IP públicas, asegúrese de que la configuración de la aplicación hospedada permita que el tráfico saliente se enrute a redes con direcciones IP públicas. Siga las instrucciones que se indican en Integración con red virtual regional.
Versiones recomendadas de controladores y herramientas
Aunque las versiones anteriores pueden funcionar, en la tabla siguiente se enumeran las versiones mínimas recomendadas de las herramientas y controladores para conectarse a SQL Managed Instance:
Administre una infraestructura de base de datos de SQL Server para bases de datos relacionales locales e híbridas en la nube mediante las ofertas de bases de datos relacionales PaaS de Microsoft.
Obtenga información sobre la arquitectura de comunicación y conectividad de Azure SQL Managed Instance y sobre la forma en la que los componentes dirigen el tráfico de una instancia administrada.
En este artículo se explica la arquitectura de conectividad de Azure SQL Database para las conexiones de bases de datos desde dentro o desde fuera de Azure.
Conéctese a Instancia administrada de Azure SQL mediante SQL Server Management Studio (SSMS) con una conexión de punto a sitio desde un equipo cliente local.