Microsoft.Network frontDoors 2020-05-01
Definición de recursos de Bicep
El tipo de recurso frontDoors se puede implementar en:
- Grupos de recursos: consulte los comandos de implementación del grupo de recursos.
Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.
Formato de los recursos
Para crear un recurso Microsoft.Network/frontDoors, agregue el siguiente bicep a la plantilla.
resource symbolicname 'Microsoft.Network/frontDoors@2020-05-01' = {
name: 'string'
location: 'string'
tags: {
tagName1: 'tagValue1'
tagName2: 'tagValue2'
}
properties: {
backendPools: [
{
id: 'string'
name: 'string'
properties: {
backends: [
{
address: 'string'
backendHostHeader: 'string'
enabledState: 'string'
httpPort: int
httpsPort: int
priority: int
privateLinkAlias: 'string'
privateLinkApprovalMessage: 'string'
privateLinkLocation: 'string'
privateLinkResourceId: 'string'
weight: int
}
]
healthProbeSettings: {
id: 'string'
}
loadBalancingSettings: {
id: 'string'
}
}
}
]
backendPoolsSettings: {
enforceCertificateNameCheck: 'string'
sendRecvTimeoutSeconds: int
}
enabledState: 'string'
friendlyName: 'string'
frontendEndpoints: [
{
id: 'string'
name: 'string'
properties: {
hostName: 'string'
sessionAffinityEnabledState: 'string'
sessionAffinityTtlSeconds: int
webApplicationFirewallPolicyLink: {
id: 'string'
}
}
}
]
healthProbeSettings: [
{
id: 'string'
name: 'string'
properties: {
enabledState: 'string'
healthProbeMethod: 'string'
intervalInSeconds: int
path: 'string'
protocol: 'string'
}
}
]
loadBalancingSettings: [
{
id: 'string'
name: 'string'
properties: {
additionalLatencyMilliseconds: int
sampleSize: int
successfulSamplesRequired: int
}
}
]
routingRules: [
{
id: 'string'
name: 'string'
properties: {
acceptedProtocols: [
'string'
]
enabledState: 'string'
frontendEndpoints: [
{
id: 'string'
}
]
patternsToMatch: [
'string'
]
routeConfiguration: {
'@odata.type': 'string'
// For remaining properties, see RouteConfiguration objects
}
rulesEngine: {
id: 'string'
}
webApplicationFirewallPolicyLink: {
id: 'string'
}
}
}
]
}
}
Objetos RouteConfiguration
Establezca la propiedad @odata.type para especificar el tipo de objeto.
Para #Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration, use:
'@odata.type': '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration'
backendPool: {
id: 'string'
}
cacheConfiguration: {
cacheDuration: 'string'
dynamicCompression: 'string'
queryParameters: 'string'
queryParameterStripDirective: 'string'
}
customForwardingPath: 'string'
forwardingProtocol: 'string'
Para #Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration, use:
'@odata.type': '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration'
customFragment: 'string'
customHost: 'string'
customPath: 'string'
customQueryString: 'string'
redirectProtocol: 'string'
redirectType: 'string'
Valores de propiedad
frontDoors
Nombre | Descripción | Value |
---|---|---|
name | El nombre del recurso | string (obligatorio) Límite de caracteres: 5-64 Caracteres válidos: Caracteres alfanuméricos y guiones. Comience y termine con un carácter alfanumérico. El nombre del recurso debe ser único en Azure. |
ubicación | Ubicación del recurso | string |
etiquetas | Etiquetas del recurso. | Diccionario de nombres y valores de etiqueta. Consulte Etiquetas en plantillas. |
properties | Propiedades del Load Balancer de Front Door | FrontDoorProperties |
FrontDoorProperties
Nombre | Descripción | Valor |
---|---|---|
backendPools | Grupos de back-end disponibles para las reglas de enrutamiento. | BackendPool[] |
backendPoolsSettings | Configuración de todos los servidores back-endPool | BackendPoolsSettings |
enabledState | Estado operativo del equilibrador de carga de Front Door. Los valores permitidos son "Enabled" o "Disabled" | 'Deshabilitado' 'Habilitado' |
friendlyName | Un nombre descriptivo para frontDoor | string |
frontendEndpoints | Puntos de conexión de front-end disponibles para las reglas de enrutamiento. | FrontendEndpoint[] |
healthProbeSettings | Configuración del sondeo de mantenimiento asociada con esta instancia de Front Door. | HealthProbeSettingsModel[] |
loadBalancingSettings | Configuración de equilibrio de carga asociada con esta instancia de Front Door. | LoadBalancingSettingsModel[] |
routingRules | Reglas de enrutamiento asociadas a esta instancia de Front Door. | RoutingRule[] |
BackendPool
Nombre | Descripción | Value |
---|---|---|
id | Identificador del recurso. | string |
name | Nombre del recurso. | string |
properties | Propiedades del grupo de back-end de Front Door | BackendPoolProperties |
BackendPoolProperties
Nombre | Descripción | Valor |
---|---|---|
Backends | Conjunto de back-end para este grupo | Back-end[] |
healthProbeSettings | Configuración del sondeo de estado L7 para un grupo de back-end | SubResource |
loadBalancingSettings | Configuración de equilibrio de carga para un grupo de back-end | SubResource |
Back-end
Nombre | Descripción | Valor |
---|---|---|
address | Ubicación del servidor back-end (dirección IP o FQDN) | string |
backendHostHeader | Valor que se usará como el encabezado de host que se envía al servidor back-end. Si está en blanco o no especificado, este valor predeterminado es el host entrante. | string |
enabledState | Si desea habilitar el uso de este servidor back-end. Los valores permitidos son "Enabled" o "Disabled" | 'Deshabilitado' 'Habilitado' |
httpPort | Número de puerto TCP de HTTP. Debe estar entre 1 y 65535. | int |
httpsPort | Número de puerto TCP de HTTPS. Debe estar entre 1 y 65535. | int |
priority | Prioridad que se usará para el equilibrio de carga. Las prioridades más altas no se usarán para el equilibrio de carga si algún back-end de prioridad inferior es correcto. | int |
privateLinkAlias | Alias del recurso Private Link. Rellenar este campo opcional indica que este back-end es "Privado". | string |
privateLinkApprovalMessage | Mensaje personalizado que se va a incluir en la solicitud de aprobación para conectarse al Private Link | string |
privateLinkLocation | Ubicación del recurso Private Link. Solo es necesario si se rellena "privateLinkResourceId". | string |
privateLinkResourceId | Identificador de recurso del recurso Private Link. Rellenar este campo opcional indica que este back-end es "Privado". | string |
peso | Peso de este punto de conexión con fines de equilibrio de carga. | int |
SubResource
Nombre | Descripción | Value |
---|---|---|
id | Identificador del recurso. | string |
BackendPoolsSettings
Nombre | Descripción | Valor |
---|---|---|
enforceCertificateNameCheck | Si se debe aplicar la comprobación del nombre del certificado en las solicitudes HTTPS a todos los grupos de back-end. No hay ningún efecto en las solicitudes que no son HTTPS. | 'Deshabilitado' 'Habilitado' |
sendRecvTimeoutSeconds | Enviar y recibir tiempo de espera al reenviar la solicitud al back-end. Cuando se alcanza el tiempo de espera, se produce un error en la solicitud y se devuelve. | int |
FrontendEndpoint
Nombre | Descripción | Value |
---|---|---|
id | Identificador del recurso. | string |
name | Nombre del recurso. | string |
properties | Propiedades del punto de conexión de front-end | FrontendEndpointProperties |
FrontendEndpointProperties
Nombre | Descripción | Valor |
---|---|---|
hostName | El nombre de host de frontendEndpoint. Debe ser un nombre de dominio. | string |
sessionAffinityEnabledState | Si desea permitir la afinidad de sesiones en este host. Las opciones válidas son "Habilitado" o "Deshabilitado". | 'Deshabilitado' 'Habilitado' |
sessionAffinityTtlSeconds | INUSITADO. Se omitirá este campo. El TTL para usar en segundos para la afinidad de sesiones, si corresponde. | int |
webApplicationFirewallPolicyLink | Define la directiva de Web Application Firewall para cada host (si procede) | FrontendEndpointUpdateParametersWebApplicationFirewa... |
FrontendEndpointUpdateParametersWebApplicationFirewa...
Nombre | Descripción | Value |
---|---|---|
id | Identificador del recurso. | string |
HealthProbeSettingsModel
Nombre | Descripción | Value |
---|---|---|
id | Identificador del recurso. | string |
name | Nombre del recurso. | string |
properties | Propiedades de la configuración del sondeo de estado | HealthProbeSettingsProperties |
HealthProbeSettingsProperties
Nombre | Descripción | Valor |
---|---|---|
enabledState | Si se habilitan los sondeos de estado que se van a realizar en back-end definidos en backendPools. Los sondeos de estado solo se pueden deshabilitar si hay un único back-end habilitado en un único grupo de back-end habilitado. | 'Deshabilitado' 'Habilitado' |
healthProbeMethod | Configura qué método HTTP se va a usar para sondear los back-end definidos en backendPools. | 'GET' 'HEAD' |
intervalInSeconds | Número de segundos entre sondeos de estado. | int |
path | Ruta de acceso del sondeo de estado. El valor predeterminado es / | string |
protocol | Esquema de protocolo que se va a usar para este sondeo | 'Http' 'Https' |
LoadBalancingSettingsModel
Nombre | Descripción | Value |
---|---|---|
id | Identificador del recurso. | string |
name | Nombre del recurso. | string |
properties | Propiedades de la configuración de equilibrio de carga | LoadBalancingSettingsProperties |
LoadBalancingSettingsProperties
Nombre | Descripción | Valor |
---|---|---|
additionalLatencyMilliseconds | Latencia adicional en milisegundos para que los sondeos entren en el cubo de latencia más baja. | int |
sampleSize | El número de ejemplos que se deben tener en cuenta para tomar decisiones de equilibrio de carga | int |
successfulSamplesRequired | El número de muestras dentro del período de muestra que debe realizarse correctamente. | int |
RoutingRule
Nombre | Descripción | Value |
---|---|---|
id | Identificador del recurso. | string |
name | Nombre del recurso. | string |
properties | Propiedades de la regla de enrutamiento de Front Door | RoutingRuleProperties |
RoutingRuleProperties
Nombre | Descripción | Valor |
---|---|---|
acceptedProtocols | Esquemas de protocolo para que coincidan con esta regla | Matriz de cadenas que contiene cualquiera de: 'Http' 'Https' |
enabledState | Si desea habilitar el uso de esta regla. Los valores permitidos son "Enabled" o "Disabled" | 'Deshabilitado' 'Habilitado' |
frontendEndpoints | Puntos de conexión de front-end asociados a esta regla | SubResource[] |
patternsToMatch | Patrones de ruta de la regla. | string[] |
routeConfiguration | Referencia a la configuración de enrutamiento. | RouteConfiguration |
rulesEngine | Referencia a una configuración específica del motor de reglas que se aplicará a esta ruta. | SubResource |
webApplicationFirewallPolicyLink | Define la directiva de Web Application Firewall para cada regla de enrutamiento (si procede) | RoutingRuleUpdateParametersWebApplicationFirewallPol... |
RouteConfiguration
Nombre | Descripción | Valor |
---|---|---|
@odata.type | Establecimiento del tipo de objeto |
#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration #Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration (obligatorio) |
ForwardingConfiguration
Nombre | Descripción | Valor |
---|---|---|
@odata.type | '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration' (obligatorio) | |
backendPool | Referencia a BackendPool a la que se enruta esta regla. | SubResource |
cacheConfiguration | Configuración de almacenamiento en caché asociada a esta regla. | CacheConfiguration |
customForwardingPath | Ruta de acceso personalizada que se usa para reescribir las rutas de acceso de recursos coincidentes con esta regla. Déjela en blanco para usar la ruta de acceso entrante. | string |
forwardingProtocol | Protocolo que usará esta regla al reenviar el tráfico a los servidores back-end. | 'HttpOnly' 'HttpsOnly' 'MatchRequest' |
CacheConfiguration
Nombre | Descripción | Valor |
---|---|---|
cacheDuration | Duración durante la que se debe almacenar en caché el contenido. El formato permitido está en formato ISO 8601 (http://en.wikipedia.org/wiki/ISO_8601#Durations). HTTP requiere que el valor no sea superior a un año. | string |
dynamicCompression | Si se debe usar la compresión dinámica para el contenido almacenado en caché | 'Deshabilitado' 'Habilitado' |
queryParameters | parámetros de consulta para incluir o excluir (separados por comas). | string |
queryParameterStripDirective | Tratamiento de los términos de consulta de dirección URL al formar la clave de caché. | 'StripAll' 'StripAllExcept' 'StripNone' 'StripOnly' |
RedirectConfiguration
Nombre | Descripción | Valor |
---|---|---|
@odata.type | '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' (obligatorio) | |
customFragment | Fragmento que se va a agregar a la dirección URL de redireccionamiento. Fragment es la parte de la dirección URL que viene después de #. No incluya #. | string |
customHost | Host para redirigir. Deje vacío para usar el host entrante como host de destino. | string |
customPath | Ruta de acceso completa que se va a redirigir. La ruta de acceso no puede estar vacía y debe comenzar con /. Deje vacío para usar la ruta de acceso entrante como ruta de acceso de destino. | string |
customQueryString | Conjunto de cadenas de consulta que se van a colocar en la dirección URL de redireccionamiento. Establecer este valor reemplazaría cualquier cadena de consulta existente; deje vacío para conservar la cadena de consulta entrante. La cadena de consulta debe tener el formato {key}={value}. ¿La primera? y & se agregarán automáticamente, por lo que no los incluyan en el frente, sino que separe varias cadenas de consulta con &. | string |
redirectProtocol | Protocolo del destino al que se redirige el tráfico. | 'HttpOnly' 'HttpsOnly' 'MatchRequest' |
redirectType | El tipo de redireccionamiento que usará la regla al redirigir el tráfico. | 'Encontrado' 'Movido' 'PermanentRedirect' 'TemporaryRedirect' |
RoutingRuleUpdateParametersWebApplicationFirewallPol...
Nombre | Descripción | Value |
---|---|---|
id | Identificador del recurso. | string |
Plantillas de inicio rápido
Las siguientes plantillas de inicio rápido implementan este tipo de recurso.
Plantilla | Descripción |
---|---|
Creación de Azure Front Door delante de Azure API Management |
En este ejemplo se muestra cómo usar Azure Front Door como equilibrador de carga global delante de Azure API Management. |
Create a basic Front Door |
Esta plantilla crea una configuración básica de Front Door con un único back-end. |
Create Front Door with caching enabled for certain routes |
Esta plantilla crea una instancia de Front Door con almacenamiento en caché habilitado para la configuración de enrutamiento definida, por lo que almacena en caché los recursos estáticos de la carga de trabajo. |
Creación de una instancia de Front Door con varios back-end y grupos de back-end |
Esta plantilla crea una instancia de Front Door con equilibrio de carga configurado para varios back-end en un grupo de back-end y también entre grupos de back-end en función de la ruta de acceso url. |
Creación de una instancia de Front Door con redireccionamiento HTTP a HTTPS |
Esta plantilla crea una configuración de Front Door para el redireccionamiento HTTP a HTTPS. |
Adición de un dominio personalizado y un certificado administrado con Front Door |
Esta plantilla incorpora y protege un dominio personalizado con Front Door |
Adición de un dominio personalizado y un certificado personalizado con Front Door |
Esta plantilla incorpora y protege un dominio personalizado con Front Door con un certificado administrado por el cliente |
Control Health Probes for your backends on Front Door |
Esta plantilla actualiza Front Door para cambiar la configuración del sondeo de estado estableciendo la ruta de acceso del sondeo y también los intervalos en los que se enviarán los sondeos. |
Creación de Front Door con Active-Standby configuración |
Esta plantilla crea una instancia de Front Door que muestra el enrutamiento basado en prioridad para Active-Standby topología de aplicación. |
Configure Session Affinity for your Front Door host names |
Esta plantilla actualiza una instancia de Front Door para habilitar la afinidad de sesión para el host de front-end, por lo que envía tráfico posterior desde la misma sesión de usuario al mismo back-end. |
Definición de recursos de plantilla de ARM
El tipo de recurso frontDoors se puede implementar en:
- Grupos de recursos: consulte los comandos de implementación del grupo de recursos.
Para obtener una lista de las propiedades modificadas en cada versión de api, consulte registro de cambios.
Formato de los recursos
Para crear un recurso Microsoft.Network/frontDoors, agregue el siguiente json a la plantilla.
{
"type": "Microsoft.Network/frontDoors",
"apiVersion": "2020-05-01",
"name": "string",
"location": "string",
"tags": {
"tagName1": "tagValue1",
"tagName2": "tagValue2"
},
"properties": {
"backendPools": [
{
"id": "string",
"name": "string",
"properties": {
"backends": [
{
"address": "string",
"backendHostHeader": "string",
"enabledState": "string",
"httpPort": "int",
"httpsPort": "int",
"priority": "int",
"privateLinkAlias": "string",
"privateLinkApprovalMessage": "string",
"privateLinkLocation": "string",
"privateLinkResourceId": "string",
"weight": "int"
}
],
"healthProbeSettings": {
"id": "string"
},
"loadBalancingSettings": {
"id": "string"
}
}
}
],
"backendPoolsSettings": {
"enforceCertificateNameCheck": "string",
"sendRecvTimeoutSeconds": "int"
},
"enabledState": "string",
"friendlyName": "string",
"frontendEndpoints": [
{
"id": "string",
"name": "string",
"properties": {
"hostName": "string",
"sessionAffinityEnabledState": "string",
"sessionAffinityTtlSeconds": "int",
"webApplicationFirewallPolicyLink": {
"id": "string"
}
}
}
],
"healthProbeSettings": [
{
"id": "string",
"name": "string",
"properties": {
"enabledState": "string",
"healthProbeMethod": "string",
"intervalInSeconds": "int",
"path": "string",
"protocol": "string"
}
}
],
"loadBalancingSettings": [
{
"id": "string",
"name": "string",
"properties": {
"additionalLatencyMilliseconds": "int",
"sampleSize": "int",
"successfulSamplesRequired": "int"
}
}
],
"routingRules": [
{
"id": "string",
"name": "string",
"properties": {
"acceptedProtocols": [ "string" ],
"enabledState": "string",
"frontendEndpoints": [
{
"id": "string"
}
],
"patternsToMatch": [ "string" ],
"routeConfiguration": {
"@odata.type": "string"
// For remaining properties, see RouteConfiguration objects
},
"rulesEngine": {
"id": "string"
},
"webApplicationFirewallPolicyLink": {
"id": "string"
}
}
}
]
}
}
Objetos RouteConfiguration
Establezca la propiedad @odata.type para especificar el tipo de objeto.
Para #Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration, use:
"@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration",
"backendPool": {
"id": "string"
},
"cacheConfiguration": {
"cacheDuration": "string",
"dynamicCompression": "string",
"queryParameters": "string",
"queryParameterStripDirective": "string"
},
"customForwardingPath": "string",
"forwardingProtocol": "string"
Para #Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration, use:
"@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration",
"customFragment": "string",
"customHost": "string",
"customPath": "string",
"customQueryString": "string",
"redirectProtocol": "string",
"redirectType": "string"
Valores de propiedad
frontDoors
Nombre | Descripción | Value |
---|---|---|
type | Tipo de recurso | "Microsoft.Network/frontDoors" |
apiVersion | La versión de la API de recursos | '2020-05-01' |
name | El nombre del recurso | string (obligatorio) Límite de caracteres: 5-64 Caracteres válidos: Caracteres alfanuméricos y guiones. Comience y termine con un carácter alfanumérico. El nombre del recurso debe ser único en Azure. |
ubicación | Ubicación del recurso | string |
etiquetas | Etiquetas del recurso. | Diccionario de nombres y valores de etiqueta. Consulte Etiquetas en plantillas. |
properties | Propiedades del Load Balancer de Front Door | FrontDoorProperties |
FrontDoorProperties
Nombre | Descripción | Valor |
---|---|---|
backendPools | Grupos de back-end disponibles para las reglas de enrutamiento. | BackendPool[] |
backendPoolsSettings | Configuración de todos los servidores back-endPool | BackendPoolsSettings |
enabledState | Estado operativo del equilibrador de carga de Front Door. Los valores permitidos son "Enabled" o "Disabled" | 'Deshabilitado' 'Habilitado' |
friendlyName | Un nombre descriptivo para frontDoor | string |
frontendEndpoints | Puntos de conexión de front-end disponibles para las reglas de enrutamiento. | FrontendEndpoint[] |
healthProbeSettings | Configuración del sondeo de mantenimiento asociada con esta instancia de Front Door. | HealthProbeSettingsModel[] |
loadBalancingSettings | Configuración de equilibrio de carga asociada con esta instancia de Front Door. | LoadBalancingSettingsModel[] |
routingRules | Reglas de enrutamiento asociadas a esta instancia de Front Door. | RoutingRule[] |
BackendPool
Nombre | Descripción | Value |
---|---|---|
id | Identificador del recurso. | string |
name | Nombre del recurso. | string |
properties | Propiedades del grupo de back-end de Front Door | BackendPoolProperties |
BackendPoolProperties
Nombre | Descripción | Valor |
---|---|---|
Backends | Conjunto de back-end para este grupo | Back-end[] |
healthProbeSettings | Configuración del sondeo de estado L7 para un grupo de back-end | SubResource |
loadBalancingSettings | Configuración de equilibrio de carga para un grupo de back-end | SubResource |
Back-end
Nombre | Descripción | Valor |
---|---|---|
address | Ubicación del servidor back-end (dirección IP o FQDN) | string |
backendHostHeader | Valor que se usará como el encabezado de host que se envía al servidor back-end. Si está en blanco o no especificado, este valor predeterminado es el host entrante. | string |
enabledState | Si desea habilitar el uso de este servidor back-end. Los valores permitidos son "Enabled" o "Disabled" | 'Deshabilitado' 'Habilitado' |
httpPort | Número de puerto TCP de HTTP. Debe estar entre 1 y 65535. | int |
httpsPort | Número de puerto TCP de HTTPS. Debe estar entre 1 y 65535. | int |
priority | Prioridad que se usará para el equilibrio de carga. Las prioridades más altas no se usarán para el equilibrio de carga si algún back-end de prioridad inferior es correcto. | int |
privateLinkAlias | Alias del recurso Private Link. Rellenar este campo opcional indica que este back-end es "Privado". | string |
privateLinkApprovalMessage | Mensaje personalizado que se va a incluir en la solicitud de aprobación para conectarse al Private Link | string |
privateLinkLocation | Ubicación del recurso Private Link. Solo es necesario si se rellena "privateLinkResourceId". | string |
privateLinkResourceId | Identificador de recurso del recurso Private Link. Rellenar este campo opcional indica que este back-end es "Privado". | string |
peso | Peso de este punto de conexión con fines de equilibrio de carga. | int |
SubResource
Nombre | Descripción | Value |
---|---|---|
id | Identificador del recurso. | string |
BackendPoolsSettings
Nombre | Descripción | Valor |
---|---|---|
enforceCertificateNameCheck | Si se debe aplicar la comprobación del nombre del certificado en las solicitudes HTTPS a todos los grupos de back-end. No hay ningún efecto en las solicitudes que no son HTTPS. | 'Deshabilitado' 'Habilitado' |
sendRecvTimeoutSeconds | Enviar y recibir tiempo de espera al reenviar la solicitud al back-end. Cuando se alcanza el tiempo de espera, se produce un error en la solicitud y se devuelve. | int |
FrontendEndpoint
Nombre | Descripción | Value |
---|---|---|
id | Identificador del recurso. | string |
name | Nombre del recurso. | string |
properties | Propiedades del punto de conexión de front-end | FrontendEndpointProperties |
FrontendEndpointProperties
Nombre | Descripción | Valor |
---|---|---|
hostName | El nombre de host de frontendEndpoint. Debe ser un nombre de dominio. | string |
sessionAffinityEnabledState | Si desea permitir la afinidad de sesiones en este host. Las opciones válidas son "Habilitado" o "Deshabilitado". | 'Deshabilitado' 'Habilitado' |
sessionAffinityTtlSeconds | INUSITADO. Se omitirá este campo. El TTL para usar en segundos para la afinidad de sesiones, si corresponde. | int |
webApplicationFirewallPolicyLink | Define la directiva de Web Application Firewall para cada host (si procede) | FrontendEndpointUpdateParametersWebApplicationFirewa... |
FrontendEndpointUpdateParametersWebApplicationFirewa...
Nombre | Descripción | Value |
---|---|---|
id | Identificador del recurso. | string |
HealthProbeSettingsModel
Nombre | Descripción | Value |
---|---|---|
id | Identificador del recurso. | string |
name | Nombre del recurso. | string |
properties | Propiedades de la configuración del sondeo de estado | HealthProbeSettingsProperties |
HealthProbeSettingsProperties
Nombre | Descripción | Valor |
---|---|---|
enabledState | Si se habilitan los sondeos de estado que se van a realizar en los back-end definidos en backendPools. Los sondeos de estado solo se pueden deshabilitar si hay un único back-end habilitado en un único grupo de back-end habilitado. | 'Deshabilitado' 'Habilitado' |
healthProbeMethod | Configura el método HTTP que se va a usar para sondear los back-end definidos en backendPools. | 'GET' 'HEAD' |
intervalInSeconds | Número de segundos entre sondeos de estado. | int |
path | Ruta de acceso del sondeo de estado. El valor predeterminado es / | string |
protocol | Esquema de protocolo que se va a usar para este sondeo | 'Http' 'Https' |
LoadBalancingSettingsModel
Nombre | Descripción | Value |
---|---|---|
id | Identificador del recurso. | string |
name | Nombre del recurso. | string |
properties | Propiedades de la configuración de equilibrio de carga | LoadBalancingSettingsProperties |
LoadBalancingSettingsProperties
Nombre | Descripción | Valor |
---|---|---|
additionalLatencyMilliseconds | Latencia adicional en milisegundos para que los sondeos caigan en el cubo de latencia más baja. | int |
sampleSize | El número de ejemplos que se deben tener en cuenta para tomar decisiones de equilibrio de carga | int |
successfulSamplesRequired | El número de muestras dentro del período de muestra que debe realizarse correctamente. | int |
RoutingRule
Nombre | Descripción | Value |
---|---|---|
id | Identificador del recurso. | string |
name | Nombre del recurso. | string |
properties | Propiedades de la regla de enrutamiento de Front Door | RoutingRuleProperties |
RoutingRuleProperties
Nombre | Descripción | Valor |
---|---|---|
acceptedProtocols | Esquemas de protocolo para que coincidan con esta regla | Matriz de cadenas que contiene cualquiera de: 'Http' 'Https' |
enabledState | Si desea habilitar el uso de esta regla. Los valores permitidos son "Enabled" o "Disabled" | 'Deshabilitado' 'Habilitado' |
frontendEndpoints | Puntos de conexión de front-end asociados a esta regla | SubResource[] |
patternsToMatch | Patrones de ruta de la regla. | string[] |
routeConfiguration | Referencia a la configuración de enrutamiento. | RouteConfiguration |
rulesEngine | Referencia a una configuración específica del motor de reglas que se aplicará a esta ruta. | SubResource |
webApplicationFirewallPolicyLink | Define la directiva de Web Application Firewall para cada regla de enrutamiento (si procede) | RoutingRuleUpdateParametersWebApplicationFirewallPol... |
RouteConfiguration
Nombre | Descripción | Valor |
---|---|---|
@odata.type | Establecimiento del tipo de objeto |
#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration #Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration (obligatorio) |
ForwardingConfiguration
Nombre | Descripción | Valor |
---|---|---|
@odata.type | '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration' (obligatorio) | |
backendPool | Referencia a BackendPool a la que se enruta esta regla. | SubResource |
cacheConfiguration | Configuración de almacenamiento en caché asociada a esta regla. | CacheConfiguration |
customForwardingPath | Ruta de acceso personalizada que se usa para reescribir las rutas de acceso de recursos coincidentes con esta regla. Déjela en blanco para usar la ruta de acceso entrante. | string |
forwardingProtocol | Protocolo que usará esta regla al reenviar el tráfico a los servidores back-end. | 'HttpOnly' 'HttpsOnly' 'MatchRequest' |
CacheConfiguration
Nombre | Descripción | Valor |
---|---|---|
cacheDuration | Duración durante la que se debe almacenar en caché el contenido. El formato permitido está en formato ISO 8601 (http://en.wikipedia.org/wiki/ISO_8601#Durations). HTTP requiere que el valor no sea superior a un año. | string |
dynamicCompression | Si se debe usar la compresión dinámica para el contenido almacenado en caché | 'Deshabilitado' 'Habilitado' |
queryParameters | parámetros de consulta para incluir o excluir (separados por comas). | string |
queryParameterStripDirective | Tratamiento de los términos de consulta de dirección URL al formar la clave de caché. | 'StripAll' 'StripAllExcept' 'StripNone' 'StripOnly' |
RedirectConfiguration
Nombre | Descripción | Valor |
---|---|---|
@odata.type | "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration" (obligatorio) | |
customFragment | Fragmento que se va a agregar a la dirección URL de redireccionamiento. Fragmento es la parte de la dirección URL que viene después de #. No incluya el archivo #. | string |
customHost | Host para redirigir. Deje vacío para usar el host entrante como host de destino. | string |
customPath | Ruta de acceso completa que se va a redirigir. La ruta de acceso no puede estar vacía y debe comenzar con /. Deje vacío para usar la ruta de acceso entrante como ruta de acceso de destino. | string |
customQueryString | Conjunto de cadenas de consulta que se colocarán en la dirección URL de redireccionamiento. Establecer este valor reemplazaría cualquier cadena de consulta existente; deje vacío para conservar la cadena de consulta entrante. La cadena de consulta debe tener el formato {key}={value}. ¿La primera? y & se agregarán automáticamente, por lo que no los incluyan en el frente, pero separe varias cadenas de consulta con &. | string |
redirectProtocol | Protocolo del destino al que se redirige el tráfico. | 'HttpOnly' "HttpsOnly" 'MatchRequest' |
redirectType | El tipo de redireccionamiento que usará la regla al redirigir el tráfico. | 'Encontrado' "Movido" 'PermanentRedirect' 'TemporaryRedirect' |
RoutingRuleUpdateParametersWebApplicationFirewallPol...
Nombre | Descripción | Value |
---|---|---|
id | Identificador del recurso. | string |
Plantillas de inicio rápido
Las siguientes plantillas de inicio rápido implementan este tipo de recurso.
Plantilla | Descripción |
---|---|
Creación de Azure Front Door delante de Azure API Management |
En este ejemplo se muestra cómo usar Azure Front Door como equilibrador de carga global delante de Azure API Management. |
Create a basic Front Door |
Esta plantilla crea una configuración básica de Front Door con un único back-end. |
Create Front Door with caching enabled for certain routes |
Esta plantilla crea una instancia de Front Door con almacenamiento en caché habilitado para la configuración de enrutamiento definida, por lo que almacena en caché los recursos estáticos de la carga de trabajo. |
Creación de una instancia de Front Door con varios back-end y grupos de back-end |
Esta plantilla crea una instancia de Front Door con equilibrio de carga configurado para varios back-end en un grupo de back-end y también entre grupos de back-end en función de la ruta de acceso url. |
Creación de una instancia de Front Door con redireccionamiento HTTP a HTTPS |
Esta plantilla crea una configuración de Front Door para el redireccionamiento HTTP a HTTPS. |
Adición de un dominio personalizado y un certificado administrado con Front Door |
Esta plantilla incorpora y protege un dominio personalizado con Front Door |
Adición de un dominio personalizado y un certificado personalizado con Front Door |
Esta plantilla incorpora y protege un dominio personalizado con Front Door con un certificado administrado por el cliente |
Control Health Probes for your backends on Front Door |
Esta plantilla actualiza Front Door para cambiar la configuración del sondeo de estado estableciendo la ruta de acceso del sondeo y también los intervalos en los que se enviarán los sondeos. |
Creación de Front Door con Active-Standby configuración |
Esta plantilla crea una instancia de Front Door que muestra el enrutamiento basado en prioridad para Active-Standby topología de aplicación. |
Configure Session Affinity for your Front Door host names |
Esta plantilla actualiza una instancia de Front Door para habilitar la afinidad de sesión para el host de front-end, por lo que envía tráfico posterior desde la misma sesión de usuario al mismo back-end. |
Definición de recursos de Terraform (proveedor AzAPI)
El tipo de recurso frontDoors se puede implementar en:
- Grupos de recursos
Para obtener una lista de las propiedades modificadas en cada versión de api, consulte registro de cambios.
Formato de los recursos
Para crear un recurso Microsoft.Network/frontDoors, agregue el siguiente terraform a la plantilla.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.Network/frontDoors@2020-05-01"
name = "string"
location = "string"
parent_id = "string"
tags = {
tagName1 = "tagValue1"
tagName2 = "tagValue2"
}
body = jsonencode({
properties = {
backendPools = [
{
id = "string"
name = "string"
properties = {
backends = [
{
address = "string"
backendHostHeader = "string"
enabledState = "string"
httpPort = int
httpsPort = int
priority = int
privateLinkAlias = "string"
privateLinkApprovalMessage = "string"
privateLinkLocation = "string"
privateLinkResourceId = "string"
weight = int
}
]
healthProbeSettings = {
id = "string"
}
loadBalancingSettings = {
id = "string"
}
}
}
]
backendPoolsSettings = {
enforceCertificateNameCheck = "string"
sendRecvTimeoutSeconds = int
}
enabledState = "string"
friendlyName = "string"
frontendEndpoints = [
{
id = "string"
name = "string"
properties = {
hostName = "string"
sessionAffinityEnabledState = "string"
sessionAffinityTtlSeconds = int
webApplicationFirewallPolicyLink = {
id = "string"
}
}
}
]
healthProbeSettings = [
{
id = "string"
name = "string"
properties = {
enabledState = "string"
healthProbeMethod = "string"
intervalInSeconds = int
path = "string"
protocol = "string"
}
}
]
loadBalancingSettings = [
{
id = "string"
name = "string"
properties = {
additionalLatencyMilliseconds = int
sampleSize = int
successfulSamplesRequired = int
}
}
]
routingRules = [
{
id = "string"
name = "string"
properties = {
acceptedProtocols = [
"string"
]
enabledState = "string"
frontendEndpoints = [
{
id = "string"
}
]
patternsToMatch = [
"string"
]
routeConfiguration = {
@odata.type = "string"
// For remaining properties, see RouteConfiguration objects
}
rulesEngine = {
id = "string"
}
webApplicationFirewallPolicyLink = {
id = "string"
}
}
}
]
}
})
}
Objetos RouteConfiguration
Establezca la propiedad @odata.type para especificar el tipo de objeto.
Para #Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration, use:
@odata.type = "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration"
backendPool = {
id = "string"
}
cacheConfiguration = {
cacheDuration = "string"
dynamicCompression = "string"
queryParameters = "string"
queryParameterStripDirective = "string"
}
customForwardingPath = "string"
forwardingProtocol = "string"
Para #Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration, use:
@odata.type = "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration"
customFragment = "string"
customHost = "string"
customPath = "string"
customQueryString = "string"
redirectProtocol = "string"
redirectType = "string"
Valores de propiedad
frontDoors
Nombre | Descripción | Value |
---|---|---|
type | Tipo de recurso | "Microsoft.Network/frontDoors@2020-05-01" |
name | El nombre del recurso | string (obligatorio) Límite de caracteres: 5-64 Caracteres válidos: Caracteres alfanuméricos y guiones. Comience y termine con un carácter alfanumérico. El nombre del recurso debe ser único en Azure. |
ubicación | Ubicación del recurso | string |
parent_id | Para realizar la implementación en un grupo de recursos, use el identificador de ese grupo de recursos. | string (obligatorio) |
etiquetas | Etiquetas del recurso. | Diccionario de nombres y valores de etiqueta. |
properties | Propiedades del Load Balancer de Front Door | FrontDoorProperties |
FrontDoorProperties
Nombre | Descripción | Valor |
---|---|---|
backendPools | Grupos de back-end disponibles para las reglas de enrutamiento. | BackendPool[] |
backendPoolsSettings | Configuración de todos los servidores back-endPool | BackendPoolsSettings |
enabledState | Estado operativo del equilibrador de carga de Front Door. Los valores permitidos son "Enabled" o "Disabled" | "Deshabilitado" "Habilitado" |
friendlyName | Un nombre descriptivo para frontDoor | string |
frontendEndpoints | Puntos de conexión de front-end disponibles para las reglas de enrutamiento. | FrontendEndpoint[] |
healthProbeSettings | Configuración del sondeo de mantenimiento asociada con esta instancia de Front Door. | HealthProbeSettingsModel[] |
loadBalancingSettings | Configuración de equilibrio de carga asociada con esta instancia de Front Door. | LoadBalancingSettingsModel[] |
routingRules | Reglas de enrutamiento asociadas a esta instancia de Front Door. | RoutingRule[] |
BackendPool
Nombre | Descripción | Value |
---|---|---|
id | Identificador del recurso. | string |
name | Nombre del recurso. | string |
properties | Propiedades del grupo de back-end de Front Door | BackendPoolProperties |
BackendPoolProperties
Nombre | Descripción | Valor |
---|---|---|
Backends | Conjunto de back-end para este grupo | Back-end[] |
healthProbeSettings | Configuración del sondeo de estado L7 para un grupo de back-end | SubResource |
loadBalancingSettings | Configuración de equilibrio de carga para un grupo de back-end | SubResource |
Back-end
Nombre | Descripción | Valor |
---|---|---|
address | Ubicación del servidor back-end (dirección IP o FQDN) | string |
backendHostHeader | Valor que se usará como el encabezado de host que se envía al servidor back-end. Si está en blanco o no especificado, este valor predeterminado es el host entrante. | string |
enabledState | Si desea habilitar el uso de este servidor back-end. Los valores permitidos son "Enabled" o "Disabled" | "Deshabilitado" "Habilitado" |
httpPort | Número de puerto TCP de HTTP. Debe estar entre 1 y 65535. | int |
httpsPort | Número de puerto TCP de HTTPS. Debe estar entre 1 y 65535. | int |
priority | Prioridad que se usará para el equilibrio de carga. Las prioridades más altas no se usarán para el equilibrio de carga si algún back-end de prioridad inferior es correcto. | int |
privateLinkAlias | Alias del recurso Private Link. Rellenar este campo opcional indica que este back-end es "Privado". | string |
privateLinkApprovalMessage | Mensaje personalizado que se incluirá en la solicitud de aprobación para conectarse al Private Link | string |
privateLinkLocation | Ubicación del recurso Private Link. Solo se requiere si se rellena "privateLinkResourceId" | string |
privateLinkResourceId | Identificador de recurso del recurso Private Link. Rellenar este campo opcional indica que este back-end es "Privado". | string |
peso | Peso de este punto de conexión con fines de equilibrio de carga. | int |
SubResource
Nombre | Descripción | Value |
---|---|---|
id | Identificador del recurso. | string |
BackendPoolsSettings
Nombre | Descripción | Valor |
---|---|---|
enforceCertificateNameCheck | Si se debe aplicar la comprobación de nombres de certificado en las solicitudes HTTPS a todos los grupos de back-end. No hay ningún efecto en las solicitudes que no son HTTPS. | "Deshabilitado" "Habilitado" |
sendRecvTimeoutSeconds | Enviar y recibir el tiempo de espera en la solicitud de reenvío al back-end. Cuando se alcanza el tiempo de espera, se produce un error en la solicitud y se devuelve. | int |
FrontendEndpoint
Nombre | Descripción | Value |
---|---|---|
id | Identificador del recurso. | string |
name | Nombre del recurso. | string |
properties | Propiedades del punto de conexión de front-end | FrontendEndpointProperties |
FrontendEndpointProperties
Nombre | Descripción | Valor |
---|---|---|
hostName | El nombre de host de frontendEndpoint. Debe ser un nombre de dominio. | string |
sessionAffinityEnabledState | Si desea permitir la afinidad de sesiones en este host. Las opciones válidas son "Enabled" o "Disabled" | "Deshabilitado" "Habilitado" |
sessionAffinityTtlSeconds | INUSITADO. Se omitirá este campo. El TTL para usar en segundos para la afinidad de sesiones, si corresponde. | int |
webApplicationFirewallPolicyLink | Define la directiva de Web Application Firewall para cada host (si procede) | FrontendEndpointUpdateParametersWebApplicationFirewa... |
FrontendEndpointUpdateParametersWebApplicationFirewa...
Nombre | Descripción | Value |
---|---|---|
id | Identificador del recurso. | string |
HealthProbeSettingsModel
Nombre | Descripción | Value |
---|---|---|
id | Identificador del recurso. | string |
name | Nombre del recurso. | string |
properties | Propiedades de la configuración del sondeo de estado | HealthProbeSettingsProperties |
HealthProbeSettingsProperties
Nombre | Descripción | Valor |
---|---|---|
enabledState | Si se habilitan los sondeos de estado que se van a realizar en back-end definidos en backendPools. Los sondeos de estado solo se pueden deshabilitar si hay un único back-end habilitado en un único grupo de back-end habilitado. | "Deshabilitado" "Habilitado" |
healthProbeMethod | Configura qué método HTTP se va a usar para sondear los back-end definidos en backendPools. | "GET" "HEAD" |
intervalInSeconds | Número de segundos entre sondeos de estado. | int |
path | Ruta de acceso del sondeo de estado. El valor predeterminado es / | string |
protocol | Esquema de protocolo que se va a usar para este sondeo | "Http" "Https" |
LoadBalancingSettingsModel
Nombre | Descripción | Value |
---|---|---|
id | Identificador del recurso. | string |
name | Nombre del recurso. | string |
properties | Propiedades de la configuración de equilibrio de carga | LoadBalancingSettingsProperties |
LoadBalancingSettingsProperties
Nombre | Descripción | Valor |
---|---|---|
additionalLatencyMilliseconds | Latencia adicional en milisegundos para que los sondeos caigan en el cubo de latencia más baja. | int |
sampleSize | El número de ejemplos que se deben tener en cuenta para las decisiones de equilibrio de carga | int |
successfulSamplesRequired | El número de muestras dentro del período de muestra que debe realizarse correctamente. | int |
RoutingRule
Nombre | Descripción | Value |
---|---|---|
id | Identificador del recurso. | string |
name | Nombre del recurso. | string |
properties | Propiedades de la regla de enrutamiento de Front Door | RoutingRuleProperties |
RoutingRuleProperties
Nombre | Descripción | Valor |
---|---|---|
acceptedProtocols | Esquemas de protocolo que deben coincidir con esta regla | Matriz de cadenas que contiene cualquiera de: "Http" "Https" |
enabledState | Si desea habilitar el uso de esta regla. Los valores permitidos son "Enabled" o "Disabled" | "Deshabilitado" "Habilitado" |
frontendEndpoints | Puntos de conexión de front-end asociados a esta regla | SubResource[] |
patternsToMatch | Patrones de ruta de la regla. | string[] |
routeConfiguration | Referencia a la configuración de enrutamiento. | RouteConfiguration |
rulesEngine | Referencia a una configuración específica del motor de reglas que se va a aplicar a esta ruta. | SubResource |
webApplicationFirewallPolicyLink | Define la directiva de Web Application Firewall para cada regla de enrutamiento (si procede) | RoutingRuleUpdateParametersWebApplicationFirewallPol... |
RouteConfiguration
Nombre | Descripción | Valor |
---|---|---|
@odata.type | Establecimiento del tipo de objeto |
#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration #Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration (obligatorio) |
ForwardingConfiguration
Nombre | Descripción | Valor |
---|---|---|
@odata.type | "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration" (obligatorio) | |
backendPool | Referencia al objeto BackendPool al que se enruta esta regla. | SubResource |
cacheConfiguration | Configuración de almacenamiento en caché asociada a esta regla. | CacheConfiguration |
customForwardingPath | Ruta de acceso personalizada que se usa para reescribir las rutas de acceso de recursos coincidentes con esta regla. Déjela en blanco para usar la ruta de acceso entrante. | string |
forwardingProtocol | Protocolo que usará esta regla al reenviar el tráfico a los servidores back-end. | "HttpOnly" "HttpsOnly" "MatchRequest" |
CacheConfiguration
Nombre | Descripción | Valor |
---|---|---|
cacheDuration | Duración durante la que se debe almacenar en caché el contenido. El formato permitido está en formato ISO 8601 (http://en.wikipedia.org/wiki/ISO_8601#Durations). HTTP requiere que el valor no sea superior a un año. | string |
dynamicCompression | Si se debe usar la compresión dinámica para el contenido almacenado en caché | "Deshabilitado" "Habilitado" |
queryParameters | parámetros de consulta para incluir o excluir (separados por comas). | string |
queryParameterStripDirective | Tratamiento de los términos de consulta de dirección URL al formar la clave de caché. | "StripAll" "StripAllExcept" "StripNone" "StripOnly" |
RedirectConfiguration
Nombre | Descripción | Valor |
---|---|---|
@odata.type | "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration" (obligatorio) | |
customFragment | Fragmento que se va a agregar a la dirección URL de redireccionamiento. Fragment es la parte de la dirección URL que viene después de #. No incluya #. | string |
customHost | Host para redirigir. Deje vacío para usar el host entrante como host de destino. | string |
customPath | Ruta de acceso completa que se va a redirigir. La ruta de acceso no puede estar vacía y debe comenzar con /. Deje vacío para usar la ruta de acceso entrante como ruta de acceso de destino. | string |
customQueryString | Conjunto de cadenas de consulta que se van a colocar en la dirección URL de redireccionamiento. Establecer este valor reemplazaría cualquier cadena de consulta existente; deje vacío para conservar la cadena de consulta entrante. La cadena de consulta debe tener el formato {key}={value}. ¿La primera? y & se agregarán automáticamente, por lo que no los incluyan en el frente, sino que separe varias cadenas de consulta con &. | string |
redirectProtocol | Protocolo del destino al que se redirige el tráfico. | "HttpOnly" "HttpsOnly" "MatchRequest" |
redirectType | El tipo de redireccionamiento que usará la regla al redirigir el tráfico. | "Encontrado" "Movido" "PermanentRedirect" "TemporaryRedirect" |
RoutingRuleUpdateParametersWebApplicationFirewallPol...
Nombre | Descripción | Value |
---|---|---|
id | Identificador del recurso. | string |