Hyper-V Cluster – Node Kapanınca VM’lerin Hareket Yapısı

Merhaba,

Bu yazıda, Hyper-V clusterı oluşturan fiziksel makinelerin (Node) Maintenance Mode’a alınması durumunda üzerlerinde tuttukları sanal makinelerin (VM) hareketlerinin ne şekilde olduğuna bakacağız.

Bildiğiniz üzere Hyper-V’de çalışan VM’lerimiz için Low, Medium ve High olmak üzere üç tip öncelik seviyesi belirleyebiliyoruz. Burada belirlediğimiz öncelik seviyesi, sanal makinelerimizin hareketinin ne şekilde olduğuna da karar verilmesine yardımcı oluyor.

Öncelikle Hyper-V’de sanal makinelerimizi Migrate ederken bu hareketi Live Migration veya Quick Migration şeklinde iki şekilde yapabildiğimizi hatırlamamız gerekiyor. Live Migration’da daha fazla bant genişliği kullanılmakta fakat makineye olan connectionlar düşürülmemekte. Makine live migration esnasında operasyonel durumunu koruyabilmektedir. Fakat Quick Migration’da ilk olarak makine Saved State dediğimiz duruma alınmakta ve bu haliyle diğer node’a taşınmaktadır. Quick migration daha az bant genişliği tüketip daha hızlı bir şekilde tamamlanırken bu migration esnasında connectionlar düşürülmektedir.

Node’larımızdan birisinde problem olduğunda ise, cluster servisi ilk önce makinelerin prioritylerine bakmakta ve göç işlemlerini bu priority değerine göre yapmaktadır. Eğer makinelerimiz High veya Medium priority’e sahipse, Live Migration kullanılarak makineler taşınmakta ve kesinti yaşanmamaktadır. Fakat Low priority seçtiğimiz makineler ilk önce High ve Medium prioritye sahip makinelerin işlemlerinin bitmesini beklemekte, daha sonra Saved State’e alınarak Quick Migration ile taşınmaktadır.

Eğer herhangi bir öncelik seçilmemişse, Hyper-V servisi Medium priority seçilmiş gibi davranmaktadır. Bu varsayılan değeri değiştirmek için Virtual Machine resource type’ı içinde MoveTypeThreshold değerinde tutulan değeri değiştirmemiz gerekmektedir. Eğer sadece Live Migration veya Quick Migration kullanılmasını istiyorsak bu değeri değiştirmeliyiz. Bu değer Low makineler için 1000, Medium için 2000 ve High için 3000 şeklinde tanımlanmıştır.

Bu değeri değiştirmek için aşağıdaki komut kullanılabilir:

1
Get-ClusterResourceType “Virtual Machine” | Set-ClusterParameter MoveTypeThreshold 1000

Windows Server 2016 Nested Virtualization

  • A Hyper-V host running Windows Server 2016 or Windows 10 Anniversary Update.
  • A Hyper-V VM running Windows Server 2016 or Windows 10 Anniversary Update.
  • A Hyper-V VM with configuration version 8.0 or greater.
  • An Intel processor with VT-x and EPT technology.

Öngereksinimlerini sağladığımız ölçüde, Hyper-v üzerindeki sanal makinelerimizin içerisine sanal makineler kurabilmekteyiz. Fakat daha yeni gelen bir özellik olduğu için bazı sınırlamalar bulunuyor, ve tabii ki production ortamlarda bu özelliğin kullanılması önerilmiyor.

Daha detaylı bilgi almak için https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/user-guide/nested-virtualization linkini kullanabilirsiniz. Windows Containers ortamlarında ve test ortamlarında denenebilecek bir yapı.