Microsoft.Network frontDoors 2021-06-01
Bicep 資源定義
frontDoors 資源類型可以使用目標作業來部署:
- 資源群組 - 請參閱 資源群組部署命令
如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔。
資源格式
若要建立 Microsoft.Network/frontDoors 資源,請將下列 Bicep 新增至範本。
resource symbolicname 'Microsoft.Network/frontDoors@2021-06-01' = {
location: 'string'
name: 'string'
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'
}
}
}
]
}
tags: {
{customized property}: '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'
}
屬性值
後端
名字 | 描述 | 價值 |
---|---|---|
位址 | 後端的位置(IP 位址或 FQDN) | 字串 |
backendHostHeader | 要作為傳送至後端之主機標頭的值。 如果空白或未指定,這會預設為傳入主機。 | 字串 |
enabledState | 是否要啟用此後端的使用。 允許的值為 'Enabled' 或 'Disabled' | 'Disabled' 'Enabled' |
httpPort | HTTP TCP 連接埠號碼。 必須介於 1 到 65535 之間。 | int 約束: 最小值 = 1 最大值 = 65535 |
httpsPort | HTTPS TCP 連接埠號碼。 必須介於 1 到 65535 之間。 | int 約束: 最小值 = 1 最大值 = 65535 |
優先權 | 用於負載平衡的優先順序。 如果任何較低優先順序的後端狀況良好,則不會使用較高優先順序的優先順序來進行負載平衡。 | int 約束: 最小值 = 1 最大值 = 5 |
privateLinkAlias | Private Link 資源的別名。 填入此選擇性欄位表示此後端為「私人」 | 字串 |
privateLinkApprovalMessage | 要包含在核准要求中以連線至 Private Link 的自定義訊息 | 字串 |
privateLinkLocation | Private Link 資源的位置。 只有在填入 『privateLinkResourceId』 時才需要 | 字串 |
privateLinkResourceId | Private Link 資源的資源標識碼。 填入此選擇性欄位表示此後端為「私人」 | 字串 |
重量 | 用於負載平衡之此端點的權數。 | int 約束: 最小值 = 1 最大值 = 1000 |
BackendPool
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼。 | 字串 |
名字 | 資源名稱。 | 字串 |
性能 | Front Door 後端集區的屬性 | BackendPoolProperties |
BackendPoolProperties
名字 | 描述 | 價值 |
---|---|---|
後端 | 此集區的後端集合 | 後端[] |
healthProbeSettings | 後端集區的 L7 健康情況探查設定 | SubResource |
loadBalancingSettings | 後端集區的負載平衡設定 | SubResource |
BackendPoolsSettings
名字 | 描述 | 價值 |
---|---|---|
enforceCertificateNameCheck | 是否對所有後端集區的 HTTPS 要求強制執行憑證名稱檢查。 對非 HTTPS 要求沒有任何影響。 | 'Disabled' 'Enabled' |
sendRecvTimeoutSeconds | 將要求轉送至後端時傳送和接收逾時。 達到逾時時時,要求會失敗並傳回。 | int 約束: 最小值 = 16 |
CacheConfiguration
名字 | 描述 | 價值 |
---|---|---|
cacheDuration | 需要快取內容的持續時間。 允許的格式為 ISO 8601 格式 (http://en.wikipedia.org/wiki/ISO_8601#Durations)。 HTTP 要求值不超過一年 | 字串 |
dynamicCompression | 是否要針對快取的內容使用動態壓縮 | 'Disabled' 'Enabled' |
queryParameters | 要包含或排除的查詢參數(以逗號分隔)。 | 字串 |
queryParameterStripDirective | 在形成快取索引鍵時處理 URL 查詢字詞。 | 'StripAll' 'StripAllExcept' 'StripNone' 'StripOnly' |
ForwardingConfiguration
名字 | 描述 | 價值 |
---|---|---|
@odata.type | '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration' (必要) | |
backendPool | 此規則路由傳送至的 BackendPool 參考。 | SubResource |
cacheConfiguration | 與此規則相關聯的快取組態。 | CacheConfiguration |
customForwardingPath | 用來重寫此規則所比對之資源路徑的自定義路徑。 保留空白以使用傳入路徑。 | 字串 |
forwardingProtocol | 將流量轉送至後端時,會使用此規則的通訊協定。 | 'HttpOnly' 'HttpsOnly' 'MatchRequest' |
FrontDoorProperties
名字 | 描述 | 價值 |
---|---|---|
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[] |
FrontendEndpoint
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼。 | 字串 |
名字 | 資源名稱。 | 字串 |
性能 | 前端端點的屬性 | FrontendEndpointProperties |
FrontendEndpointProperties
名字 | 描述 | 價值 |
---|---|---|
hostName | frontendEndpoint 的主機名。 必須是功能變數名稱。 | 字串 |
sessionAffinityEnabledState | 是否要允許此主機上的會話親和性。 有效的選項為 'Enabled' 或 'Disabled' | 'Disabled' 'Enabled' |
sessionAffinityTtlSeconds | 閑置。 將會忽略此欄位。 如果適用,則為會話親和性以秒為單位使用的TTL。 | int |
webApplicationFirewallPolicyLink | 定義每個主機的 Web 應用程式防火牆原則(如果適用) | FrontendEndpointUpdateParametersWebApplicationFirewallPolicyLink |
FrontendEndpointUpdateParametersWebApplicationFirewallPolicyLink
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼。 | 字串 |
HealthProbeSettingsModel
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼。 | 字串 |
名字 | 資源名稱。 | 字串 |
性能 | 健康情況探查設定的屬性 | HealthProbeSettingsProperties |
HealthProbeSettingsProperties
名字 | 描述 | 價值 |
---|---|---|
enabledState | 是否要針對在 backendPools 下定義的後端啟用健康情況探查。 只有在單一已啟用後端集區中有單一啟用後端時,才能停用健康情況探查。 | 'Disabled' 'Enabled' |
healthProbeMethod | 設定用來探查 backendPools 下定義的後端的 HTTP 方法。 | 'GET' 'HEAD' |
intervalInSeconds | 健康情況探查之間的秒數。 | int |
路徑 | 用於健康情況探查的路徑。 預設值為 / | 字串 |
協定 | 要用於此探查的通訊協定配置 | 'Http' 'Https' |
LoadBalancingSettingsModel
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼。 | 字串 |
名字 | 資源名稱。 | 字串 |
性能 | 負載平衡設定的屬性 | LoadBalancingSettingsProperties |
LoadBalancingSettingsProperties
名字 | 描述 | 價值 |
---|---|---|
additionalLatencyMilliseconds | 探查要落入最低延遲值區以毫秒為單位的額外延遲 | int |
sampleSize | 要考慮進行負載平衡決策的範例數目 | int |
successfulSamplesRequired | 必須成功之範例期間內的樣本數目 | int |
Microsoft.Network/frontDoors
名字 | 描述 | 價值 |
---|---|---|
位置 | 資源位置。 | 字串 |
名字 | 資源名稱 | 字串 約束: 最小長度 = 5 最大長度 = 5 模式 = ^[a-zA-Z0-9]+([-a-zA-Z0-9]?[a-zA-Z0-9])*$ (必要) |
性能 | Front Door Load Balancer 的屬性 | FrontDoorProperties |
標籤 | 資源標籤 | 標記名稱和值的字典。 請參閱範本中的 標籤 |
RedirectConfiguration
名字 | 描述 | 價值 |
---|---|---|
@odata.type | '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' (必要) | |
customFragment | 要新增至重新導向 URL 的片段。 片段是之後 URL 的一部分。 請勿包含 #。 | 字串 |
customHost | 要重新導向的主機。 保留空白,以使用傳入主機作為目的地主機。 | 字串 |
customPath | 要重新導向的完整路徑。 路徑不可以是空的,而且必須以 /開頭。 保留空白,以使用傳入路徑作為目的地路徑。 | 字串 |
customQueryString | 要放在重新導向 URL 中的查詢字串集。 設定此值會取代任何現有的查詢字串;保留空白以保留傳入查詢字串。 查詢字串必須 <索引鍵>=<值> 格式。 第一個 ? 和 & 會自動新增,因此請勿將它們包含在前面,但會使用 &分隔多個查詢字串。 | 字串 |
redirectProtocol | 將流量重新導向目的地的通訊協定 | 'HttpOnly' 'HttpsOnly' 'MatchRequest' |
redirectType | 重新導向類型,規則會在重新導向流量時使用。 | 'Found' 'Moved' 'PermanentRedirect' 'TemporaryRedirect' |
ResourceTags
名字 | 描述 | 價值 |
---|
RouteConfiguration
名字 | 描述 | 價值 |
---|---|---|
@odata.type | 針對 forwardingConfiguration 類型,設定為 '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration'。 針對 RedirectConfiguration 類型設定為 '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration',。 | '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration' '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' (必要) |
RoutingRule
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼。 | 字串 |
名字 | 資源名稱。 | 字串 |
性能 | Front Door 路由規則的屬性 | RoutingRuleProperties |
RoutingRuleProperties
名字 | 描述 | 價值 |
---|---|---|
acceptedProtocols | 要符合此規則的通訊協定配置 | 包含任何的字串數組: 'Http' 'Https' |
enabledState | 是否要啟用此規則的使用。 允許的值為 'Enabled' 或 'Disabled' | 'Disabled' 'Enabled' |
frontendEndpoints | 與此規則相關聯的前端端點 | SubResource[] |
patternsToMatch | 規則的路由模式。 | string[] |
routeConfiguration | 路由組態的參考。 | RouteConfiguration |
rulesEngine | 要套用至此路由的特定規則引擎組態參考。 | SubResource |
webApplicationFirewallPolicyLink | 定義每個路由規則的 Web 應用程式防火牆原則(如果適用) | RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink |
RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼。 | 字串 |
SubResource
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼。 | 字串 |
快速入門範例
下列快速入門範例會部署此資源類型。
Bicep 檔案 | 描述 |
---|---|
使用 Front Door 新增自訂網域和自定義憑證 | 此範本會使用客戶管理的憑證將 Front Door 上線並保護自定義網域 |
使用 Front Door 新增自定義網域和受控憑證 | 此範本會使用 Front Door 將自訂網域上線並保護 |
在 Front Door 上控制後端的健康情況探查 | 此範本會更新 Front Door,藉由設定探查路徑,以及傳送探查的間隔來變更健康情況探查設定。 |
建立基本 Front Door | 此範本會建立具有單一後端的基本 Front Door 設定。 |
使用 HTTP 至 HTTPS 重新導向建立 Front Door | 此範本會建立 HTTP 至 HTTPS 重新導向的 Front Door 設定。 |
ARM 樣本資源定義
frontDoors 資源類型可以使用目標作業來部署:
- 資源群組 - 請參閱 資源群組部署命令
如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔。
資源格式
若要建立 Microsoft.Network/frontDoors 資源,請將下列 JSON 新增至範本。
{
"type": "Microsoft.Network/frontDoors",
"apiVersion": "2021-06-01",
"name": "string",
"location": "string",
"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"
}
}
}
]
},
"tags": {
"{customized property}": "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"
}
屬性值
後端
名字 | 描述 | 價值 |
---|---|---|
位址 | 後端的位置(IP 位址或 FQDN) | 字串 |
backendHostHeader | 要作為傳送至後端之主機標頭的值。 如果空白或未指定,這會預設為傳入主機。 | 字串 |
enabledState | 是否要啟用此後端的使用。 允許的值為 'Enabled' 或 'Disabled' | 'Disabled' 'Enabled' |
httpPort | HTTP TCP 連接埠號碼。 必須介於 1 到 65535 之間。 | int 約束: 最小值 = 1 最大值 = 65535 |
httpsPort | HTTPS TCP 連接埠號碼。 必須介於 1 到 65535 之間。 | int 約束: 最小值 = 1 最大值 = 65535 |
優先權 | 用於負載平衡的優先順序。 如果任何較低優先順序的後端狀況良好,則不會使用較高優先順序的優先順序來進行負載平衡。 | int 約束: 最小值 = 1 最大值 = 5 |
privateLinkAlias | Private Link 資源的別名。 填入此選擇性欄位表示此後端為「私人」 | 字串 |
privateLinkApprovalMessage | 要包含在核准要求中以連線至 Private Link 的自定義訊息 | 字串 |
privateLinkLocation | Private Link 資源的位置。 只有在填入 『privateLinkResourceId』 時才需要 | 字串 |
privateLinkResourceId | Private Link 資源的資源標識碼。 填入此選擇性欄位表示此後端為「私人」 | 字串 |
重量 | 用於負載平衡之此端點的權數。 | int 約束: 最小值 = 1 最大值 = 1000 |
BackendPool
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼。 | 字串 |
名字 | 資源名稱。 | 字串 |
性能 | Front Door 後端集區的屬性 | BackendPoolProperties |
BackendPoolProperties
名字 | 描述 | 價值 |
---|---|---|
後端 | 此集區的後端集合 | 後端[] |
healthProbeSettings | 後端集區的 L7 健康情況探查設定 | SubResource |
loadBalancingSettings | 後端集區的負載平衡設定 | SubResource |
BackendPoolsSettings
名字 | 描述 | 價值 |
---|---|---|
enforceCertificateNameCheck | 是否對所有後端集區的 HTTPS 要求強制執行憑證名稱檢查。 對非 HTTPS 要求沒有任何影響。 | 'Disabled' 'Enabled' |
sendRecvTimeoutSeconds | 將要求轉送至後端時傳送和接收逾時。 達到逾時時時,要求會失敗並傳回。 | int 約束: 最小值 = 16 |
CacheConfiguration
名字 | 描述 | 價值 |
---|---|---|
cacheDuration | 需要快取內容的持續時間。 允許的格式為 ISO 8601 格式 (http://en.wikipedia.org/wiki/ISO_8601#Durations)。 HTTP 要求值不超過一年 | 字串 |
dynamicCompression | 是否要針對快取的內容使用動態壓縮 | 'Disabled' 'Enabled' |
queryParameters | 要包含或排除的查詢參數(以逗號分隔)。 | 字串 |
queryParameterStripDirective | 在形成快取索引鍵時處理 URL 查詢字詞。 | 'StripAll' 'StripAllExcept' 'StripNone' 'StripOnly' |
ForwardingConfiguration
名字 | 描述 | 價值 |
---|---|---|
@odata.type | '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration' (必要) | |
backendPool | 此規則路由傳送至的 BackendPool 參考。 | SubResource |
cacheConfiguration | 與此規則相關聯的快取組態。 | CacheConfiguration |
customForwardingPath | 用來重寫此規則所比對之資源路徑的自定義路徑。 保留空白以使用傳入路徑。 | 字串 |
forwardingProtocol | 將流量轉送至後端時,會使用此規則的通訊協定。 | 'HttpOnly' 'HttpsOnly' 'MatchRequest' |
FrontDoorProperties
名字 | 描述 | 價值 |
---|---|---|
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[] |
FrontendEndpoint
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼。 | 字串 |
名字 | 資源名稱。 | 字串 |
性能 | 前端端點的屬性 | FrontendEndpointProperties |
FrontendEndpointProperties
名字 | 描述 | 價值 |
---|---|---|
hostName | frontendEndpoint 的主機名。 必須是功能變數名稱。 | 字串 |
sessionAffinityEnabledState | 是否要允許此主機上的會話親和性。 有效的選項為 'Enabled' 或 'Disabled' | 'Disabled' 'Enabled' |
sessionAffinityTtlSeconds | 閑置。 將會忽略此欄位。 如果適用,則為會話親和性以秒為單位使用的TTL。 | int |
webApplicationFirewallPolicyLink | 定義每個主機的 Web 應用程式防火牆原則(如果適用) | FrontendEndpointUpdateParametersWebApplicationFirewallPolicyLink |
FrontendEndpointUpdateParametersWebApplicationFirewallPolicyLink
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼。 | 字串 |
HealthProbeSettingsModel
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼。 | 字串 |
名字 | 資源名稱。 | 字串 |
性能 | 健康情況探查設定的屬性 | HealthProbeSettingsProperties |
HealthProbeSettingsProperties
名字 | 描述 | 價值 |
---|---|---|
enabledState | 是否要針對在 backendPools 下定義的後端啟用健康情況探查。 只有在單一已啟用後端集區中有單一啟用後端時,才能停用健康情況探查。 | 'Disabled' 'Enabled' |
healthProbeMethod | 設定用來探查 backendPools 下定義的後端的 HTTP 方法。 | 'GET' 'HEAD' |
intervalInSeconds | 健康情況探查之間的秒數。 | int |
路徑 | 用於健康情況探查的路徑。 預設值為 / | 字串 |
協定 | 要用於此探查的通訊協定配置 | 'Http' 'Https' |
LoadBalancingSettingsModel
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼。 | 字串 |
名字 | 資源名稱。 | 字串 |
性能 | 負載平衡設定的屬性 | LoadBalancingSettingsProperties |
LoadBalancingSettingsProperties
名字 | 描述 | 價值 |
---|---|---|
additionalLatencyMilliseconds | 探查要落入最低延遲值區以毫秒為單位的額外延遲 | int |
sampleSize | 要考慮進行負載平衡決策的範例數目 | int |
successfulSamplesRequired | 必須成功之範例期間內的樣本數目 | int |
Microsoft.Network/frontDoors
名字 | 描述 | 價值 |
---|---|---|
apiVersion | API 版本 | '2021-06-01' |
位置 | 資源位置。 | 字串 |
名字 | 資源名稱 | 字串 約束: 最小長度 = 5 最大長度 = 5 模式 = ^[a-zA-Z0-9]+([-a-zA-Z0-9]?[a-zA-Z0-9])*$ (必要) |
性能 | Front Door Load Balancer 的屬性 | FrontDoorProperties |
標籤 | 資源標籤 | 標記名稱和值的字典。 請參閱範本中的 標籤 |
類型 | 資源類型 | 'Microsoft.Network/frontDoors' |
RedirectConfiguration
名字 | 描述 | 價值 |
---|---|---|
@odata.type | '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' (必要) | |
customFragment | 要新增至重新導向 URL 的片段。 片段是之後 URL 的一部分。 請勿包含 #。 | 字串 |
customHost | 要重新導向的主機。 保留空白,以使用傳入主機作為目的地主機。 | 字串 |
customPath | 要重新導向的完整路徑。 路徑不可以是空的,而且必須以 /開頭。 保留空白,以使用傳入路徑作為目的地路徑。 | 字串 |
customQueryString | 要放在重新導向 URL 中的查詢字串集。 設定此值會取代任何現有的查詢字串;保留空白以保留傳入查詢字串。 查詢字串必須 <索引鍵>=<值> 格式。 第一個 ? 和 & 會自動新增,因此請勿將它們包含在前面,但會使用 &分隔多個查詢字串。 | 字串 |
redirectProtocol | 將流量重新導向目的地的通訊協定 | 'HttpOnly' 'HttpsOnly' 'MatchRequest' |
redirectType | 重新導向類型,規則會在重新導向流量時使用。 | 'Found' 'Moved' 'PermanentRedirect' 'TemporaryRedirect' |
ResourceTags
名字 | 描述 | 價值 |
---|
RouteConfiguration
名字 | 描述 | 價值 |
---|---|---|
@odata.type | 針對 forwardingConfiguration 類型,設定為 '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration'。 針對 RedirectConfiguration 類型設定為 '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration',。 | '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration' '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' (必要) |
RoutingRule
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼。 | 字串 |
名字 | 資源名稱。 | 字串 |
性能 | Front Door 路由規則的屬性 | RoutingRuleProperties |
RoutingRuleProperties
名字 | 描述 | 價值 |
---|---|---|
acceptedProtocols | 要符合此規則的通訊協定配置 | 包含任何的字串數組: 'Http' 'Https' |
enabledState | 是否要啟用此規則的使用。 允許的值為 'Enabled' 或 'Disabled' | 'Disabled' 'Enabled' |
frontendEndpoints | 與此規則相關聯的前端端點 | SubResource[] |
patternsToMatch | 規則的路由模式。 | string[] |
routeConfiguration | 路由組態的參考。 | RouteConfiguration |
rulesEngine | 要套用至此路由的特定規則引擎組態參考。 | SubResource |
webApplicationFirewallPolicyLink | 定義每個路由規則的 Web 應用程式防火牆原則(如果適用) | RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink |
RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼。 | 字串 |
SubResource
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼。 | 字串 |
快速入門範本
下列快速入門範本會部署此資源類型。
範本 | 描述 |
---|---|
使用 Front Door 新增自訂網域和自定義憑證 |
此範本會使用客戶管理的憑證將 Front Door 上線並保護自定義網域 |
使用 Front Door 新增自定義網域和受控憑證 |
此範本會使用 Front Door 將自訂網域上線並保護 |
為 Front Door 主機名設定會話親和性 |
此範本會更新 Front Door,以啟用前端主機的會話親和性,藉此將來自相同用戶會話的後續流量傳送至相同的後端。 |
在 Front Door 上控制後端的健康情況探查 |
此範本會更新 Front Door,藉由設定探查路徑,以及傳送探查的間隔來變更健康情況探查設定。 |
建立基本 Front Door |
此範本會建立具有單一後端的基本 Front Door 設定。 |
使用 HTTP 至 HTTPS 重新導向建立 Front Door |
此範本會建立 HTTP 至 HTTPS 重新導向的 Front Door 設定。 |
建立具有多個後端和後端集區的 Front Door |
此範本會建立 Front Door,並在後端集區中針對多個後端設定負載平衡,以及根據 URL 路徑跨後端集區。 |
在 Azure API 管理 前建立 Azure Front Door |
此範例示範如何在 Azure API 管理前使用 Azure Front Door 作為全域負載平衡器。 |
使用 Active-Standby 組態建立 Front Door |
此範本會建立 Front Door,示範 Active-Standby 應用程式拓撲的優先順序型路由。 |
為特定路由啟用快取的建立 Front Door |
此範本會建立 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"
tags = {
{customized property} = "string"
}
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"
}
屬性值
後端
名字 | 描述 | 價值 |
---|---|---|
位址 | 後端的位置(IP 位址或 FQDN) | 字串 |
backendHostHeader | 要作為傳送至後端之主機標頭的值。 如果空白或未指定,這會預設為傳入主機。 | 字串 |
enabledState | 是否要啟用此後端的使用。 允許的值為 'Enabled' 或 'Disabled' | 'Disabled' 'Enabled' |
httpPort | HTTP TCP 連接埠號碼。 必須介於 1 到 65535 之間。 | int 約束: 最小值 = 1 最大值 = 65535 |
httpsPort | HTTPS TCP 連接埠號碼。 必須介於 1 到 65535 之間。 | int 約束: 最小值 = 1 最大值 = 65535 |
優先權 | 用於負載平衡的優先順序。 如果任何較低優先順序的後端狀況良好,則不會使用較高優先順序的優先順序來進行負載平衡。 | int 約束: 最小值 = 1 最大值 = 5 |
privateLinkAlias | Private Link 資源的別名。 填入此選擇性欄位表示此後端為「私人」 | 字串 |
privateLinkApprovalMessage | 要包含在核准要求中以連線至 Private Link 的自定義訊息 | 字串 |
privateLinkLocation | Private Link 資源的位置。 只有在填入 『privateLinkResourceId』 時才需要 | 字串 |
privateLinkResourceId | Private Link 資源的資源標識碼。 填入此選擇性欄位表示此後端為「私人」 | 字串 |
重量 | 用於負載平衡之此端點的權數。 | int 約束: 最小值 = 1 最大值 = 1000 |
BackendPool
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼。 | 字串 |
名字 | 資源名稱。 | 字串 |
性能 | Front Door 後端集區的屬性 | BackendPoolProperties |
BackendPoolProperties
名字 | 描述 | 價值 |
---|---|---|
後端 | 此集區的後端集合 | 後端[] |
healthProbeSettings | 後端集區的 L7 健康情況探查設定 | SubResource |
loadBalancingSettings | 後端集區的負載平衡設定 | SubResource |
BackendPoolsSettings
名字 | 描述 | 價值 |
---|---|---|
enforceCertificateNameCheck | 是否對所有後端集區的 HTTPS 要求強制執行憑證名稱檢查。 對非 HTTPS 要求沒有任何影響。 | 'Disabled' 'Enabled' |
sendRecvTimeoutSeconds | 將要求轉送至後端時傳送和接收逾時。 達到逾時時時,要求會失敗並傳回。 | int 約束: 最小值 = 16 |
CacheConfiguration
名字 | 描述 | 價值 |
---|---|---|
cacheDuration | 需要快取內容的持續時間。 允許的格式為 ISO 8601 格式 (http://en.wikipedia.org/wiki/ISO_8601#Durations)。 HTTP 要求值不超過一年 | 字串 |
dynamicCompression | 是否要針對快取的內容使用動態壓縮 | 'Disabled' 'Enabled' |
queryParameters | 要包含或排除的查詢參數(以逗號分隔)。 | 字串 |
queryParameterStripDirective | 在形成快取索引鍵時處理 URL 查詢字詞。 | 'StripAll' 'StripAllExcept' 'StripNone' 'StripOnly' |
ForwardingConfiguration
名字 | 描述 | 價值 |
---|---|---|
@odata.type | '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration' (必要) | |
backendPool | 此規則路由傳送至的 BackendPool 參考。 | SubResource |
cacheConfiguration | 與此規則相關聯的快取組態。 | CacheConfiguration |
customForwardingPath | 用來重寫此規則所比對之資源路徑的自定義路徑。 保留空白以使用傳入路徑。 | 字串 |
forwardingProtocol | 將流量轉送至後端時,會使用此規則的通訊協定。 | 'HttpOnly' 'HttpsOnly' 'MatchRequest' |
FrontDoorProperties
名字 | 描述 | 價值 |
---|---|---|
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[] |
FrontendEndpoint
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼。 | 字串 |
名字 | 資源名稱。 | 字串 |
性能 | 前端端點的屬性 | FrontendEndpointProperties |
FrontendEndpointProperties
名字 | 描述 | 價值 |
---|---|---|
hostName | frontendEndpoint 的主機名。 必須是功能變數名稱。 | 字串 |
sessionAffinityEnabledState | 是否要允許此主機上的會話親和性。 有效的選項為 'Enabled' 或 'Disabled' | 'Disabled' 'Enabled' |
sessionAffinityTtlSeconds | 閑置。 將會忽略此欄位。 如果適用,則為會話親和性以秒為單位使用的TTL。 | int |
webApplicationFirewallPolicyLink | 定義每個主機的 Web 應用程式防火牆原則(如果適用) | FrontendEndpointUpdateParametersWebApplicationFirewallPolicyLink |
FrontendEndpointUpdateParametersWebApplicationFirewallPolicyLink
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼。 | 字串 |
HealthProbeSettingsModel
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼。 | 字串 |
名字 | 資源名稱。 | 字串 |
性能 | 健康情況探查設定的屬性 | HealthProbeSettingsProperties |
HealthProbeSettingsProperties
名字 | 描述 | 價值 |
---|---|---|
enabledState | 是否要針對在 backendPools 下定義的後端啟用健康情況探查。 只有在單一已啟用後端集區中有單一啟用後端時,才能停用健康情況探查。 | 'Disabled' 'Enabled' |
healthProbeMethod | 設定用來探查 backendPools 下定義的後端的 HTTP 方法。 | 'GET' 'HEAD' |
intervalInSeconds | 健康情況探查之間的秒數。 | int |
路徑 | 用於健康情況探查的路徑。 預設值為 / | 字串 |
協定 | 要用於此探查的通訊協定配置 | 'Http' 'Https' |
LoadBalancingSettingsModel
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼。 | 字串 |
名字 | 資源名稱。 | 字串 |
性能 | 負載平衡設定的屬性 | LoadBalancingSettingsProperties |
LoadBalancingSettingsProperties
名字 | 描述 | 價值 |
---|---|---|
additionalLatencyMilliseconds | 探查要落入最低延遲值區以毫秒為單位的額外延遲 | int |
sampleSize | 要考慮進行負載平衡決策的範例數目 | int |
successfulSamplesRequired | 必須成功之範例期間內的樣本數目 | int |
Microsoft.Network/frontDoors
名字 | 描述 | 價值 |
---|---|---|
位置 | 資源位置。 | 字串 |
名字 | 資源名稱 | 字串 約束: 最小長度 = 5 最大長度 = 5 模式 = ^[a-zA-Z0-9]+([-a-zA-Z0-9]?[a-zA-Z0-9])*$ (必要) |
性能 | Front Door Load Balancer 的屬性 | FrontDoorProperties |
標籤 | 資源標籤 | 標記名稱和值的字典。 |
類型 | 資源類型 | “Microsoft.Network/frontDoors@2021-06-01” |
RedirectConfiguration
名字 | 描述 | 價值 |
---|---|---|
@odata.type | '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' (必要) | |
customFragment | 要新增至重新導向 URL 的片段。 片段是之後 URL 的一部分。 請勿包含 #。 | 字串 |
customHost | 要重新導向的主機。 保留空白,以使用傳入主機作為目的地主機。 | 字串 |
customPath | 要重新導向的完整路徑。 路徑不可以是空的,而且必須以 /開頭。 保留空白,以使用傳入路徑作為目的地路徑。 | 字串 |
customQueryString | 要放在重新導向 URL 中的查詢字串集。 設定此值會取代任何現有的查詢字串;保留空白以保留傳入查詢字串。 查詢字串必須 <索引鍵>=<值> 格式。 第一個 ? 和 & 會自動新增,因此請勿將它們包含在前面,但會使用 &分隔多個查詢字串。 | 字串 |
redirectProtocol | 將流量重新導向目的地的通訊協定 | 'HttpOnly' 'HttpsOnly' 'MatchRequest' |
redirectType | 重新導向類型,規則會在重新導向流量時使用。 | 'Found' 'Moved' 'PermanentRedirect' 'TemporaryRedirect' |
ResourceTags
名字 | 描述 | 價值 |
---|
RouteConfiguration
名字 | 描述 | 價值 |
---|---|---|
@odata.type | 針對 forwardingConfiguration 類型,設定為 '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration'。 針對 RedirectConfiguration 類型設定為 '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration',。 | '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration' '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' (必要) |
RoutingRule
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼。 | 字串 |
名字 | 資源名稱。 | 字串 |
性能 | Front Door 路由規則的屬性 | RoutingRuleProperties |
RoutingRuleProperties
名字 | 描述 | 價值 |
---|---|---|
acceptedProtocols | 要符合此規則的通訊協定配置 | 包含任何的字串數組: 'Http' 'Https' |
enabledState | 是否要啟用此規則的使用。 允許的值為 'Enabled' 或 'Disabled' | 'Disabled' 'Enabled' |
frontendEndpoints | 與此規則相關聯的前端端點 | SubResource[] |
patternsToMatch | 規則的路由模式。 | string[] |
routeConfiguration | 路由組態的參考。 | RouteConfiguration |
rulesEngine | 要套用至此路由的特定規則引擎組態參考。 | SubResource |
webApplicationFirewallPolicyLink | 定義每個路由規則的 Web 應用程式防火牆原則(如果適用) | RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink |
RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼。 | 字串 |
SubResource
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼。 | 字串 |