@@ -125,6 +125,89 @@ function Test-VirtualNetworkGatewayConnectionWithBgpCRUD
125
125
}
126
126
}
127
127
128
+ <#
129
+ . SYNOPSIS
130
+ Virtual network gateway connection test with Active-Active feature enabled virtual network gateway
131
+ #>
132
+ function Test-VirtualNetworkGatewayConnectionWithActiveActiveGateway
133
+ {
134
+ # Setup
135
+ $rgname = Get-ResourceGroupName
136
+ $rname1 = Get-ResourceName
137
+ $rname2 = Get-ResourceName
138
+ $domainNameLabel11 = Get-ResourceName
139
+ $domainNameLabel12 = Get-ResourceName
140
+ $domainNameLabel2 = Get-ResourceName
141
+ $vnetName1 = Get-ResourceName
142
+ $vnetName2 = Get-ResourceName
143
+ $vnetConnectionName1 = Get-ResourceName
144
+ $vnetConnectionName2 = Get-ResourceName
145
+ $publicIpName11 = Get-ResourceName
146
+ $publicIpName12 = Get-ResourceName
147
+ $publicIpName2 = Get-ResourceName
148
+ $vnetGatewayConfigName11 = Get-ResourceName
149
+ $vnetGatewayConfigName12 = Get-ResourceName
150
+ $vnetGatewayConfigName2 = Get-ResourceName
151
+ $rglocation = Get-ProviderLocation ResourceManagement
152
+ $resourceTypeParent = " Microsoft.Network/connections"
153
+ $location = Get-ProviderLocation $resourceTypeParent
154
+
155
+ try
156
+ {
157
+ # Create the resource group
158
+ $resourceGroup = New-AzureRmResourceGroup - Name $rgname - Location $rglocation - Tags @ { testtag = " testval" }
159
+
160
+ # Create the Virtual Network1
161
+ $subnet1 = New-AzureRmVirtualNetworkSubnetConfig - Name " GatewaySubnet" - AddressPrefix 10.0 .0.0 / 24
162
+ $vnet1 = New-AzureRmvirtualNetwork - Name $vnetName1 - ResourceGroupName $rgname - Location $location - AddressPrefix 10.0 .0.0 / 16 - Subnet $subnet1
163
+ $vnet1 = Get-AzureRmvirtualNetwork - Name $vnetName1 - ResourceGroupName $rgname
164
+ $subnet1 = Get-AzureRmVirtualNetworkSubnetConfig - Name " GatewaySubnet" - VirtualNetwork $vnet1
165
+
166
+ # Create Active-Active feature enabled virtualnetworkgateway1 & Get virtualnetworkgateway1
167
+ $publicip11 = New-AzureRmPublicIpAddress - ResourceGroupName $rgname - name $publicIpName11 - location $location - AllocationMethod Dynamic - DomainNameLabel $domainNameLabel11
168
+ $vnetIpConfig11 = New-AzureRmVirtualNetworkGatewayIpConfig - Name $vnetGatewayConfigName11 - PublicIpAddress $publicip11 - Subnet $subnet1
169
+
170
+ $publicip12 = New-AzureRmPublicIpAddress - ResourceGroupName $rgname - name $publicIpName12 - location $location - AllocationMethod Dynamic - DomainNameLabel $domainNameLabel12
171
+ $vnetIpConfig12 = New-AzureRmVirtualNetworkGatewayIpConfig - Name $vnetGatewayConfigName12 - PublicIpAddress $publicip12 - Subnet $subnet1
172
+
173
+ $actual = New-AzureRmVirtualNetworkGateway - ResourceGroupName $rgname - name $rname1 - Location $location - IpConfigurations $vnetIpConfig11 , $vnetIpConfig12 - GatewayType Vpn - VpnType RouteBased - EnableBgp $false - GatewaySku HighPerformance - EnableActiveActiveFeature
174
+ $vnetGateway1 = Get-AzureRmVirtualNetworkGateway - ResourceGroupName $rgname - name $rname1
175
+
176
+ # Create the Virtual Network2
177
+ $subnet2 = New-AzureRmVirtualNetworkSubnetConfig - Name " GatewaySubnet" - AddressPrefix 192.168 .200.0 / 26
178
+ $vnet2 = New-AzureRmvirtualNetwork - Name $vnetName2 - ResourceGroupName $rgname - Location $location - AddressPrefix 192.168 .0.0 / 16 - Subnet $subnet2
179
+ $vnet2 = Get-AzureRmvirtualNetwork - Name $vnetName2 - ResourceGroupName $rgname
180
+ $subnet2 = Get-AzureRmVirtualNetworkSubnetConfig - Name " GatewaySubnet" - VirtualNetwork $vnet2
181
+
182
+ # Create the publicip2
183
+ $publicip2 = New-AzureRmPublicIpAddress - ResourceGroupName $rgname - name $publicIpName2 - location $location - AllocationMethod Dynamic - DomainNameLabel $domainNameLabel2
184
+
185
+ # Create VirtualNetworkGateway2
186
+ $vnetIpConfig2 = New-AzureRmVirtualNetworkGatewayIpConfig - Name $vnetGatewayConfigName2 - PublicIpAddress $publicip2 - Subnet $subnet2
187
+
188
+ $actual = New-AzureRmVirtualNetworkGateway - ResourceGroupName $rgname - name $rname2 - location $location - IpConfigurations $vnetIpConfig2 - GatewayType Vpn - VpnType RouteBased - GatewaySku Standard
189
+ $vnetGateway2 = Get-AzureRmVirtualNetworkGateway - ResourceGroupName $rgname - name $rname2
190
+
191
+ # Create & Get VirtualNetworkGatewayConnection1, VirtualNetworkGatewayConnection2
192
+ $actual1 = New-AzureRmVirtualNetworkGatewayConnection - ResourceGroupName $rgname - name $vnetConnectionName1 - location $location - VirtualNetworkGateway1 $vnetGateway1 - VirtualNetworkGateway2 $vnetGateway2 - ConnectionType Vnet2Vnet - RoutingWeight 3 - SharedKey abc
193
+ $actual2 = New-AzureRmVirtualNetworkGatewayConnection - ResourceGroupName $rgname - name $vnetConnectionName2 - location $location - VirtualNetworkGateway1 $vnetGateway2 - VirtualNetworkGateway2 $vnetGateway1 - ConnectionType Vnet2Vnet - RoutingWeight 3 - SharedKey abc
194
+
195
+ $connection1 = Get-AzureRmVirtualNetworkGatewayConnection - ResourceGroupName $rgname - name $vnetConnectionName1
196
+ Assert-NotNull $connection1.TunnelConnectionStatus
197
+
198
+ # Delete VirtualNetworkGatewayConnections
199
+ $delete = Remove-AzureRmVirtualNetworkGatewayConnection - ResourceGroupName $actual.ResourceGroupName - name $vnetConnectionName1 - PassThru - Force
200
+ Assert-AreEqual true $delete
201
+ $delete = Remove-AzureRmVirtualNetworkGatewayConnection - ResourceGroupName $actual.ResourceGroupName - name $vnetConnectionName2 - PassThru - Force
202
+ Assert-AreEqual true $delete
203
+ }
204
+ finally
205
+ {
206
+ # Cleanup
207
+ Clean - ResourceGroup $rgname
208
+ }
209
+ }
210
+
128
211
function Test-VirtualNetworkGatewayConnectionCRUD
129
212
{
130
213
# Setup
0 commit comments