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"
}
}
}
]
}
]
}