Bu makalede Azure Powershell kullanarak farklı networkleri konuşturmak için kullanılan network peering işlemini inceliyor olacağım.

Bir önceki makalede Portal üzerinden network peering işlemini gerçekleştirmiştik eğer o makaleyi incemediyseniz aşağıdaki linkten ilgili makaleye ulaşabilirsiniz. (https://mutlubalik.com/azure-virtual-network-peering)

Bu makalede bir önceki makalede gerçekleştirmiş olduğumuz yapılandırma ayarlarının aynısı kullanılacaktır.

Azure Powershell kullanabilmek için Azure Portal üzerinde bulunan Cloud Shell butonu veya https://portal.azure.com/#cloudshell/ aracılığıyla Cloud Shell açılır.

Azure Powershell bir storage account‘a ihtiyaç duymaktadır. Eğer daha önceden oluşturulmuş bir storage account yoksa Create storage denilerek yeni bir tane oluşturulabilir.

Azure Powershell kullanıma hazır durumdadır.

İlk olarak projede kullanacak olduğum 2 resource group’u oluşturacağım.

Resource group oluşturmak için aşağıdaki komut kullanılabilir;

New-AzResourceGroup -ResourceGroupName RG1 -Location EastUS

Resource group oluşturma işlemi başarılı bir şekilde tamamlanmıştır.

Aynı komutta bölge ve isim değişikliği yaparak ikinci resource group oluşturma işlemini başlatıyorum.

New-AzResourceGroup -ResourceGroupName RG2 -Location CentralUS

Resource group oluşturma işlemi başarılı bir şekilde tamamlanmıştır.

Resource group oluşturma işlemini tamamladıktan sonra virtual network oluşturma işlemine geçiş yapılır. Virtual network oluşturmak için aşağıdaki komut kullanılabilir;

$VNet1= New-AzVirtualNetwork -ResourceGroupName RG1 -Location EastUS -Name VNet1 -AddressPrefix 10.1.0.0/16

Subnet oluşturmak işlemi için aşağıdaki komut kullanılabilir;

Add-AzVirtualNetworkSubnetConfig -Name VNet1Subnet -AddressPrefix 10.1.0.0/16 -VirtualNetwork $VNet1

Virtual network ile subnet’i ilişkilendirmek için aşağıdaki komut kullanılır;

$VNet1| Set-AzVirtualNetwork

RG1 isimli resource group için virtual network, subnet oluşturma ve ilişkilendirme işlemi tamamlanmıştır. Aynı işlemleri RG2 isimli resource group için gerçekleştireceğim.

VNet2 isimli virtual network’ü oluşturmak için aşağıdaki komutu kullanabilirsiniz;

$VNet2 = New-AzVirtualNetwork -ResourceGroupName RG2 -Location CentralUS -Name VNet2 -AddressPrefix 10.2.0.0/16

Subnet oluşturmak için kullanılacak komut aşağıdaki gibidir;

Add-AzVirtualNetworkSubnetConfig -Name VNet2Subnet -AddressPrefix 10.2.0.0/16 -VirtualNetwork $VNet2

Virtual network ile subnet’i ilişkilendirmek için aşağıdaki komut kullanılır;

$VNet2 | Set-AzVirtualNetwork

Resource group, virtual network ve subnet oluşturma işlemlerini tamamladıktan sonra VNet1 için peering işlemini gerçekleştirmek için aşağıdaki komut kullanılabilir;

Add-AzVirtualNetworkPeering -Name FromVNet1toVNet2 -VirtualNetwork $VNet1 -RemoteVirtualNetworkId $VNet2.Id

reference: https://docs.microsoft.com/en-us/azure/virtual-network/tutorial-connect-virtual-networks-powershell

VNet2 için peering işlemini gerçekleştirmek için aşağıdaki komut kullanılabilir;

Add-AzVirtualNetworkPeering -Name FromVNet2toVNet1 -VirtualNetwork $VNet2 -RemoteVirtualNetworkId $VNet1.Id

VNet2 içinde gerekli olan peering yapılandırması başarılı bir şekilde tamamlanmıştır.

VNet1 ve VNet2 arasında peering işlemini tamamladıktan sonra sırada test işlemleri için sanal makine oluşturma işlemi var. Azure Powershell ile sanal makine oluşturma konusunu incelediğim makaleme göz atabilirsiniz. (https://mutlubalik.com/azure-powershell-ile-sanal-makine-olusturma/)

RG1 resource group da yer alacak sanal makineyi oluşturmak için sırasıyla aşağıdaki komutları çalıştıracağım.

Öncelikli olarak aşağıdaki komut yardımıyla sanal makineye giriş yapabilmek için bir kullanıcı hesabı tanımlanır;

$cred= Get-Credential

Credentials işlemi tamamlandıktan sonra aşağıdaki komut kullanılarak RG1 resource group da yer alacak sanal makinenin oluşturma işlemi başlatılır;

New-AzVM -ResourceGroupName “RG1” -Location “East US” -Name “VM1” -VirtualNetworkName “VNet1” -SubnetName “VNet1Subnet” -SecurityGroupName “VM1SG” -PublicIpAddressName “VM1PIP” -Credential $cred -Size “Standard_D8s_v3” -Image “Win2019Datacenter”

RG2 resource group da yer alacak sanal makineyi oluşturmak için aşağıdaki komut kullanılabilir;

New-AzVM -ResourceGroupName “RG2” -Location “Central US” -Name “VM2” -VirtualNetworkName “VNet2” -SubnetName “VNet2Subnet” -SecurityGroupName “VM2SG” -PublicIpAddressName “VM2PIP” -Credential $cred -Size “Standard_E2ads_v5” -Image “Win2019Datacenter”

sanal makine oluşturma işlemi başarılı bir şekilde tamamlanmış bulunmaktadır.

Sanal makinelere bağlantı sağlamak için aşağıdaki komut yardımıyla public ip adresleri öğrenilebilir;

Sanal makineye bağlantı sağlamak için bilgisayarımızda powershell açarak aşağıdaki komut çalıştırılır.

mstsc /v:<publicIpAddress>

Sanal makineye bağlantı gerçekleştirdikten sonra ipconfig komutuyla ip adresini öğrenerek not alıyoruz.

VM1 isimli sanal makinemin ip bilgileri aşağıdaki gibidir;

VM2 isimli sanal makinemin ip bilgileri aşağıdaki gibidir;

Gerçekleştirmiş olduğumuz peering işlemini karşılıklı ping testi yaparak kontrol edeceğim. Her iki sanal makinede de aşağıdaki komutu çalıştırarak ICMP erişimini açıyorum.

New-NetFirewallRule –DisplayName “Allow ICMPv4” –Protocol ICMPv4

VM1 den VM2’ye ping testi yaptığımda başarılı olduğu görülmektedir.

VM2 den VM1’e ping testi yaptığımda başarılı olduğu görülmektedir.

Karşılıklı ping testleri başarılı olmaktadır. Yapılandırmış olduğumuz peering işlemi başarılı bir şekilde çalışmaktadır.

Bu makalede network peering işleminin Azure Powershell kullanılarak gerçekleştirilmesini inceledik.

Bir sonraki makalede görüşmek üzere. Sağlıkla Kalın…

Yazar: Mutlu BALIK