Azure PowerShell kullanarak bir sanal ağı ExpressRoute bağlantı hattına bağlama
Bu makale, Resource Manager dağıtım modelini ve PowerShell'i kullanarak sanal ağları (VNet) Azure ExpressRoute bağlantı hatlarına bağlamanıza yardımcı olur. Sanal ağlar aynı abonelikte veya başka bir aboneliğin parçası olabilir. Bu öğreticide ayrıca bir sanal ağ bağlantısının nasıl güncelleştirilecekleri de gösterilir.
Önkoşullar
Yapılandırmaya başlamadan önce önkoşulları, yönlendirme gereksinimlerini ve iş akışlarını gözden geçirin.
Etkin bir ExpressRoute bağlantı hattınızın olması gerekir.
- ExpressRoute bağlantı hattı oluşturmak ve bağlantı hattınızın bağlantı sağlayıcınız tarafından etkinleştirilmesini sağlamak için yönergeleri izleyin.
- Bağlantı hattınız için Azure özel eşlemesini yapılandırdığınızdan emin olun. Yönlendirme yönergeleri için yönlendirmeyi yapılandırma makalesine bakın.
- Azure özel eşlemenin yapılandırıldığından ve uçtan uca bağlantı için ağınızla Microsoft arasında BGP eşlemesi oluşturduğuna emin olun.
- Bir sanal ağınız ve sanal ağ geçidinin oluşturulduğu ve tam olarak sağlandığına emin olun. ExpressRoute için sanal ağ geçidi oluşturmak için yönergeleri izleyin. ExpressRoute için sanal ağ geçidi VPN'yi değil GatewayType'ı
ExpressRoute
kullanır.
Standart bir ExpressRoute bağlantı hattına en fazla 10 sanal ağ bağlayabilirsiniz. Standart bir ExpressRoute bağlantı hattı kullanılırken tüm sanal ağlar aynı jeopolitik bölgede olmalıdır.
Tek bir sanal ağ en fazla 16 ExpressRoute bağlantı hattına bağlanabilir. Bağlandığınız her ExpressRoute bağlantı hattı için yeni bir bağlantı nesnesi oluşturmak için bu makaledeki adımları kullanın. ExpressRoute bağlantı hatları aynı abonelikte, farklı aboneliklerde veya her ikisinin bir karışımında olabilir.
ExpressRoute premium eklentisini etkinleştirirseniz, ExpressRoute bağlantı hattının jeopolitik bölgesinin dışındaki sanal ağları bağlayabilirsiniz. Premium eklenti, seçilen bant genişliğine bağlı olarak ExpressRoute bağlantı hattınıza 10'dan fazla sanal ağ bağlamanıza olanak tanır. Premium eklenti hakkında daha fazla bilgi için SSS bölümüne bakın.
ExpressRoute bağlantı hattından hedef ExpressRoute sanal ağ geçidine bağlantı oluşturmak için, yerel veya eşlenmiş sanal ağlardan tanıtılan adres alanı sayısının 200'e eşit veya daha az olması gerekir. Bağlantı başarıyla oluşturulduktan sonra, yerel veya eşlenmiş sanal ağlara 1.000'e kadar daha fazla adres alanı ekleyebilirsiniz.
ExpressRoute üzerinden sanal ağlar arasında bağlantı için kılavuzu gözden geçirin.
Azure PowerShell ile çalışma
Bu makaledeki adımlar ve örnekler Azure PowerShell Az modüllerini kullanır. Az modüllerini bilgisayarınıza yerel olarak yüklemek için bkz . Azure PowerShell'i yükleme. Yeni Az modülü hakkında daha fazla bilgi edinmek için bkz . Yeni Azure PowerShell Az modülüne giriş. PowerShell cmdlet'leri sık sık güncelleştirilir. En son sürümü çalıştırmıyorsanız, yönergelerde belirtilen değerler başarısız olabilir. Sisteminizde Yüklü PowerShell sürümlerini bulmak için cmdlet'ini Get-Module -ListAvailable Az
kullanın.
Azure Cloud Shell'i kullanarak Azure PowerShell veya CLI'yı yerel olarak yüklemek yerine çoğu PowerShell cmdlet'ini ve CLI komutunu çalıştırabilirsiniz. Azure Cloud Shell, yaygın Azure araçlarının önceden yüklenmiş olduğu ve hesabınızla birlikte kullanılacak şekilde yapılandırılmış ücretsiz bir etkileşimli kabukdur. Bu makalede yer alan tüm kodları Azure Cloud Shell'de çalıştırmak için bir Cloud Shell oturumu açın, kodu kopyalamak için kod bloğundaki Kopyala düğmesini kullanın ve Windows ve Linux'ta Ctrl+Shift+V veya macOS üzerinde Cmd+Shift+V ile Cloud Shell oturumuna yapıştırın. Yapıştırılan metin otomatik olarak yürütülmedi, kodu çalıştırmak için Enter tuşuna basın.
Cloud Shell’i başlatmanın birkaç yolu vardır:
Seçenek | Bağlantı |
---|---|
Kod bloğunun sağ üst köşesindeki Deneyin’e tıklayın. | |
Cloud Shell’i tarayıcınızda açın. | |
Azure portalının sağ üst kısmındaki menüde yer alan Cloud Shell düğmesine tıklayın. | |
Sanal ağ bağlama
En yüksek dayanıklılık (Önerilen): Sanal ağınıza en yüksek dayanıklılık düzeyini sağlar. Sanal ağ geçidinden farklı ExpressRoute konumlarındaki iki farklı ExpressRoute bağlantı hattına iki yedekli bağlantı sağlar.
Betiği kopyalama
En fazla dayanıklılık bağlantısı oluşturmak için GitHub'dan kurulum betiğini kopyalayın.
# Clone the setup script from GitHub.
git clone https://github.com/Azure-Samples/azure-docs-powershell-samples/
# Change to the directory where the script is located.
CD azure-docs-powershell-samples/expressroute/
Yüksek kullanılabilirlik bağlantıları oluşturmak için New-AzHighAvailabilityVirtualNetworkGatewayConnections.ps1 betiğini çalıştırın. Aşağıdaki örnekte, iki ExpressRoute bağlantı hattına iki yeni bağlantının nasıl oluşturulacağı gösterilmektedir.
$SubscriptionId = Get-AzureSubscription -SubscriptionName "<SubscriptionName>"
$circuit1 = Get-AzExpressRouteCircuit -Name "MyCircuit1" -ResourceGroupName "MyRG"
$circuit2 = Get-AzExpressRouteCircuit -Name "MyCircuit2" -ResourceGroupName "MyRG"
$gw = Get-AzVirtualNetworkGateway -Name "ExpressRouteGw" -ResourceGroupName "MyRG"
highAvailabilitySetup/New-AzHighAvailabilityVirtualNetworkGatewayConnections.ps1 -SubscriptionId $SubscriptionId -ResourceGroupName "MyRG" -Location "West EU" -Name1 "ERConnection1" -Name2 "ERConnection2" -Peer1 $circuit1.Peerings[0] -Peer2 $circuit2.Peerings[0] -RoutingWeight1 10 -RoutingWeight2 10 -VirtualNetworkGateway1 $gw
Yeni bir bağlantı oluşturmak ve mevcut bir bağlantı kullanmak istiyorsanız aşağıdaki örneği kullanabilirsiniz. Bu örnek, ikinci bir ExpressRoute bağlantı hattına yeni bir bağlantı oluşturur ve ilk ExpressRoute bağlantı hattına var olan bir bağlantıyı kullanır.
$SubscriptionId = Get-AzureSubscription -SubscriptionName "<SubscriptionName>"
$circuit1 = Get-AzExpressRouteCircuit -Name "MyCircuit1" -ResourceGroupName "MyRG"
$gw = Get-AzVirtualNetworkGateway -Name "ExpressRouteGw" -ResourceGroupName "MyRG"
$connection = Get-AzVirtualNetworkGatewayConnection -Name "ERConnection1" -ResourceGroupName "MyRG"
highAvailabilitySetup/New-AzHighAvailabilityVirtualNetworkGatewayConnections.ps1 -SubscriptionId $SubscriptionId -ResourceGroupName "MyRG" -Location "West EU" -Name2 "ERConnection2" -Peer2 $circuit1.Peerings[0] -RoutingWeight2 10 -VirtualNetworkGateway1 $gw -ExistingVirtualNetworkGatewayConnection $connection
Farklı abonelikteki bir sanal ağı devreye bağlama
ExpressRoute bağlantı hattını birden çok abonelikte paylaşabilirsiniz. Aşağıdaki şekilde, birden çok abonelikte ExpressRoute bağlantı hatları için paylaşımın nasıl çalıştığına ilişkin basit bir şema gösterilmektedir.
Not
Azure bağımsız bulutları ile Genel Azure bulutu arasında sanal ağların bağlanması desteklenmez. Yalnızca aynı buluttaki farklı aboneliklerden sanal ağları bağlayabilirsiniz.
Büyük buluttaki küçük bulutların her biri, bir kuruluştaki farklı departmanlara ait abonelikleri temsil etmek için kullanılır. Kuruluştaki departmanların her biri hizmetlerini dağıtmak için kendi aboneliklerini kullanır ancak şirket içi ağınıza geri bağlanmak için tek bir ExpressRoute bağlantı hattını paylaşabilir. Tek bir departman (bu örnekte: BT) ExpressRoute bağlantı hattına sahip olabilir. Kuruluştaki diğer abonelikler ExpressRoute bağlantı hattını kullanabilir.
Not
ExpressRoute bağlantı hattı için bağlantı ve bant genişliği ücretleri abonelik sahibine uygulanır. Tüm sanal ağlar aynı bant genişliğini paylaşır.
Yönetim - devre sahipleri ve devre kullanıcıları
'Bağlantı hattı sahibi', ExpressRoute bağlantı hattı kaynağının yetkili bir Power User'dır. Devre sahibi, 'devre kullanıcıları' tarafından kullanılabilecek yetkilendirmeler oluşturabilir. Bağlantı hattı kullanıcıları, ExpressRoute bağlantı hattıyla aynı abonelik içinde olmayan sanal ağ geçitlerinin sahipleridir. Devre kullanıcıları yetkilendirmeleri kullanabilir (sanal ağ başına bir yetkilendirme).
Devre sahibi, yetkilendirmeleri istediği zaman değiştirme ve iptal etme gücüne sahiptir. Yetkilendirmenin iptali, erişimi iptal edilen abonelikten tüm bağlantı bağlantılarının silinmesine neden olur.
Not
Bağlantı hattı sahibi yerleşik bir RBAC rolü değildir veya ExpressRoute kaynağında tanımlanmaz. Bağlantı hattı sahibinin tanımı, aşağıdaki erişime sahip herhangi bir roldür:
- Microsoft.Network/expressRouteCircuits/authorizations/write
- Microsoft.Network/expressRouteCircuits/authorizations/read
- Microsoft.Network/expressRouteCircuits/authorizations/delete
Buna Katkıda Bulunan, Sahip ve Ağ Katkıda Bulunanı gibi yerleşik roller dahildir. Farklı yerleşik roller için ayrıntılı açıklama.
Devre sahibi işlemleri
Yetkilendirme oluşturmak için
Devre sahibi, sanal ağ geçitlerini ExpressRoute bağlantı hattına bağlamak için devre kullanıcısı tarafından kullanılacak bir yetkilendirme anahtarı oluşturan bir yetkilendirme oluşturur. Yetkilendirme yalnızca bir bağlantı için geçerlidir.
Aşağıdaki cmdlet kod parçacığında yetkilendirmenin nasıl oluşturulacağı gösterilmektedir:
$circuit = Get-AzExpressRouteCircuit -Name "MyCircuit" -ResourceGroupName "MyRG"
Add-AzExpressRouteCircuitAuthorization -ExpressRouteCircuit $circuit -Name "MyAuthorization1"
Set-AzExpressRouteCircuit -ExpressRouteCircuit $circuit
$circuit = Get-AzExpressRouteCircuit -Name "MyCircuit" -ResourceGroupName "MyRG"
$auth1 = Get-AzExpressRouteCircuitAuthorization -ExpressRouteCircuit $circuit -Name "MyAuthorization1"
Önceki komutlara verilen yanıt yetkilendirme anahtarını ve durumunu içerir:
Name : MyAuthorization1
Id : /subscriptions/&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&/resourceGroups/ERCrossSubTestRG/providers/Microsoft.Network/expressRouteCircuits/CrossSubTest/authorizations/MyAuthorization1
Etag : &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
AuthorizationKey : ####################################
AuthorizationUseStatus : Available
ProvisioningState : Succeeded
Yetkilendirmeleri gözden geçirmek için
Bağlantı hattı sahibi, aşağıdaki cmdlet'i çalıştırarak belirli bir bağlantı hattında verilen tüm yetkilendirmeleri gözden geçirebilir:
$circuit = Get-AzExpressRouteCircuit -Name "MyCircuit" -ResourceGroupName "MyRG"
$authorizations = Get-AzExpressRouteCircuitAuthorization -ExpressRouteCircuit $circuit
Yetkilendirme eklemek için
Bağlantı hattı sahibi aşağıdaki cmdlet'i kullanarak yetkilendirme ekleyebilir:
$circuit = Get-AzExpressRouteCircuit -Name "MyCircuit" -ResourceGroupName "MyRG"
Add-AzExpressRouteCircuitAuthorization -ExpressRouteCircuit $circuit -Name "MyAuthorization2"
Set-AzExpressRouteCircuit -ExpressRouteCircuit $circuit
$circuit = Get-AzExpressRouteCircuit -Name "MyCircuit" -ResourceGroupName "MyRG"
$authorizations = Get-AzExpressRouteCircuitAuthorization -ExpressRouteCircuit $circuit
Yetkilendirmeleri silmek için
Devre sahibi aşağıdaki cmdlet'i çalıştırarak kullanıcıya yönelik yetkilendirmeleri iptal edebilir/silebilir:
Remove-AzExpressRouteCircuitAuthorization -Name "MyAuthorization2" -ExpressRouteCircuit $circuit
Set-AzExpressRouteCircuit -ExpressRouteCircuit $circuit
Devre kullanıcı işlemleri
Devre kullanıcısının eş kimliğine ve bağlantı hattı sahibinden bir yetkilendirme anahtarına ihtiyacı vardır. Yetkilendirme anahtarı bir GUID'dir.
Eş Kimliği aşağıdaki komuttan denetlenebilir:
Get-AzExpressRouteCircuit -Name "MyCircuit" -ResourceGroupName "MyRG"
Bağlantı yetkilendirmesini kullanmak için
Bağlantı hattı kullanıcısı, bağlantı yetkilendirmesini kullanmak için aşağıdaki cmdlet'i çalıştırabilir:
$id = "/subscriptions/********************************/resourceGroups/ERCrossSubTestRG/providers/Microsoft.Network/expressRouteCircuits/MyCircuit"
$gw = Get-AzVirtualNetworkGateway -Name "ExpressRouteGw" -ResourceGroupName "MyRG"
$connection = New-AzVirtualNetworkGatewayConnection -Name "ERConnection" -ResourceGroupName "RemoteResourceGroup" -Location "East US" -VirtualNetworkGateway1 $gw -PeerId $id -ConnectionType ExpressRoute -AuthorizationKey "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"
Bağlantı yetkilendirmesini serbest bırakmak için
ExpressRoute bağlantı hattını sanal ağa bağlayan bağlantıyı silerek yetkilendirmeyi serbest bırakabilirsiniz.
Sanal ağ bağlantısını değiştirme
Sanal ağ bağlantısının belirli özelliklerini güncelleştirebilirsiniz.
Bağlantı kalınlığını güncelleştirmek için
Sanal ağınız birden çok ExpressRoute bağlantı hattına bağlanabilir. Aynı ön eki birden fazla ExpressRoute bağlantı hattından alabilirsiniz. Bu ön eki hedefleyen trafiğin gönderileceği bağlantıyı seçmek için, bir bağlantının RoutingWeight'ını değiştirebilirsiniz. Trafik, en yüksek RoutingWeight ile bağlantı üzerinden gönderilir.
$connection = Get-AzVirtualNetworkGatewayConnection -Name "MyVirtualNetworkConnection" -ResourceGroupName "MyRG"
$connection.RoutingWeight = 100
Set-AzVirtualNetworkGatewayConnection -VirtualNetworkGatewayConnection $connection
RoutingWeight aralığı 0 ile 32000 arasındadır. Varsayılan değer 0'tir.
ExpressRoute FastPath Yapılandırması
Sanal ağ geçidiniz Ultra Performans veya ErGw3AZ ise ExpressRoute FastPath'i etkinleştirebilirsiniz. FastPath, saniye başına paket sayısı ve şirket içi ağınızla sanal ağınız arasındaki saniyedeki bağlantılar gibi veri yolu performansını geliştirir.
Yeni bir bağlantıda FastPath'i yapılandırma
$circuit = Get-AzExpressRouteCircuit -Name "MyCircuit" -ResourceGroupName "MyRG"
$gw = Get-AzVirtualNetworkGateway -Name "MyGateway" -ResourceGroupName "MyRG"
$connection = New-AzVirtualNetworkGatewayConnection -Name "MyConnection" -ResourceGroupName "MyRG" -ExpressRouteGatewayBypass -VirtualNetworkGateway1 $gw -PeerId $circuit.Id -ConnectionType ExpressRoute -Location "MyLocation"
FastPath'i etkinleştirmek için mevcut bağlantıyı güncelleştirme
$connection = Get-AzVirtualNetworkGatewayConnection -Name "MyConnection" -ResourceGroupName "MyRG"
$connection.ExpressRouteGatewayBypass = $True
Set-AzVirtualNetworkGatewayConnection -VirtualNetworkGatewayConnection $connection
FastPath Sanal Ağ Eşleme, Kullanıcı Tanımlı Yollar (UDR) ve ExpressRoute Doğrudan Bağlantıları için Özel Bağlantı desteği
Sanal Ağ Eşleme ve UDR desteğiyle FastPath trafiği doğrudan "uç" Sanal Ağ dağıtılan VM'lere gönderir (Sanal Ağ Eşleme yoluyla bağlanır) ve GatewaySubnet'te yapılandırılan tüm UDR'leri kabul eder. Bu özellik genel kullanıma sunuldu (GA).
FastPath ve Özel Bağlantı ile ExpressRoute üzerinden gönderilen Özel Bağlantı trafik, veri yolundaki ExpressRoute sanal ağ geçidini atlar. Bu özelliklerin her ikisi de etkinleştirildiğinde, FastPath trafiği doğrudan bir "uç" Sanal Ağ dağıtılan Özel Uç Noktaya gönderir.
Bu senaryolar, 10 Gb/sn ve 100 Gb/sn ExpressRoute Direct bağlantı hatlarıyla ilişkili sınırlı senaryolar için Genel Kullanıma sunulmuştur. Etkinleştirmek için aşağıdaki yönergeleri izleyin:
- Aboneliğinizi kaydetme isteğinde bulunmak için bu Microsoft Formunu doldurun. İsteklerin tamamlanması 4 haftaya kadar sürebilir, bu nedenle dağıtımları uygun şekilde planlayın.
- 1. Adım'dan bir onay aldıktan sonra, hedef Azure aboneliğinde aşağıdaki Azure PowerShell komutunu çalıştırın.
$connection = Get-AzVirtualNetworkGatewayConnection -ResourceGroupName <resource-group> -ResourceName <connection-name>
$connection.ExpressRouteGatewayBypass = $true
$connection.EnablePrivateLinkFastPath = $true
Set-AzVirtualNetworkGatewayConnection -VirtualNetworkGatewayConnection $connection
Not
FastPath kullanarak trafiğinizin hedefe ulaştığını doğrulamak için Bağlantı İzleyicisi kullanabilirsiniz.
Not
Sınırlı GA senaryoları için FastPath Özel Bağlantı desteğinin etkinleştirilmesi 4 hafta kadar sürebilir. Lütfen dağıtımlarınızı önceden planlayın.
Sanal ağ eşleme ve UDR'ler için FastPath desteği yalnızca ExpressRoute Direct bağlantılarında kullanılabilir.
Not
FastPath'i zaten yapılandırdıysanız ve sınırlı GA özelliklerine kaydolmak istiyorsanız, aşağıdakileri yapmanız gerekir:
- Azure PowerShell komutlarıyla FastPath özelliklerinden birine kaydolun.
- Hedef bağlantıda FastPath'i devre dışı bırakın ve yeniden etkinleştirin.
- Sınırlı GA özelliği arasında geçiş yapmak için aboneliği hedef önizleme PowerShell komutuyla kaydedin ve ardından bağlantıda FastPath'i devre dışı bırakın ve yeniden etkinleştirin.
Kaynakları temizleme
ExpressRoute bağlantısına artık ihtiyacınız yoksa, ağ geçidinin bulunduğu abonelikten komutunu kullanarak Remove-AzVirtualNetworkGatewayConnection
ağ geçidi ile bağlantı hattı arasındaki bağlantıyı kaldırın.
Remove-AzVirtualNetworkGatewayConnection "MyConnection" -ResourceGroupName "MyRG"
Sonraki adımlar
Bu öğreticide, bir sanal ağı aynı abonelikteki ve farklı bir abonelikteki bir bağlantı hattına nasıl bağlayabileceğinizi öğrendiniz. ExpressRoute ağ geçitleri hakkında daha fazla bilgi için bkz. ExpressRoute sanal ağ geçitleri.
PowerShell kullanarak Microsoft eşlemesi filtrelerini yapılandırmayı, yönlendirmeyi öğrenmek için sonraki öğreticiye ilerleyin.