1. Ana Sayfa
  2. Sanallaştırma
  3. Hyper-V Live Migration Beetween Cluster Nedir? Nasıl Yapılır?

Hyper-V Live Migration Beetween Cluster Nedir? Nasıl Yapılır?

Bu yazıda sizlere Windows Server 2012 işletim sistemi ile hayatımıza giren Hyper-V özelliklerden Live Migration Beetween Cluster özelliğini inceleyeceğiz.

Beetween Cluster nedir ne işe yarar?

Aynı networkte bulunan farklı Hyper-V Failover Cluster yapıları içindeki sanal makineleri canli olarak Cluster’lar arası taşıma işlemine denir. Windows Server 2008 R2 işletim sistemi ile sanal makineleri Live Storage Migration özelliği ile farklı bir Hyper-V sunucusu üzerine taşıyabiliyorduk. Windows Server 2012 ile artık Live Migration Beetween Cluster sayesinde farklı cluster yapıları içerisindeki sanal makineleri farklı Hyper-V sunucuları üzerine taşıyabilmemiz mümkündür. Live Migration Beetween
Cluster her ne kadar live olarak taşınıyor olsa da birkaç (3-5) ping kaybı hissedilmektedir. Ancak sanal makineyi kapatmamıza gerek yoktur. Live Migration Beetween Cluster özelliğini şu an için PowerShell üzerinden yapılabilmektedir.

Live Migration Beetween Cluster teknik olarak aşağıdaki aksiyonlar ile işlemini tamamlamaktadır.

 

  1. Sanal makine kaynak Cluster üzerinden Remove edilir.
  2. Live Migration ile sanal makine hedef Cluster üzerine Move edilir.
  3. Sanal makine hedef Cluster üzerine Join edilir.

 

Bu yeni özellik yöneticilerin yüksek kullanılabilirlik, yeni donanım gereksinimlerine yanıt vermek ve donanım yeteneklerini daha iyi kullanabilmeyi sağlamaktadır.

Aşağıdaki yapı da Live Migration Beetween Cluster konusu incelenmiştir.


Resim-1

Şimdi kısaca yapıyı inceleyelim.

FOCluster adında NODE-1 ve NODE-2 Hyper-V sunucularından oluşan Cluster yapısı bulunmaktadır.


Resim-2

Cluster adında HYPERV-1 ve HYPERV-2 sunucularından oluşan Cluster yapısı bulunmaktadır.


Resim-3

Hyper-V Manager konsolu üzerinde Hyper-V sunucularımız görülmektedir. Test ortamı için hazırlamış olduğum SVR01 sanal makinesi FOCluster-NODE-1 üzerinde çalışmaktadır.


Resim-4

Failover Cluster Manager konsolunu açarak sanal makinemizin FOCluster NODE-1 üzerinde çalıştığını tekrar kontrol ediyoruz.


Resim-5

Live Migration Beetween Cluster için kullanacağımız Script aşağıdaki gibidir.

<pre class=”lang:ps decode:true”>

function Move-AnotherClusterVM {

param(

[string]$DestinationCluster,

# Get Host and Cluster Information

[array]$VMArray

)

 

$Hostname = (Get-VMHost).Name

$SourceCluster = (Get-Cluster $Hostname).Name

# Create VM Array

 

# Get All Virtual Machines

$AllVMs = Get-VM

foreach ($VM in $AllVMs)

{

# Get VM and Cluster Information

$VMName = $VM.Name

$HyperVHost = $VM.ComputerName

$VMState = $VM.State

$ClusterGroup = Get-ClusterGroup | where Name -like &quot;*$VMName*&quot;

 

if ($VMArray.Contains($VMName) -eq $True)

{

# Remove from Cluster Resources

if ($ClusterGroup)

{

Get-ClusterGroup $ClusterGroup.Name -Cluster $SourceCluster | Remove-ClusterGroup -RemoveResources -Force

}

 

Write-Host &quot; &quot;

Write-Host Working on $VMName ..

 

# Get Volume and Memory Information

$Volume = ((Get-ClusterSharedVolume -Cluster $DestinationCluster | Select -ExpandProperty SharedVolumeInfo | Select @{label=&quot;Name&quot;;expression={(($_.FriendlyVolumeName).Split(&quot;\&quot;))[-1]}},@{label=”FreeSpace”;expression={($_ | Select -Expand Partition).FreeSpace}} | Sort FreeSpace -Descending)[0]).Name

$DestinationNode = ((Get-Cluster $DestinationCluster | Get-ClusterNode | Select Name,@{label=&quot;FreeMemory&quot;;expression={([math]::round(((Get-WmiObject -ComputerName $_.Name -Class Win32_OperatingSystem).FreePhysicalMemory / 1KB), 0))}} | Sort FreeMemory -Descending)[0]).Name

 

# Move Virtual Machine

Move-VM $VMName -ComputerName $HyperVHost -DestinationHost $DestinationNode -IncludeStorage -DestinationStoragePath C:\ClusterStorage\$Volume\$VMName

 

# Add to Destination Cluster Resources

Add-VMToCluster $VMName -Cluster $DestinationCluster

 

Write-Host Done.

}

else

{

Write-Host &quot; &quot;

Write-Host Skipping $VMName ..

}

}

}</pre>

Script’i biraz daha kolaylaştırarak Move-AnotherClusterVM adında bir fonksiyon haline getirilmiştir. –DestinationCluster ile hedef Cluster –VMArray ile taşıyacağımız sanal makine adını yazıyoruz.

Komut setini çalıştırdıktan sonra Moving Virtual Machine and Storage işlemi başlıyor.


Resim-6

İşlem sırasına göre ilk olarak Failover Cluster Manager üzerinden SVR01 sanal makinesini remove ediyor.


Resim-7

Sanal makine Cluster üzerinden Remove edildikten sonra Hyper-V Manager konsolundan kontrollerimizi yapabiliriz. Status kısmında Moving Virtual Machine and Storage (9%) olarak taşımaya devam etmektedir


Resim-8

Taşıma işlemini Hyper-V Manager konsolunda ve PowerShell üzerinde aynı şekilde görebilirsiniz.


Resim-9

PowerShell konsolunda taşıma işlemini takip ederseniz sanal makinenin hedef Cluster üzerine eklenmesini de görebilirsiniz.


Resim-10

Live Migration Beetween Cluster işlemi tamamlandıktan sonra sonuç çıktısını aşağıda görebilirsiniz.SVR01 artık HYPERV-2 sunucusu üzerinde çalışmaktadır.


Resim-11

Daha önce NODE-1 üzerinde çalışan SVR01 artık HYPERV-2 üzerinden çalışmaktadır.


Resim-12

Daha önce FOCluster yapısı üzerinde olan SVR01 şimdi Cluster üzerinde çalışmaktadır.


Resim-13

Bu yazıda Hyper-V Live Migration Beetween Cluster konusunu incelemiş olduk.

Bu konuyla ilgili sorularınızı https://forum.mshowto.org linkini kullanarak ulaşacağınız forum sayfamızda sorabilirsiniz.

Referanslar

www.mshowto.org

Yorum Yap

Yazar Hakkında

10 yıl gibi bir süredir sektörde çeşitli pozisyonlarda görev almıştır. Sistem Entegratörü olan bir firmada proje yöneticiliği pozisyonunda birçok proje gerçekleştirmiştir. Şu an Bilge Adam Bilişim Grubunda Sistem ve Güvenlik Departmanında Danışman olarak yer almaktadır. Sahip olduğu Sertifikalar; MCSE Private Cloud, MCSA Office 365,MCSA Windows Server 2012, MCPS, IBM System X, IBM System Storage, Veeam VMSP, VMTSP.

Yorum Yap