Azure

Anlık VM Götüntüsü Alma ve Makina Oluşturma – PowerShell

Avatar
Written by Emre Martin

Aşağıdaki PowerShell komutlarını kullanarak  mevcut bir sanal makinanın anlık görüntüsünü (Snapshot) alıp, aldığınız bu anlık görüntüden bir sanal makina oluşturabilirsiniz.


#Değişkenler#
$Vmname = ”Sanal-Makina-İsmi”
$ResourceGroupName = “Kaynak-Grubu-İsmi”
$virtualNetworkName = “Sanal-Network-İsmi”

#Azure Hesabına Bağlanma#
Login-AzureRmAccount
Select-AzureRmSubscription -SubscriptionId xxxxxxxxx-xxxxxx

#Anlık Görüntünün Alınması#
$vm = get-azurermvm -ResourceGroupName $resourceGroupName -Name $vmName
$snapshot = New-AzureRmSnapshotConfig -SourceUri $vm.StorageProfile.OsDisk.ManagedDisk.Id -Location “West Europe” -CreateOption copy
New-AzureRmSnapshot -Snapshot $snapshot -SnapshotName “$vmname.SnapShot” -ResourceGroupName $resourceGroupName
$snapshotname=“$vmname.SnapShot”

#Anlık Görüntüden Sanal Makinanın Oluşturma#
$VM=Get-AzureRmVM -Name $Vmname -ResourceGroupName $ResourceGroupName
$VMSize=$vm.HardwareProfile.VmSize
$snapshot = Get-AzureRmSnapshot -ResourceGroupName $resourceGroupName -SnapshotName $snapshotname 
$diskConfig = New-AzureRmDiskConfig -Location $snapshot.Location -SourceResourceId $snapshot.Id -CreateOption Copy 
$disk = New-AzureRmDisk -Disk $diskConfig -ResourceGroupName $resourceGroupName -DiskName $Vmname

#Sanal Makina yapılandırması#
$VirtualMachine = New-AzureRmVMConfig -VMName “$Vmname-Clone” -VMSize $VMSize
$VirtualMachine = Set-AzureRmVMOSDisk -VM $VirtualMachine -ManagedDiskId $disk.Id -CreateOption Attach -Windows

#Public IP Oluşturma#
$publicIp = New-AzureRmPublicIpAddress -Name ($Vmname.ToLower()+’_ip’) -ResourceGroupName $resourceGroupName -Location $snapshot.Location -AllocationMethod Dynamic

#Sanal Makina Kaynak Grubu Bilgileri#
$vnet = Get-AzureRmVirtualNetwork -Name $virtualNetworkName -ResourceGroupName $resourceGroupName

#NIC’in Oluşturulması#
$nic = New-AzureRmNetworkInterface -Name ($Vmname.ToLower()+’_nic’) -ResourceGroupName $resourceGroupName -Location $snapshot.Location -SubnetId $vnet.Subnets[0].Id -PublicIpAddressId $publicIp.Id
$VirtualMachine = Add-AzureRmVMNetworkInterface -VM $VirtualMachine -Id $nic.Id

#Sanal Makinanın Oluşturulması#
New-AzureRmVM -VM $VirtualMachine -ResourceGroupName $resourceGroupName -Location $snapshot.Location


 

Yazar Hakkında

Avatar

Emre Martin

Cloud Solutions Architect