Conexión de Azure Front Door Premium a una instancia de Azure API Management con Private Link (versión preliminar)
Este artículo le guía por los pasos necesarios para configurar una instancia de Azure Front Door Premium para conectarse de forma privada a Azure API Management mediante Azure Private Link.
Requisitos previos
Una cuenta de Azure con una suscripción activa. Cree una cuenta gratuita.
Azure PowerShell instalado localmente o Azure Cloud Shell.
Nota:
Se recomienda usar el módulo Azure Az de PowerShell para interactuar con Azure. Para comenzar, consulte Instalación de Azure PowerShell. Para más información sobre cómo migrar al módulo Az de PowerShell, consulte Migración de Azure PowerShell de AzureRM a Az.
Azure Cloud Shell
En Azure se hospeda Azure Cloud Shell, un entorno de shell interactivo que puede utilizar mediante el explorador. Puede usar Bash o PowerShell con Cloud Shell para trabajar con los servicios de Azure. Puede usar los comandos preinstalados de Cloud Shell para ejecutar el código de este artículo sin tener que instalar nada en su entorno local.
Para iniciar Azure Cloud Shell:
Opción | Ejemplo o vínculo |
---|---|
Seleccione Pruébelo en la esquina superior derecha de un bloque de código o de comandos. Solo con seleccionar Pruébelo no se copia automáticamente el código o comando en Cloud Shell. | |
Vaya a https://shell.azure.com o seleccione el botón Iniciar Cloud Shell para abrir Cloud Shell en el explorador. | |
Seleccione el botón Cloud Shell en la barra de menús de la esquina superior derecha de Azure Portal. |
Para usar Azure Cloud Shell:
Inicie Cloud Shell.
Seleccione el botón Copiar en un bloque de código (o bloque de comandos) para copiar el código o comando.
Pegue el código o comando en la sesión de Cloud Shell. Para ello, seleccione Ctrl+Mayús+V en Windows y Linux, o bien seleccione Cmd+Mayús+V en macOS.
Seleccione Intro para ejecutar el código o comando.
Tener una instancia de Azure API Management en funcionamiento. Para más información sobre cómo crear una instancia de API Management, consulte Creación de una nueva instancia de Azure API Management mediante PowerShell.
Tener un perfil de Azure Front Door Premium en funcionamiento y un punto de conexión. Para más información sobre cómo crear un perfil de Azure Front Door, consulte Creación de una instancia de Front Door: PowerShell.
Creación de un grupo de origen y adición de la instancia de API Management como origen
Use New-AzFrontDoorCdnOriginGroupHealthProbeSettingObject para crear un objeto en memoria para almacenar la configuración del sondeo de estado.
$healthProbeSetting = New-AzFrontDoorCdnOriginGroupHealthProbeSettingObject ` -ProbeIntervalInSecond 60 ` -ProbePath "/" ` -ProbeRequestType GET ` -ProbeProtocol Http
Use New-AzFrontDoorCdnOriginGroupLoadBalancingSettingObject para crear un objeto en memoria para almacenar la configuración de equilibrio de carga.
$loadBalancingSetting = New-AzFrontDoorCdnOriginGroupLoadBalancingSettingObject ` -AdditionalLatencyInMillisecond 50 ` -SampleSize 4 ` -SuccessfulSamplesRequired 3
Ejecute New-AzFrontDoorCdnOriginGroup para crear un grupo de origen que contenga la instancia de API Management.
$origingroup = New-AzFrontDoorCdnOriginGroup ` -OriginGroupName myOriginGroup ` -ProfileName myFrontDoorProfile ` -ResourceGroupName myResourceGroup ` -HealthProbeSetting $healthProbeSetting ` -LoadBalancingSetting $loadBalancingSetting
Use el comando New-AzFrontDoorCdnOrigin para agregar la instancia de API Management al grupo de origen.
New-AzFrontDoorCdnOrigin ` -OriginGroupName myOriginGroup ` -OriginName myAPIMOrigin ` -ProfileName myFrontDoorProfile ` -ResourceGroupName myResourceGroup ` -HostName myapim.azure-api.net ` -HttpPort 80 ` -HttpsPort 443 ` -OriginHostHeader myapim.azure-api.net ` -Priority 1 ` -PrivateLinkId /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myResourceGroup/providers/Microsoft.ApiManagement/service/myAPIM ` -SharedPrivateLinkResourceGroupId Gateway ` -SharedPrivateLinkResourcePrivateLinkLocation CentralUS ` -SharedPrivateLinkResourceRequestMessage 'Azure Front Door private connectivity request' ` -Weight 1000 `
Apruebe el punto de conexión privado
Ejecute get-AzPrivateEndpointConnection para recuperar el nombre de conexión del punto de conexión privado que necesita aprobación.
$PrivateEndpoint = Get-AzPrivateEndpointConnection -ResourceGroupName myResourceGroup -ServiceName myAPIM -PrivateLinkResourceType Microsoft.ApiManagement/service
Ejecute Approve-AzPrivateEndpointConnection para aprobar los detalles de conexión del punto de conexión privado. Use el Nombre valor de la salida del paso anterior para aprobar la conexión.
Get-AzPrivateEndpointConnection -Name $PrivateEndpoint.Name -ResourceGroupName myResourceGroup -ServiceName myAPIM -PrivateLinkResourceType Microsoft.ApiManagement/service
Completar la configuración de Azure Front Door
Use el comando New-AzFrontDoorCdnRoute para crear una ruta que asigne el punto de conexión al grupo de origen. Esta ruta reenvía las solicitudes del punto de conexión al grupo de origen.
# Create a route to map the endpoint to the origin group
$Route = New-AzFrontDoorCdnRoute `
-EndpointName myFrontDoorEndpoint `
-Name myRoute `
-ProfileName myFrontDoorProfile `
-ResourceGroupName myResourceGroup `
-ForwardingProtocol MatchRequest `
-HttpsRedirect Enabled `
-LinkToDefaultDomain Enabled `
-OriginGroupId $origingroup.Id `
-SupportedProtocol Http,Https
El perfil de Azure Front Door ahora es totalmente funcional después de completar el paso final.
Requisitos previos
Use el entorno de Bash en Azure Cloud Shell. Para más información, consulte Inicio rápido para Bash en Azure Cloud Shell.
Si prefiere ejecutar comandos de referencia de la CLI localmente, instale la CLI de Azure. Si utiliza Windows o macOS, considere la posibilidad de ejecutar la CLI de Azure en un contenedor Docker. Para más información, vea Ejecución de la CLI de Azure en un contenedor de Docker.
Si usa una instalación local, inicie sesión en la CLI de Azure mediante el comando az login. Siga los pasos que se muestran en el terminal para completar el proceso de autenticación. Para ver otras opciones de inicio de sesión, consulte Inicio de sesión con la CLI de Azure.
En caso de que se le solicite, instale las extensiones de la CLI de Azure la primera vez que la use. Para más información sobre las extensiones, consulte Uso de extensiones con la CLI de Azure.
Ejecute az version para buscar cuál es la versión y las bibliotecas dependientes que están instaladas. Para realizar la actualización a la versión más reciente, ejecute az upgrade.
Una cuenta de Azure con una suscripción activa. Cree una cuenta gratuita.
Un perfil de Azure Front Door Premium en funcionamiento y un punto de conexión. Vea Creación de una instancia de Front Door: CLI.
Una instancia de Azure API Management en funcionamiento. Consulte Creación de una nueva instancia de Azure API Management mediante la CLI de Azure.
Creación de un grupo de origen y adición de la instancia de API Management como origen
Ejecute az afd origin-group create para crear un grupo de origen.
az afd origin-group create \ --resource-group myResourceGroup \ --origin-group-name myOriginGroup \ --profile-name myFrontDoorProfile \ --probe-request-type GET \ --probe-protocol Http \ --probe-interval-in-seconds 60 \ --probe-path / \ --sample-size 4 \ --successful-samples-required 3 \ --additional-latency-in-milliseconds 50
Ejecute az afd origin create para agregar la instancia de API Management como origen al grupo de origen.
az afd origin create \ --enabled-state Enabled \ --resource-group myResourceGroup \ --origin-group-name myOriginGroup \ --origin-name myAPIMOrigin \ --profile-name myFrontDoorProfile \ --host-name myapim.azure-api.net \ --origin-host-header myapim.azure-api.net \ --http-port 80 \ --https-port 443 \ --priority 1 \ --weight 500 \ --enable-private-link true \ --private-link-location centralus \ --private-link-request-message 'Azure Front Door private connectivity request.' \ --private-link-resource /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myResourceGroup/providers/Microsoft.ApiManagement/service/myAPIM \ --private-link-sub-resource-type Gateway
Aprobación de la conexión del punto de conexión privado
Ejecute az network private-endpoint-connection list para obtener el nombre de la conexión de punto de conexión privado que necesita aprobación.
az network private-endpoint-connection list --name myAPIM --resource-group myResourceGroup --type Microsoft.ApiManagement/service
Ejecute az network private-endpoint-connection approve para aprobar la conexión de punto de conexión privado mediante el nombre del paso anterior.
az network private-endpoint-connection approve --id /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myResourceGroup/providers/Microsoft.ApiManagement/service/myAPIM/privateEndpointConnections/aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb
Completar la configuración de Azure Front Door
Ejecute az afd route create para crear una ruta que asigne el punto de conexión al grupo de origen. Esta ruta reenvía las solicitudes del punto de conexión al grupo de origen.
az afd route create \
--resource-group myResourceGroup \
--profile-name myFrontDoorProfile \
--endpoint-name myFrontDoorEndpoint \
--forwarding-protocol MatchRequest \
--route-name myRoute \
--https-redirect Enabled \
--origin-group myOriginGroup \
--supported-protocols Http Https \
--link-to-default-domain Enabled
El perfil de Azure Front Door ahora es totalmente funcional después de completar el paso final.
Pasos siguientes
Más información sobre el servicio Private Link con la cuenta de almacenamiento.