azVirtualNetworkGateway
Deploy an Azure Virtual Network to the relevant subscription.
Attributes
Attribute | Type | Mandatory | Values | Default | Notes |
---|---|---|---|---|---|
Name | String | ||||
ResourceGroupName | String | ||||
Location | String | ||||
VNetName | String | ||||
PublicIP | Object | ||||
GatewayType | String | ExpressRoute, VPN, LocalGateway | |||
GatewaySku | String | ||||
VpnGatewayGeneration | String | ||||
VpnType | String | PolicyBased, RouteBased | |||
NatRule | Object | ||||
Diagnostic | Object | ||||
Tag | Object | ||||
Lock | Object |
Public IP
Attribute | Type | Mandatory | Values | Default | Notes |
---|---|---|---|---|---|
Name | String | Yes | |||
ResourceGroupName | String | No |
NAT Rule
Attribute | Type | Mandatory | Values | Default | Notes |
---|---|---|---|---|---|
Name | String | Yes | |||
Type | String | No | |||
Mode | String | No | |||
InternalMapping | Array | No | |||
ExternalMapping | Array | No | |||
InternalPortRange | Array | No | |||
ExternalPortRange | Array | No |
Diagnostic
Attribute | Type | Mandatory | Values | Default | Notes |
---|---|---|---|---|---|
Name | String | ||||
Log | Object | ||||
Metric | Object | ||||
Target | Object |
Diagnostic Log
Attribute | Type | Mandatory | Values | Default | Notes |
---|---|---|---|---|---|
Enabled | Boolean | Defaults to true if Category is not null | |||
Category | Array | GatewayDiagnosticLog | |||
TunnelDiagnosticLog | |||||
RouteDiagnosticLog | |||||
IKEDiagnosticLog | |||||
P2SDiagnosticLog |
Diagnostic Metric
Attribute | Type | Mandatory | Values | Default | Notes |
---|---|---|---|---|---|
Enabled | Boolean | True, False | Defaults to true if Category is not null | ||
Category | Array | AllMetrics |
Input by YAML
Object model for YAML deployment:
---
azVirtualNetworkGateway:
# Mandatory
- Name: 'string'
ResourceGroupName: 'string'
Location: 'string'
VNetName: 'string'
PublicIPName: 'string'
GatewayType: 'string' # ExpressRoute, VPN
GatewaySku: 'string'
VpnGatewayGeneration: 'string'
VpnType: 'string' # PolicyBased, RouteBased
# Optional
NatRule:
- Name: 'string'
Type: 'string' # Static, Dynamic
Mode: 'string' # EgressSnat, IngressSnat
InternalMapping: [array]
ExternalMapping: [array]
ExternalPortRange: [array]
InternalPortRange: [array]
Diagnostic:
- Name: 'string'
Log:
Enabled: 'string' # True (D if Category not null), False
Category: [array] # Defaults to all if enabled
Metric:
Enabled: 'string' # True (D if MetricCategory not null), False
Category: [array] # Defaults to all if enabled
Target:
Blob:
StorageAccount: 'string'
ResourceGroupName: 'string' # Defaults to RG of resource
Subscription: 'string' # Defaults to Sub of resource
StorageKeyType: 'string' # Primary, Secondary
RetentionInDays: 'string'
EventHub:
Name: 'string'
Namespace: 'string'
ResourceGroupName: 'string' # Defaults to RG of resource
Subscription: 'string' # Defaults to Sub of resource
SharedAccessPolicy: 'string' # RootManageSharedAccessKey (D)
LogAnalytics:
Workspace: 'string'
ResourceGroupName: 'string' # Defaults to RG of resource
Subscription: 'string' # Defaults to Sub of resource
Tag:
'keyvalue-pairs'
Lock:
- Name: 'string'
Level: 'string' # CanNotDelete, ReadOnly
Notes: 'string'
Input by JSON
Object model for JSON deployment:
{
"azVirtualNetworkGateway": [
{
"Name": "string",
"ResourceGroupName": "string",
"Location": "string",
"VNetName": "string",
"PublicIPName": "string",
"GatewayType": "string",
"GatewaySku": "string",
"VpnGatewayGeneration": "string",
"VpnType": "string",
"Tag": {
"key": "value"
},
"Lock": [
{
"Name": "string",
"Level": "string",
"Notes": "string"
}
],
"NatRule": [
{
"Name": "string",
"Type": "string",
"Mode": "string",
"InternalMapping": [array],
"ExternalMapping": [array],
"ExternalPortRange": [array],
"InternalPortRange": [array]
}
],
"Diagnostic": [
{
"Name": "string",
"Log": {
"Enabled": "string",
"Category": [array]
},
"Metric": {
"Enabled": "string",
"Category": [array]
},
"Target": {
"Blob": {
"StorageAccount": "string",
"ResourceGroupName": "string",
"Subscription": "string",
"StorageKeyType": "string",
"RetentionInDays": number
},
"EventHub": {
"Name": "string",
"Namespace": "string",
"ResourceGroupName": "string",
"Subscription": "string",
"SharedAccessPolicy": "string"
},
"LogAnalytics": {
"Workspace": "string",
"ResourceGroupName": "string",
"Subscription": "string"
}
}
}
]
}
]
}