PowerShell kullanarak sanal ağ eşlemesi ile sanal ağları bağlama

Sanal ağ eşlemesi ile sanal ağları birbirine bağlayabilirsiniz. Sanal ağlar eşlendikten sonra, kaynaklar aynı sanal ağ üzerindeymiş gibi, aynı gecikme süresi ve bant genişliği ile her iki sanal ağdaki kaynaklar birbiriyle iletişim kurabilir. Bu makalede şunları öğreneceksiniz:

  • İki sanal ağ oluşturma
  • Sanal ağ eşlemesi iki sanal ağı bağlama
  • Her sanal ağa sanal makine (VM) dağıtma
  • Sanal makineler arasında iletişim

Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir hesap oluşturun.

Azure Cloud Shell kullanma

Azure, tarayıcınız aracılığıyla kullanabileceğiniz etkileşimli bir kabuk ortamı olan Azure Cloud Shell’i barındırır. Azure hizmetleriyle çalışmak için Cloud Shell ile Bash veya PowerShell kullanabilirsiniz. Bu makaledeki kodu, yerel ortamınıza herhangi bir şey yüklemeye gerek kalmadan çalıştırmak için Cloud Shell’in önceden yüklenmiş komutlarını kullanabilirsiniz.

Azure Cloud Shell’i başlatmak için:

Seçenek Örnek/Bağlantı
Kod bloğunun sağ üst köşesindeki Deneyin’i seçin. Deneyin seçeneği belirlendiğinde, kod otomatik olarak Cloud Shell’e kopyalanmaz. Azure Cloud Shell için Deneyin örneği
Cloud Shell’i tarayıcınızda açmak için https://shell.azure.com bölümüne gidin veya Cloud Shell’i Başlat düğmesini seçin. Cloud Shell’i yeni bir pencerede başlatma
Azure portalın sağ üst köşesindeki menü çubuğunda yer alan Cloud Shell düğmesini seçin. Azure portaldaki Cloud Shell düğmesi

Azure Cloud Shell’de bu makaledeki kodu çalıştırmak için:

  1. Cloud Shell’i başlatın.

  2. Kodu kopyalamak için kod bloğunda Kopyala düğmesini seçin.

  3. Windows ve Linux sisteminde Ctrl+Shift+V tuşlarını kullanarak veya macOS’de Cmd+Shift+V tuşlarını kullanarak kodu Cloud Shell oturumuna yapıştırın.

  4. Kodu çalıştırmak için Enter tuşuna basın.

PowerShell 'i yerel olarak yükleyip kullanmayı tercih ederseniz, bu makale Azure PowerShell modülü sürümü 1.0.0 veya üstünü gerektirir. Yüklü sürümü bulmak için Get-Module -ListAvailable Az komutunu çalıştırın. Yükseltmeniz gerekirse, bkz. Azure PowerShell modülünü yükleme. PowerShell'i yerel olarak çalıştırıyorsanız Azure bağlantısı oluşturmak için Connect-AzAccount komutunu da çalıştırmanız gerekir.

Sanal ağlar oluşturma

Bir sanal ağ oluşturmadan önce, sanal ağ ve bu makalede oluşturulan tüm diğer kaynaklar için bir kaynak grubu oluşturmanız gerekir. New-AzResourceGroupile bir kaynak grubu oluşturun. Aşağıdaki örnek eastus konumunda myResourceGroup adlı bir kaynak grubu oluşturur.

New-AzResourceGroup -ResourceGroupName myResourceGroup -Location EastUS

New-AzVirtualNetworkile bir sanal ağ oluşturun. Aşağıdaki örnek, 10.0.0.0/16 adres ön ekine sahip myVirtualNetwork1 adlı bir sanal ağ oluşturur.

$virtualNetwork1 = New-AzVirtualNetwork `
  -ResourceGroupName myResourceGroup `
  -Location EastUS `
  -Name myVirtualNetwork1 `
  -AddressPrefix 10.0.0.0/16

Add-AzVirtualNetworkSubnetConfigile bir alt ağ yapılandırması oluşturun. Aşağıdaki örnek, 10.0.0.0/24 adres ön eki ile bir alt ağ yapılandırması oluşturur:

$subnetConfig = Add-AzVirtualNetworkSubnetConfig `
  -Name Subnet1 `
  -AddressPrefix 10.0.0.0/24 `
  -VirtualNetwork $virtualNetwork1

Alt ağ yapılandırmasını, alt ağı oluşturan set-AzVirtualNetworkile sanal ağa yazın:

$virtualNetwork1 | Set-AzVirtualNetwork

10.1.0.0/16 adres ön ekine ve bir alt ağa sahip bir sanal ağ oluşturun:

# Create the virtual network.
$virtualNetwork2 = New-AzVirtualNetwork `
  -ResourceGroupName myResourceGroup `
  -Location EastUS `
  -Name myVirtualNetwork2 `
  -AddressPrefix 10.1.0.0/16

# Create the subnet configuration.
$subnetConfig = Add-AzVirtualNetworkSubnetConfig `
  -Name Subnet1 `
  -AddressPrefix 10.1.0.0/24 `
  -VirtualNetwork $virtualNetwork2

# Write the subnet configuration to the virtual network.
$virtualNetwork2 | Set-AzVirtualNetwork

Sanal ağları eşleme

Add-Azvirtualnetworkeşlemesiylebir eşleme oluşturun. Aşağıdaki örnek, myVirtualNetwork1 ile myVirtualNetwork2 eşler.

Add-AzVirtualNetworkPeering `
  -Name myVirtualNetwork1-myVirtualNetwork2 `
  -VirtualNetwork $virtualNetwork1 `
  -RemoteVirtualNetworkId $virtualNetwork2.Id

Önceki komut yürütüldükten sonra döndürülen çıktıda, Peeringstate öğesinin başlatıldığını görürsünüz. Eşleme, myVirtualNetwork2 ile myVirtualNetwork1 arasında eşleme oluşturulana kadar başlatılmış durumda kalır. MyVirtualNetwork2 ile myVirtualNetwork1 arasında bir eşleme oluşturun.

Add-AzVirtualNetworkPeering `
  -Name myVirtualNetwork2-myVirtualNetwork1 `
  -VirtualNetwork $virtualNetwork2 `
  -RemoteVirtualNetworkId $virtualNetwork1.Id

Önceki komut yürütüldükten sonra döndürülen çıktıda, Peeringstate ' in bağlı olduğunu görürsünüz. Azure ayrıca myVirtualNetwork1-myVirtualNetwork2 eşlemesinin eşleme durumunu bağlı olarak değiştirdi. MyVirtualNetwork1-myVirtualNetwork2 eşlemesinin eşleme durumunun Get-Azvirtualnetworkeşlemesiyle bağlantılı olarak değiştirildiğini doğrulayın.

Get-AzVirtualNetworkPeering `
  -ResourceGroupName myResourceGroup `
  -VirtualNetworkName myVirtualNetwork1 `
  | Select PeeringState

Bir sanal ağdaki kaynaklar, her iki sanal ağ içindeki eşler için Peeringstate bağlı olana kadar diğer sanal ağdaki kaynaklarla iletişim kuramaz.

Sanal makineler oluşturma

Sonraki bir adımda aralarında iletişim kurabilmeniz için her sanal ağ üzerinde bir sanal makine oluşturun.

Birinci sanal makineyi oluşturma

New-azvmIle bir VM oluşturun. Aşağıdaki örnek, myVirtualNetwork1 sanal ağında MYVM1 adlı bir VM oluşturur. Bu -AsJob seçenek, bir sonraki adıma devam edebilmeniz için sanal makineyi arka planda oluşturur. İstendiğinde, VM 'de oturum açmak istediğiniz kullanıcı adını ve parolayı girin.

New-AzVm `
  -ResourceGroupName "myResourceGroup" `
  -Location "East US" `
  -VirtualNetworkName "myVirtualNetwork1" `
  -SubnetName "Subnet1" `
  -ImageName "Win2016Datacenter" `
  -Name "myVm1" `
  -AsJob

İkinci sanal makineyi oluşturma

New-AzVm `
  -ResourceGroupName "myResourceGroup" `
  -Location "East US" `
  -VirtualNetworkName "myVirtualNetwork2" `
  -SubnetName "Subnet1" `
  -ImageName "Win2016Datacenter" `
  -Name "myVm2"

Sanal makinenin oluşturulması birkaç dakika sürer. Azure VM 'yi oluşturup çıktıyı PowerShell 'e döndürünceye kadar sonraki adımlara devam edin.

Not

Azure, azure sanal makinelerine genel IP adresi atanmamış veya iç Temel sanal makinelerin arka uç havuzunda bulunan varsayılan bir giden erişim IP'Azure Load Balancer. Varsayılan giden erişim IP mekanizması, yapılandırılabilir olmayan bir giden IP adresi sağlar.

Varsayılan giden erişim hakkında daha fazla bilgi için bkz. Azure'da varsayılan giden erişim

Sanal makineye bir genel IP adresi atandığı veya sanal makine giden kuralları olan veya olmayan bir sanal makinenin arka uç havuzuna yerleştiril Standart Load Balancer varsayılan giden erişim IP'sini devre dışı bırakılır. Sanal Azure Sanal Ağ Adres Çevirisi alt ağın alt ağın bir ağ geçidi kaynağı atanırsa, varsayılan giden erişim IP'si devre dışı bırakılır.

Esnek Düzenleme modundaki Sanal Makine Ölçek kümeleri tarafından oluşturulan sanal makinelerin varsayılan giden erişimi yok.

Azure'daki giden bağlantılar hakkında daha fazla bilgi için bkz. Giden bağlantılar için Kaynak Ağ Adresi Çevirisi (SNAT) Kullanma.

Sanal makineler arasında iletişim

Bir VM 'nin genel IP adresine İnternet 'ten bağlanabilirsiniz. Bir sanal makinenin genel IP adresini döndürmek için Get-Azpublicıpaddress komutunu kullanın. Aşağıdaki örnek,myVm1 sanal makinesinin genel IP adresini döndürür:

Get-AzPublicIpAddress `
  -Name myVm1 `
  -ResourceGroupName myResourceGroup | Select IpAddress

Yerel bilgisayarınızdan myVm1 VM ile bir Uzak Masaüstü oturumu oluşturmak için aşağıdaki komutu kullanın. <publicIpAddress> değerini önceki komutta döndürülen IP adresi ile değiştirin.

mstsc /v:<publicIpAddress>

Bir Uzak Masaüstü Protokolü (. rdp) dosyası oluşturulur, bilgisayarınıza indirilir ve açılır. Kullanıcı adını ve parolayı girin ( daha fazla seçenek belirlemeniz, sonra farklı bir hesap kullanmanız, VM oluştururken girdiğiniz kimlik bilgilerini belirtmek Için) ve ardından Tamam' a tıklayın. Oturum açma işlemi sırasında bir sertifika uyarısı alabilirsiniz. Bağlantıya devam etmek için Evet veya Devam’a tıklayın.

MyVm1 VM 'de, Windows Güvenlik Duvarı üzerinden Internet Denetim Iletisi Protokolü 'NÜ (ICMP) etkinleştirin. böylece, PowerShell kullanarak bu VM 'yi daha sonraki bir adımda myVm2 'den ping hale getirebilirsiniz:

New-NetFirewallRule –DisplayName "Allow ICMPv4-In" –Protocol ICMPv4

Bu makaledeki VM 'Ler arasında iletişim kurmak için PING kullanılmasına karşın, üretim dağıtımları için Windows Güvenlik Duvarı üzerinden ıCMP 'ye izin önerilmez.

myVm2 sanal makinesine bağlanmak için, myVm1 sanal makinesinde bir komut isteminden aşağıdaki komutu girin:

mstsc /v:10.1.0.4

MyVm1 üzerinde ping 'yı etkinleştirdiğiniz Için artık myVm2 VM 'DEKI bir komut isteminden IP adresine göre ping işlemi yapabilirsiniz:

ping 10.0.0.4

Dört yanıt alırsınız. Hem myVm1 hem de myVm2 sanal makinesine yönelik RDP oturumlarınızın bağlantısını kesin.

Kaynakları temizleme

Artık gerekli değilse, Remove-AzResourcegroup komutunu kullanarak kaynak grubunu ve içerdiği tüm kaynakları kaldırın.

Remove-AzResourceGroup -Name myResourceGroup -Force

Sonraki adımlar

Bu makalede, sanal ağ eşlemesi ile aynı Azure bölgesindeki iki ağı bağlamayı öğrendiniz. Farklı desteklenen bölgelerde ve farklı Azure aboneliklerinde sanal ağları eşleyebilir ve eşleme ile hub ve bağlı bileşen ağ tasarımları oluşturabilirsiniz. Sanal ağ eşlemesi hakkında daha fazla bilgi için bkz. Sanal ağ eşlemesine genel bakış ve Sanal ağ eşlemelerini yönetme.

Bir VPN aracılığıyla kendi bilgisayarınızı bir sanal ağa bağlayabilirsiniz ve bir sanal ağdaki kaynaklarla veya eşlenmiş sanal ağlarda etkileşim kurabilirsiniz. Sanal ağ makalelerinde kapsanan birçok görevi tamamlaması için yeniden kullanılabilir betikler için bkz. betik örnekleri.