Share via


Microsoft.Network frontDoors

Bicep 리소스 정의

frontDoors 리소스 종류는 다음을 위해 배포할 수 있습니다.

각 API 버전에서 변경된 속성 목록은 변경 로그를 참조하세요.

리소스 형식

Microsoft.Network/frontDoors 리소스를 만들려면 템플릿에 다음 Bicep을 추가합니다.

resource symbolicname 'Microsoft.Network/frontDoors@2021-06-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'
          }
        }
      }
    ]
  }
}

RouteConfiguration 개체

@odata.type 속성을 설정하여 개체의 형식을 지정합니다.

#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration의 경우 다음을 사용합니다.

  '@odata.type': '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration'
  backendPool: {
    id: 'string'
  }
  cacheConfiguration: {
    cacheDuration: 'string'
    dynamicCompression: 'string'
    queryParameters: 'string'
    queryParameterStripDirective: 'string'
  }
  customForwardingPath: 'string'
  forwardingProtocol: 'string'

#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration의 경우 다음을 사용합니다.

  '@odata.type': '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration'
  customFragment: 'string'
  customHost: 'string'
  customPath: 'string'
  customQueryString: 'string'
  redirectProtocol: 'string'
  redirectType: 'string'

속성 값

frontDoors

Name Description
name 리소스 이름 string(필수)

문자 제한: 5-64

유효한 문자:
영숫자 및 하이픈

영숫자로 시작하고 끝납니다.

리소스 이름은 Azure에서 고유해야 합니다.
위치 리소스 위치. string
tags 리소스 태그. 태그 이름 및 값의 사전입니다. 템플릿의 태그를 참조하세요.
properties Front Door Load Balancer 속성 FrontDoorProperties

FrontDoorProperties

Name Description
backendPools 라우팅 규칙에 사용할 수 있는 백 엔드 풀입니다. BackendPool[]
backendPoolsSettings 모든 backendPools에 대한 설정 BackendPoolsSettings
enabledState Front Door 부하 분산 장치의 선택적 상태입니다. 허용되는 값은 'Enabled' 또는 'Disabled'입니다. 'Disabled'
'Enabled'
friendlyName frontDoor의 이름 문자열
frontendEndpoints 라우팅 규칙에 사용할 수 있는 프런트 엔드 엔드포인트입니다. FrontendEndpoint[]
healthProbeSettings 이 Front Door 인스턴스와 연결된 상태 프로브 설정입니다. HealthProbeSettingsModel[]
loadBalancingSettings 이 Front Door 인스턴스와 연결된 부하 분산 설정입니다. LoadBalancingSettingsModel[]
routingRules 이 Front Door와 연결된 라우팅 규칙입니다. RoutingRule[]

BackendPool

Name Description
id 리소스 ID입니다. 문자열
name 리소스 이름입니다. 문자열
properties Front Door 백 엔드 풀의 속성 BackendPoolProperties

BackendPoolProperties

Name Description
백엔드 이 풀의 백 엔드 집합 백 엔드[]
healthProbeSettings 백 엔드 풀에 대한 L7 상태 프로브 설정 SubResource
loadBalancingSettings 백 엔드 풀에 대한 부하 분산 설정 SubResource

백 엔드

Name Description
address 백 엔드의 위치(IP 주소 또는 FQDN) 문자열
backendHostHeader 백 엔드에 전송되는 호스트 헤더로 사용할 값입니다. 비어 있거나 지정되지 않은 경우 기본적으로 들어오는 호스트로 설정됩니다. string
enabledState 이 백 엔드의 사용을 활성화할지 여부입니다. 허용되는 값은 'Enabled' 또는 'Disabled'입니다. '사용 안 함'
'사용'
httpPort HTTP TCP 포트 번호입니다. 1~65535 사이여야 합니다. int
httpsPort HTTPS TCP 포트 번호입니다. 1~65535 사이여야 합니다. int
priority 부하 분산에 사용할 우선 순위입니다. 우선 순위가 낮은 백 엔드가 정상인 경우 더 높은 우선 순위는 부하 분산에 사용되지 않습니다. int
privateLinkAlias Private Link 리소스의 별칭입니다. 이 선택적 필드를 채우는 것은 이 백 엔드가 'Private'임을 나타냅니다. string
privateLinkApprovalMessage Private Link 연결하기 위해 승인 요청에 포함할 사용자 지정 메시지 문자열
privateLinkLocation Private Link 리소스의 위치입니다. 'privateLinkResourceId'가 채워진 경우에만 필요합니다. string
privateLinkResourceId Private Link 리소스의 리소스 ID입니다. 이 선택적 필드를 채우는 것은 이 백 엔드가 'Private'임을 나타냅니다. 문자열
체중 부하 분산을 위한 이 엔드포인트의 가중치입니다. int

SubResource

Name Description
id 리소스 ID입니다. string

BackendPoolsSettings

Name Description
enforceCertificateNameCheck 모든 백 엔드 풀에 HTTPS 요청에 인증서 이름 검사 적용할지 여부입니다. HTTPS가 아닌 요청에는 영향을 주지 않습니다. '사용 안 함'
'사용'
sendRecvTimeoutSeconds 백 엔드로 요청을 전달할 때 시간 제한을 보내고 받습니다. 시간 제한에 도달하면 요청이 실패하고 반환됩니다. int

FrontendEndpoint

Name Description
id 리소스 ID입니다. 문자열
name 리소스 이름입니다. 문자열
properties 프런트 엔드 엔드포인트의 속성 FrontendEndpointProperties

FrontendEndpointProperties

Name Description
hostName frontendEndpoint의 호스트 이름입니다. 도메인 이름이어야 합니다. string
sessionAffinityEnabledState 이 호스트에서 세션 선호도를 허용할지 여부입니다. 유효한 옵션은 '사용' 또는 '사용 안 함'입니다. '사용 안 함'
'사용'
sessionAffinityTtlSeconds 하지 않는. 이 필드를 무시합니다. 해당하는 경우 세션 선호도에 사용할 TTL(초 단위)입니다. int
webApplicationFirewallPolicyLink 각 호스트에 대한 Web Application Firewall 정책을 정의합니다(해당하는 경우). FrontendEndpointUpdateParametersWebApplicationFirewa...

FrontendEndpointUpdateParametersWebApplicationFirewa...

Name Description
id 리소스 ID입니다. string

HealthProbeSettingsModel

Name Description
id 리소스 ID입니다. 문자열
name 리소스 이름입니다. 문자열
properties 상태 프로브 설정의 속성 HealthProbeSettingsProperties

HealthProbeSettingsProperties

Name Description
enabledState 백 엔드 풀 아래에 정의된 백 엔드에 대해 상태 프로브를 만들 수 있도록 설정할지 여부입니다. 단일 지원 백 엔드 풀에 사용하도록 설정된 단일 백 엔드가 있는 경우에만 상태 프로브를 사용하지 않도록 설정할 수 있습니다. '사용 안 함'
'사용'
healthProbeMethod 백 엔드 풀 아래에 정의된 백 엔드를 검색하는 데 사용할 HTTP 메서드를 구성합니다. 'GET'
'HEAD'
intervalInSeconds 상태 프로브 간격(초)입니다. int
path 상태 프로브에 사용할 경로입니다. 기본값은 /입니다. string
protocol 이 프로브에 사용할 프로토콜 체계 'Http'
'Https'

LoadBalancingSettingsModel

Name Description
id 리소스 ID입니다. 문자열
name 리소스 이름입니다. 문자열
properties 부하 분산 설정의 속성 LoadBalancingSettingsProperties

LoadBalancingSettingsProperties

Name Description
additionalLatencyMilliseconds 프로브가 가장 낮은 대기 시간 버킷에 속하는 추가 대기 시간(밀리초) int
sampleSize 부하 분산 결정에 고려할 샘플 수 int
successfulSamplesRequired 성공해야 하는 샘플 기간 내의 샘플 수 int

RoutingRule

Name Description
id 리소스 ID입니다. 문자열
name 리소스 이름입니다. 문자열
properties Front Door 라우팅 규칙의 속성 RoutingRuleProperties

RoutingRuleProperties

Name Description
acceptedProtocols 이 규칙과 일치하는 프로토콜 체계 다음 중 어느 것을 포함하는 문자열 배열:
'Http'
'Https'
enabledState 이 규칙의 사용을 활성화할지 여부입니다. 허용되는 값은 'Enabled' 또는 'Disabled'입니다. '사용 안 함'
'사용'
frontendEndpoints 이 규칙과 연결된 프런트 엔드 엔드포인트 SubResource[]
patternsToMatch 규칙의 경로 패턴입니다. string[]
routeConfiguration 라우팅 구성에 대한 참조입니다. RouteConfiguration
rulesEngine 이 경로에 적용할 특정 규칙 엔진 구성에 대한 참조입니다. SubResource
webApplicationFirewallPolicyLink 각 라우팅 규칙에 대한 Web Application Firewall 정책을 정의합니다(해당하는 경우). RoutingRuleUpdateParametersWebApplicationFirewallPol...

RouteConfiguration

Name Description
@odata.type 개체 유형 설정 #Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration
#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration (필수)

ForwardingConfiguration

Name Description
@odata.type '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration'(필수)
backendPool 이 규칙이 라우팅하는 BackendPool에 대한 참조입니다. SubResource
cacheConfiguration 이 규칙과 연결된 캐싱 구성입니다. CacheConfiguration
customForwardingPath 이 규칙과 일치하는 리소스 경로를 다시 작성하는 데 사용되는 사용자 지정 경로입니다. 들어오는 경로를 사용하려면 비워 둡니다. string
forwardingProtocol 이 규칙이 트래픽을 백 엔드로 전달할 때 사용하는 프로토콜입니다. 'HttpOnly'
'HttpsOnly'
'MatchRequest'

CacheConfiguration

Name Description
cacheDuration 콘텐츠를 캐시해야 하는 기간입니다. 허용되는 형식은 ISO 8601 형식(http://en.wikipedia.org/wiki/ISO_8601#Durations)입니다. HTTP를 사용하려면 값이 1년 이하여야 합니다. 문자열
dynamicCompression 캐시된 콘텐츠에 동적 압축을 사용할지 여부 'Disabled'
'Enabled'
queryParameters 포함하거나 제외할 쿼리 매개 변수입니다(쉼표로 구분됨). 문자열
queryParameterStripDirective 캐시 키를 구성할 때 URL 쿼리 용어 처리 'StripAll'
'StripAllExcept'
'StripNone'
'StripOnly'

RedirectConfiguration

Name Description
@odata.type '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration'(필수)
customFragment 리디렉션 URL에 추가할 조각입니다. 조각은 #다음에 오는 URL의 일부입니다. #을 포함하지 마세요. string
customHost 리디렉션할 호스트입니다. 들어오는 호스트를 대상 호스트로 사용하려면 비워 둡니다. string
customPath 리디렉션할 전체 경로입니다. 경로는 비워 둘 수 없으며 /로 시작해야 합니다. 들어오는 경로를 대상 경로로 사용하려면 비워 둡니다. 문자열
customQueryString 리디렉션 URL에 배치할 쿼리 문자열 집합입니다. 이 값을 설정하면 기존 쿼리 문자열이 대체됩니다. 들어오는 쿼리 문자열을 유지하려면 비워 둡니다. 쿼리 문자열은 {key}={value} 형식이어야 합니다. 첫 번째 ? 및 & 자동으로 추가되므로 앞에 포함하지 않고 여러 쿼리 문자열을 & 구분합니다. string
redirectProtocol 트래픽이 리디렉션되는 대상의 프로토콜입니다. 'HttpOnly'
'HttpsOnly'
'MatchRequest'
redirectType 트래픽을 리디렉션할 때 규칙이 사용할 리디렉션 유형입니다. 'Found'
'Moved'
'PermanentRedirect'
'TemporaryRedirect'

RoutingRuleUpdateParametersWebApplicationFirewallPol...

Name Description
id 리소스 ID입니다. string

빠른 시작 템플릿

다음 빠른 시작 템플릿은 이 리소스 유형을 배포합니다.

템플릿 Description
Azure API Management 앞에서 Azure Front Door 만들기

Azure에 배포
이 샘플에서는 Azure Front Door를 Azure API Management 앞에서 전역 부하 분산 장치로 사용하는 방법을 보여 줍니다.
기본 Front Door 만들기

Azure에 배포
이 템플릿은 단일 백 엔드를 사용하여 기본 Front Door 구성을 만듭니다.
특정 경로에 대해 캐싱이 사용되도록 설정된 Front Door 만들기

Azure에 배포
이 템플릿은 정의된 라우팅 구성에 대해 캐싱을 사용하도록 설정된 Front Door를 만들어 워크로드에 대한 정적 자산을 캐싱합니다.
여러 백 엔드 및 백 엔드 풀이 있는 Front Door 만들기

Azure에 배포
이 템플릿은 백 엔드 풀의 여러 백 엔드 및 URL 경로에 따라 백 엔드 풀 간에 부하 분산이 구성된 Front Door를 만듭니다.
HTTP에서 HTTPS로 리디렉션을 사용하여 Front Door 만들기

Azure에 배포
이 템플릿은 HTTP에서 HTTPS로 리디렉션을 위한 Front Door 구성을 만듭니다.
Front Door를 사용하여 사용자 지정 도메인 및 관리되는 인증서 추가

Azure에 배포
이 템플릿은 Front Door를 사용하여 사용자 지정 도메인을 온보딩하고 보호합니다.
Front Door를 사용하여 사용자 지정 도메인 및 사용자 지정 인증서 추가

Azure에 배포
이 템플릿은 고객 관리 인증서를 사용하여 Front Door를 사용하여 사용자 지정 도메인을 온보딩하고 보호합니다.
Front Door에서 백 엔드에 대한 상태 프로브 제어

Azure에 배포
이 템플릿은 프로브 경로 및 프로브가 전송되는 간격을 설정하여 상태 프로브 설정을 변경하도록 Front Door를 업데이트합니다.
Active-Standby 구성을 사용하여 Front Door 만들기

Azure에 배포
이 템플릿은 Active-Standby 애플리케이션 토폴로지의 우선 순위 기반 라우팅을 보여 주는 Front Door를 만듭니다.
Front Door 호스트 이름에 대한 세션 선호도 구성

Azure에 배포
이 템플릿은 Front Door를 업데이트하여 프런트 엔드 호스트에 대한 세션 선호도를 사용하도록 설정하여 동일한 사용자 세션에서 동일한 백 엔드로 후속 트래픽을 보냅니다.

ARM 템플릿 리소스 정의

frontDoors 리소스 종류는 다음으로 배포할 수 있습니다.

각 API 버전에서 변경된 속성 목록은 변경 로그를 참조하세요.

리소스 형식

Microsoft.Network/frontDoors 리소스를 만들려면 템플릿에 다음 JSON을 추가합니다.

{
  "type": "Microsoft.Network/frontDoors",
  "apiVersion": "2021-06-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"
          }
        }
      }
    ]
  }
}

RouteConfiguration 개체

개체의 형식을 지정하려면 @odata.type 속성을 설정합니다.

#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration의 경우 다음을 사용합니다.

  "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration",
  "backendPool": {
    "id": "string"
  },
  "cacheConfiguration": {
    "cacheDuration": "string",
    "dynamicCompression": "string",
    "queryParameters": "string",
    "queryParameterStripDirective": "string"
  },
  "customForwardingPath": "string",
  "forwardingProtocol": "string"

#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration의 경우 다음을 사용합니다.

  "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration",
  "customFragment": "string",
  "customHost": "string",
  "customPath": "string",
  "customQueryString": "string",
  "redirectProtocol": "string",
  "redirectType": "string"

속성 값

frontDoors

Name Description
형식 리소스 종류 'Microsoft.Network/frontDoors'
apiVersion 리소스 api 버전 '2021-06-01'
name 리소스 이름 string(필수)

문자 제한: 5-64

유효한 문자:
영숫자 및 하이픈

영숫자로 시작하고 끝납니다.

리소스 이름은 Azure에서 고유해야 합니다.
위치 리소스 위치. string
tags 리소스 태그. 태그 이름 및 값의 사전입니다. 템플릿의 태그를 참조하세요.
properties Front Door Load Balancer 속성 FrontDoorProperties

FrontDoorProperties

Name Description
backendPools 라우팅 규칙에 사용할 수 있는 백 엔드 풀입니다. BackendPool[]
backendPoolsSettings 모든 backendPools에 대한 설정 BackendPoolsSettings
enabledState Front Door 부하 분산 장치의 선택적 상태입니다. 허용되는 값은 'Enabled' 또는 'Disabled'입니다. '사용 안 함'
'사용'
friendlyName frontDoor의 이름 문자열
frontendEndpoints 라우팅 규칙에 사용할 수 있는 프런트 엔드 엔드포인트입니다. FrontendEndpoint[]
healthProbeSettings 이 Front Door 인스턴스와 연결된 상태 프로브 설정입니다. HealthProbeSettingsModel[]
loadBalancingSettings 이 Front Door 인스턴스와 연결된 부하 분산 설정입니다. LoadBalancingSettingsModel[]
routingRules 이 Front Door와 연결된 라우팅 규칙입니다. RoutingRule[]

BackendPool

Name Description
id 리소스 ID입니다. 문자열
name 리소스 이름입니다. 문자열
properties Front Door 백 엔드 풀의 속성 BackendPoolProperties

BackendPoolProperties

Name Description
백엔드 이 풀의 백 엔드 집합 백 엔드[]
healthProbeSettings 백 엔드 풀에 대한 L7 상태 프로브 설정 SubResource
loadBalancingSettings 백 엔드 풀에 대한 부하 분산 설정 SubResource

백 엔드

Name Description
address 백 엔드의 위치(IP 주소 또는 FQDN) 문자열
backendHostHeader 백 엔드에 전송되는 호스트 헤더로 사용할 값입니다. 비어 있거나 지정되지 않은 경우 기본적으로 들어오는 호스트로 설정됩니다. string
enabledState 이 백 엔드의 사용을 활성화할지 여부입니다. 허용되는 값은 'Enabled' 또는 'Disabled'입니다. '사용 안 함'
'사용'
httpPort HTTP TCP 포트 번호입니다. 1~65535 사이여야 합니다. int
httpsPort HTTPS TCP 포트 번호입니다. 1~65535 사이여야 합니다. int
priority 부하 분산에 사용할 우선 순위입니다. 우선 순위가 낮은 백 엔드가 정상인 경우 더 높은 우선 순위는 부하 분산에 사용되지 않습니다. int
privateLinkAlias Private Link 리소스의 별칭입니다. 이 선택적 필드를 채우는 것은 이 백 엔드가 'Private'임을 나타냅니다. 문자열
privateLinkApprovalMessage Private Link 연결하기 위해 승인 요청에 포함할 사용자 지정 메시지 문자열
privateLinkLocation Private Link 리소스의 위치입니다. 'privateLinkResourceId'가 채워진 경우에만 필요합니다. string
privateLinkResourceId Private Link 리소스의 리소스 ID입니다. 이 선택적 필드를 채우는 것은 이 백 엔드가 'Private'임을 나타냅니다. 문자열
체중 부하 분산을 위한 이 엔드포인트의 가중치입니다. int

SubResource

Name Description
id 리소스 ID입니다. string

BackendPoolsSettings

Name Description
enforceCertificateNameCheck 모든 백 엔드 풀에 HTTPS 요청에 인증서 이름 검사 적용할지 여부입니다. HTTPS가 아닌 요청에는 영향을 주지 않습니다. '사용 안 함'
'사용'
sendRecvTimeoutSeconds 백 엔드로 요청을 전달할 때 시간 제한을 보내고 받습니다. 시간 제한에 도달하면 요청이 실패하고 반환됩니다. int

FrontendEndpoint

Name Description
id 리소스 ID입니다. 문자열
name 리소스 이름입니다. 문자열
properties 프런트 엔드 엔드포인트의 속성 FrontendEndpointProperties

FrontendEndpointProperties

Name Description
hostName frontendEndpoint의 호스트 이름입니다. 도메인 이름이어야 합니다. 문자열
sessionAffinityEnabledState 이 호스트에서 세션 선호도를 허용할지 여부입니다. 유효한 옵션은 '사용' 또는 '사용 안 함'입니다. 'Disabled'
'Enabled'
sessionAffinityTtlSeconds 하지 않는. 이 필드를 무시합니다. 해당하는 경우 세션 선호도에 사용할 TTL(초 단위)입니다. int
webApplicationFirewallPolicyLink 각 호스트에 대한 Web Application Firewall 정책을 정의합니다(해당하는 경우). FrontendEndpointUpdateParametersWebApplicationFirewa...

FrontendEndpointUpdateParametersWebApplicationFirewa...

Name Description
id 리소스 ID입니다. 문자열

HealthProbeSettingsModel

Name Description
id 리소스 ID입니다. 문자열
name 리소스 이름입니다. 문자열
properties 상태 프로브 설정의 속성 HealthProbeSettingsProperties

HealthProbeSettingsProperties

Name Description
enabledState backendPools에 정의된 백 엔드에 대해 상태 프로브를 만들 수 있도록 설정할지 여부입니다. 단일 지원 백 엔드 풀에 사용하도록 설정된 단일 백 엔드가 있는 경우에만 상태 프로브를 사용하지 않도록 설정할 수 있습니다. 'Disabled'
'Enabled'
healthProbeMethod backendPools에 정의된 백 엔드를 검색하는 데 사용할 HTTP 메서드를 구성합니다. 'GET'
'HEAD'
intervalInSeconds 상태 프로브 간격(초)입니다. int
path 상태 프로브에 사용할 경로입니다. 기본값은 /입니다. string
protocol 이 프로브에 사용할 프로토콜 체계 'Http'
'Https'

LoadBalancingSettingsModel

Name Description
id 리소스 ID입니다. 문자열
name 리소스 이름입니다. 문자열
properties 부하 분산 설정의 속성 LoadBalancingSettingsProperties

LoadBalancingSettingsProperties

Name Description
additionalLatencyMilliseconds 프로브가 가장 낮은 대기 시간 버킷에 속하는 추가 대기 시간(밀리초) int
sampleSize 부하 분산 결정에 고려할 샘플 수 int
successfulSamplesRequired 성공해야 하는 샘플 기간 내의 샘플 수 int

RoutingRule

Name Description
id 리소스 ID입니다. 문자열
name 리소스 이름입니다. 문자열
properties Front Door 라우팅 규칙의 속성 RoutingRuleProperties

RoutingRuleProperties

Name Description
acceptedProtocols 이 규칙과 일치하는 프로토콜 체계 다음 중 어느 것을 포함하는 문자열 배열:
'Http'
'Https'
enabledState 이 규칙의 사용을 활성화할지 여부입니다. 허용되는 값은 'Enabled' 또는 'Disabled'입니다. '사용 안 함'
'사용'
frontendEndpoints 이 규칙과 연결된 프런트 엔드 엔드포인트 SubResource[]
patternsToMatch 규칙의 경로 패턴입니다. string[]
routeConfiguration 라우팅 구성에 대한 참조입니다. RouteConfiguration
rulesEngine 이 경로에 적용할 특정 규칙 엔진 구성에 대한 참조입니다. SubResource
webApplicationFirewallPolicyLink 각 라우팅 규칙에 대한 Web Application Firewall 정책을 정의합니다(해당하는 경우). RoutingRuleUpdateParametersWebApplicationFirewallPol...

RouteConfiguration

Name Description
@odata.type 개체 형식 설정 #Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration
#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration (필수)

ForwardingConfiguration

Name Description
@odata.type '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration'(필수)
backendPool 이 규칙이 라우팅하는 BackendPool에 대한 참조입니다. SubResource
cacheConfiguration 이 규칙과 연결된 캐싱 구성입니다. CacheConfiguration
customForwardingPath 이 규칙과 일치하는 리소스 경로를 다시 작성하는 데 사용되는 사용자 지정 경로입니다. 들어오는 경로를 사용하려면 비워 둡니다. string
forwardingProtocol 이 규칙이 트래픽을 백 엔드로 전달할 때 사용하는 프로토콜입니다. 'HttpOnly'
'HttpsOnly'
'MatchRequest'

CacheConfiguration

Name Description
cacheDuration 콘텐츠를 캐시해야 하는 기간입니다. 허용되는 형식은 ISO 8601 형식(http://en.wikipedia.org/wiki/ISO_8601#Durations)입니다. HTTP를 사용하려면 값이 1년 이하여야 합니다. string
dynamicCompression 캐시된 콘텐츠에 동적 압축을 사용할지 여부 '사용 안 함'
'사용'
queryParameters 포함하거나 제외할 쿼리 매개 변수(쉼표로 구분됨). 문자열
queryParameterStripDirective 캐시 키를 구성할 때 URL 쿼리 용어 처리 'StripAll'
'StripAllExcept'
'StripNone'
'StripOnly'

RedirectConfiguration

Name Description
@odata.type '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration'(필수)
customFragment 리디렉션 URL에 추가할 조각입니다. 조각은 #다음에 오는 URL의 일부입니다. #을 포함하지 마세요. string
customHost 리디렉션할 호스트입니다. 들어오는 호스트를 대상 호스트로 사용하려면 비워 둡니다. string
customPath 리디렉션할 전체 경로입니다. 경로는 비워 둘 수 없으며 /로 시작해야 합니다. 들어오는 경로를 대상 경로로 사용하려면 비워 둡니다. 문자열
customQueryString 리디렉션 URL에 배치할 쿼리 문자열 집합입니다. 이 값을 설정하면 기존 쿼리 문자열이 대체됩니다. 들어오는 쿼리 문자열을 유지하려면 비워 둡니다. 쿼리 문자열은 {key}={value} 형식이어야 합니다. 첫 번째 ? 및 & 자동으로 추가되므로 앞에 포함하지 않고 여러 쿼리 문자열을 & 구분합니다. 문자열
redirectProtocol 트래픽이 리디렉션되는 대상의 프로토콜입니다. 'HttpOnly'
'HttpsOnly'
'MatchRequest'
redirectType 트래픽을 리디렉션할 때 규칙이 사용할 리디렉션 유형입니다. 'Found'
'Moved'
'PermanentRedirect'
'TemporaryRedirect'

RoutingRuleUpdateParametersWebApplicationFirewallPol...

Name Description
id 리소스 ID입니다. string

빠른 시작 템플릿

다음 빠른 시작 템플릿은 이 리소스 종류를 배포합니다.

템플릿 Description
Azure API Management 앞에서 Azure Front Door 만들기

Azure에 배포
이 샘플에서는 Azure API Management 앞에서 Azure Front Door를 전역 부하 분산 장치로 사용하는 방법을 보여 줍니다.
기본 Front Door 만들기

Azure에 배포
이 템플릿은 단일 백 엔드를 사용하여 기본 Front Door 구성을 만듭니다.
특정 경로에 대해 캐싱이 사용되도록 설정된 Front Door 만들기

Azure에 배포
이 템플릿은 정의된 라우팅 구성에 대해 캐싱을 사용하도록 설정된 Front Door를 만들어 워크로드에 대한 정적 자산을 캐싱합니다.
여러 백 엔드 및 백 엔드 풀이 있는 Front Door 만들기

Azure에 배포
이 템플릿은 백 엔드 풀의 여러 백 엔드 및 URL 경로에 따라 백 엔드 풀 간에 부하 분산이 구성된 Front Door를 만듭니다.
HTTP에서 HTTPS로 리디렉션을 사용하여 Front Door 만들기

Azure에 배포
이 템플릿은 HTTP에서 HTTPS로 리디렉션하기 위한 Front Door 구성을 만듭니다.
Front Door를 사용하여 사용자 지정 도메인 및 관리되는 인증서 추가

Azure에 배포
이 템플릿은 Front Door를 사용하여 사용자 지정 도메인을 온보딩하고 보호합니다.
Front Door를 사용하여 사용자 지정 도메인 및 사용자 지정 인증서 추가

Azure에 배포
이 템플릿은 고객 관리형 인증서를 사용하여 Front Door를 사용하여 사용자 지정 도메인을 온보딩하고 보호합니다.
Front Door에서 백 엔드에 대한 상태 프로브 제어

Azure에 배포
이 템플릿은 프로브 경로 및 프로브가 전송되는 간격을 설정하여 상태 프로브 설정을 변경하도록 Front Door를 업데이트합니다.
Active-Standby 구성을 사용하여 Front Door 만들기

Azure에 배포
이 템플릿은 Active-Standby 애플리케이션 토폴로지의 우선 순위 기반 라우팅을 보여 주는 Front Door를 만듭니다.
Front Door 호스트 이름에 대한 세션 선호도 구성

Azure에 배포
이 템플릿은 Front Door를 업데이트하여 프런트 엔드 호스트에 대한 세션 선호도를 사용하도록 설정하여 동일한 사용자 세션에서 동일한 백 엔드로 후속 트래픽을 보냅니다.

Terraform(AzAPI 공급자) 리소스 정의

frontDoors 리소스 종류는 다음을 위해 배포할 수 있습니다.

  • 리소스 그룹

각 API 버전에서 변경된 속성 목록은 변경 로그를 참조하세요.

리소스 형식

Microsoft.Network/frontDoors 리소스를 만들려면 템플릿에 다음 Terraform을 추가합니다.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Network/frontDoors@2021-06-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"
            }
          }
        }
      ]
    }
  })
}

RouteConfiguration 개체

@odata.type 속성을 설정하여 개체의 형식을 지정합니다.

#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration의 경우 다음을 사용합니다.

  @odata.type = "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration"
  backendPool = {
    id = "string"
  }
  cacheConfiguration = {
    cacheDuration = "string"
    dynamicCompression = "string"
    queryParameters = "string"
    queryParameterStripDirective = "string"
  }
  customForwardingPath = "string"
  forwardingProtocol = "string"

#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration의 경우 다음을 사용합니다.

  @odata.type = "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration"
  customFragment = "string"
  customHost = "string"
  customPath = "string"
  customQueryString = "string"
  redirectProtocol = "string"
  redirectType = "string"

속성 값

frontDoors

Name Description
형식 리소스 종류 "Microsoft.Network/frontDoors@2021-06-01"
name 리소스 이름 string(필수)

문자 제한: 5-64

유효한 문자:
영숫자 및 하이픈

영숫자로 시작하고 끝납니다.

리소스 이름은 Azure에서 고유해야 합니다.
위치 리소스 위치. string
parent_id 리소스 그룹에 배포하려면 해당 리소스 그룹의 ID를 사용합니다. string(필수)
tags 리소스 태그. 태그 이름 및 값의 사전입니다.
properties Front Door Load Balancer 속성 FrontDoorProperties

FrontDoorProperties

Name Description
backendPools 라우팅 규칙에 사용할 수 있는 백 엔드 풀입니다. BackendPool[]
backendPoolsSettings 모든 backendPools에 대한 설정 BackendPoolsSettings
enabledState Front Door 부하 분산 장치의 선택적 상태입니다. 허용되는 값은 'Enabled' 또는 'Disabled'입니다. "사용 안 함"
"사용"
friendlyName frontDoor의 이름 문자열
frontendEndpoints 라우팅 규칙에 사용할 수 있는 프런트 엔드 엔드포인트입니다. FrontendEndpoint[]
healthProbeSettings 이 Front Door 인스턴스와 연결된 상태 프로브 설정입니다. HealthProbeSettingsModel[]
loadBalancingSettings 이 Front Door 인스턴스와 연결된 부하 분산 설정입니다. LoadBalancingSettingsModel[]
routingRules 이 Front Door와 연결된 라우팅 규칙입니다. RoutingRule[]

BackendPool

Name Description
id 리소스 ID입니다. 문자열
name 리소스 이름입니다. 문자열
properties Front Door 백 엔드 풀의 속성 BackendPoolProperties

BackendPoolProperties

Name Description
백엔드 이 풀의 백 엔드 집합 백 엔드[]
healthProbeSettings 백 엔드 풀에 대한 L7 상태 프로브 설정 SubResource
loadBalancingSettings 백 엔드 풀에 대한 부하 분산 설정 SubResource

백 엔드

Name Description
address 백 엔드의 위치(IP 주소 또는 FQDN) 문자열
backendHostHeader 백 엔드에 전송되는 호스트 헤더로 사용할 값입니다. 비어 있거나 지정되지 않은 경우 이 기본값은 들어오는 호스트로 설정됩니다. 문자열
enabledState 이 백 엔드의 사용을 활성화할지 여부입니다. 허용되는 값은 'Enabled' 또는 'Disabled'입니다. "사용 안 함"
"사용"
httpPort HTTP TCP 포트 번호입니다. 1~65535 사이여야 합니다. int
httpsPort HTTPS TCP 포트 번호입니다. 1~65535 사이여야 합니다. int
priority 부하 분산에 사용할 우선 순위입니다. 우선 순위가 낮은 백 엔드가 정상인 경우 더 높은 우선 순위는 부하 분산에 사용되지 않습니다. int
privateLinkAlias Private Link 리소스의 별칭입니다. 이 선택적 필드를 채우는 것은 이 백 엔드가 'Private'임을 나타냅니다. string
privateLinkApprovalMessage Private Link 연결하기 위해 승인 요청에 포함할 사용자 지정 메시지 string
privateLinkLocation Private Link 리소스의 위치입니다. 'privateLinkResourceId'가 채워진 경우에만 필요합니다. string
privateLinkResourceId Private Link 리소스의 리소스 ID입니다. 이 선택적 필드를 채우는 것은 이 백 엔드가 'Private'임을 나타냅니다. string
체중 부하 분산을 위한 이 엔드포인트의 가중치입니다. int

SubResource

Name Description
id 리소스 ID입니다. 문자열

BackendPoolsSettings

Name Description
enforceCertificateNameCheck 모든 백 엔드 풀에 HTTPS 요청에 인증서 이름 검사 적용할지 여부입니다. HTTPS가 아닌 요청에는 영향을 주지 않습니다. "사용 안 함"
"사용"
sendRecvTimeoutSeconds 백 엔드로 요청을 전달할 때 시간 제한을 보내고 받습니다. 시간 제한에 도달하면 요청이 실패하고 반환됩니다. int

FrontendEndpoint

Name Description
id 리소스 ID입니다. 문자열
name 리소스 이름입니다. 문자열
properties 프런트 엔드 엔드포인트의 속성 FrontendEndpointProperties

FrontendEndpointProperties

Name Description
hostName frontendEndpoint의 호스트 이름입니다. 도메인 이름이어야 합니다. 문자열
sessionAffinityEnabledState 이 호스트에서 세션 선호도를 허용할지 여부입니다. 유효한 옵션은 '사용' 또는 '사용 안 함'입니다. "사용 안 함"
"사용"
sessionAffinityTtlSeconds 하지 않는. 이 필드를 무시합니다. 해당하는 경우 세션 선호도에 사용할 TTL(초 단위)입니다. int
webApplicationFirewallPolicyLink 각 호스트에 대한 Web Application Firewall 정책을 정의합니다(해당하는 경우). FrontendEndpointUpdateParametersWebApplicationFirewa...

FrontendEndpointUpdateParametersWebApplicationFirewa...

Name Description
id 리소스 ID입니다. 문자열

HealthProbeSettingsModel

Name Description
id 리소스 ID입니다. 문자열
name 리소스 이름입니다. 문자열
properties 상태 프로브 설정의 속성 HealthProbeSettingsProperties

HealthProbeSettingsProperties

Name Description
enabledState 백 엔드 풀 아래에 정의된 백 엔드에 대해 상태 프로브를 만들 수 있도록 설정할지 여부입니다. 단일 지원 백 엔드 풀에 사용하도록 설정된 단일 백 엔드가 있는 경우에만 상태 프로브를 사용하지 않도록 설정할 수 있습니다. "사용 안 함"
"사용"
healthProbeMethod 백 엔드 풀 아래에 정의된 백 엔드를 검색하는 데 사용할 HTTP 메서드를 구성합니다. "GET"
"HEAD"
intervalInSeconds 상태 프로브 간격(초)입니다. int
path 상태 프로브에 사용할 경로입니다. 기본값은 /입니다. string
protocol 이 프로브에 사용할 프로토콜 체계 "Http"
"Https"

LoadBalancingSettingsModel

Name Description
id 리소스 ID입니다. 문자열
name 리소스 이름입니다. 문자열
properties 부하 분산 설정의 속성 LoadBalancingSettingsProperties

LoadBalancingSettingsProperties

Name Description
additionalLatencyMilliseconds 프로브가 가장 낮은 대기 시간 버킷에 속하는 추가 대기 시간(밀리초) int
sampleSize 부하 분산 결정을 위해 고려할 샘플 수 int
successfulSamplesRequired 성공해야 하는 샘플 기간 내의 샘플 수 int

RoutingRule

Name Description
id 리소스 ID입니다. 문자열
name 리소스 이름입니다. 문자열
properties Front Door 라우팅 규칙의 속성 RoutingRuleProperties

RoutingRuleProperties

Name Description
acceptedProtocols 이 규칙과 일치하는 프로토콜 체계 다음 중 어느 것을 포함하는 문자열 배열:
"Http"
"Https"
enabledState 이 규칙의 사용을 활성화할지 여부입니다. 허용되는 값은 'Enabled' 또는 'Disabled'입니다. "사용 안 함"
"사용"
frontendEndpoints 이 규칙과 연결된 프런트 엔드 엔드포인트 SubResource[]
patternsToMatch 규칙의 경로 패턴입니다. string[]
routeConfiguration 라우팅 구성에 대한 참조입니다. RouteConfiguration
rulesEngine 이 경로에 적용할 특정 규칙 엔진 구성에 대한 참조입니다. SubResource
webApplicationFirewallPolicyLink 각 라우팅 규칙에 대한 Web Application Firewall 정책을 정의합니다(해당하는 경우). RoutingRuleUpdateParametersWebApplicationFirewallPol...

RouteConfiguration

Name Description
@odata.type 개체 유형 설정 #Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration
#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration (필수)

ForwardingConfiguration

Name Description
@odata.type "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration" (필수)
backendPool 이 규칙이 라우팅하는 BackendPool에 대한 참조입니다. SubResource
cacheConfiguration 이 규칙과 연결된 캐싱 구성입니다. CacheConfiguration
customForwardingPath 이 규칙과 일치하는 리소스 경로를 다시 작성하는 데 사용되는 사용자 지정 경로입니다. 들어오는 경로를 사용하려면 비워 둡니다. 문자열
forwardingProtocol 이 규칙이 트래픽을 백 엔드로 전달할 때 사용하는 프로토콜입니다. "HttpOnly"
"HttpsOnly"
"MatchRequest"

CacheConfiguration

Name Description
cacheDuration 콘텐츠를 캐시해야 하는 기간입니다. 허용되는 형식은 ISO 8601 형식(http://en.wikipedia.org/wiki/ISO_8601#Durations)입니다. HTTP를 사용하려면 값이 1년 이하여야 합니다. 문자열
dynamicCompression 캐시된 콘텐츠에 동적 압축을 사용할지 여부 "사용 안 함"
"사용"
queryParameters 포함하거나 제외할 쿼리 매개 변수(쉼표로 구분됨). 문자열
queryParameterStripDirective 캐시 키를 구성할 때 URL 쿼리 용어 처리 "StripAll"
"StripAllExcept"
"StripNone"
"StripOnly"

RedirectConfiguration

Name Description
@odata.type "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration"(필수)
customFragment 리디렉션 URL에 추가할 조각입니다. 조각은 #다음에 오는 URL의 일부입니다. #을 포함하지 마세요. string
customHost 리디렉션할 호스트입니다. 들어오는 호스트를 대상 호스트로 사용하려면 비워 둡니다. string
customPath 리디렉션할 전체 경로입니다. 경로는 비어 있을 수 없으며 /로 시작해야 합니다. 들어오는 경로를 대상 경로로 사용하려면 비워 둡니다. 문자열
customQueryString 리디렉션 URL에 배치할 쿼리 문자열 집합입니다. 이 값을 설정하면 기존 쿼리 문자열이 대체됩니다. 들어오는 쿼리 문자열을 유지하려면 비워 둡니다. 쿼리 문자열은 {key}={value} 형식이어야 합니다. 첫 번째 ? 및 & 자동으로 추가되므로 앞에 포함하지 말고 여러 쿼리 문자열을 & 구분합니다. string
redirectProtocol 트래픽이 리디렉션되는 대상의 프로토콜입니다. "HttpOnly"
"HttpsOnly"
"MatchRequest"
redirectType 트래픽을 리디렉션할 때 규칙이 사용할 리디렉션 유형입니다. "찾을 수 있습니다."
"이동됨"
"PermanentRedirect"
"TemporaryRedirect"

RoutingRuleUpdateParametersWebApplicationFirewallPol...

Name Description
id 리소스 ID입니다. string