Hyper-V Cluster – VM Monitoring Nasıl Yapılandırılır

26.04.2013 | 13:57 Dokümanlar , Hyper-V 1 Yorum

BİLGİ: VM Monitoring hakkında kavramsal bilgi için aşağıdaki Hyper-V Cluster – VM Monitoring Nedir başlıklı yazıyı inceleyebilirsiniz.

http://www.serhatakinci.com/index.php/hyper-v-cluster-vm-monitoring-nedir.html

VM Monitoring Yapılandıra Adımları

Failover Cluster Manager üzerinden VM Monitoring özelliğini hızlı ve kolay bir şekilde yapılandırabilirsiniz.

Öncelikle VM Monitoring aktif etmek istediğiniz sanal makineyi bulun.

vm-monitoring-img-001

Seçin ve Configure Monitoring… ‘e tıklayın.

vm-monitoring-img-002

Gelen listede büyük oranda kendi process’i ile çalışan Windows servisleri yer alır.

vm-monitoring-img-003

Örneğin Print Spooler :

vm-monitoring-img-004

Örneğin Virtual Disk :

vm-monitoring-img-005

Örneğin Volume Shadow Copy :

vm-monitoring-img-006

Liste içinde bu kuraldan muaf olan bazı servisler de vardır. Yani kendi process’i yerine mesela svchost.exe ‘ye parametre ile bağlanan bazı servisler gibi…

Örneğin Optimize Drives :

vm-monitoring-img-007

Örneğin World Wide Web Publishing Service :

vm-monitoring-img-008

Ama bazı servisler bu listede görünmez.

Örneğin DHCP Server :

vm-monitoring-img-009

Örneğin DNS Client :

vm-monitoring-img-010

BİLGİ: Listede yer almayan servisleri Monitoring’e dahil etmek için az sonra bahsedeceğim PowerShell komut satırını kullanabilirsiniz.

GUI’de test için en uygun servis olan Print Spooler servisini seçerek ilerleyin.

vm-monitoring-img-011

Hemen ardından Print Spooler servisi Monitoring’e alınır.

vm-monitoring-img-012

Aynı işlemi aşağıdaki PowerShell komut satırını kullanarak da gerçekleştirebilirsiniz.

Add-ClusterVMMonitoredItem –VirtualMachine CL-WS12-v5 -Service spooler

vm-monitoring-img-013

Ayrıca Add-ClusterVMMonitoredItem cmdlet’ini listede yer almayan servisleri eklemek için de kullanabilirsiniz.

Örneğin:

Add-ClusterVMMonitoredItem –VirtualMachine CL-WS12-v5 -Service DHCPServer,DNSCache

vm-monitoring-img-014

İzlenen servisler görünümde yerini alır.

vm-monitoring-img-015

Bir VM için izlenen servis bilgisini aşağıdaki PowerShell komut satırıyla da alabilirsiniz.

Get-ClusterVMMonitoredItem –VirtualMachine CL-WS12-v5

vm-monitoring-img-016

VM Monitoring Kurtarma Davranışı

Normal şartlarda (varsayılan olarak) bir servis için zaten belirli bir kurtarma aksiyonu tanımlıdır. Bu bilgiyi services.msc ‘den ilgili servisin özelliklerindeki Recovery tab’ında görebilirsiniz.

vm-monitoring-img-017

İlgili servis beklenmeyen bir hata sonucunda terminate olursa şayet, ilk olarak sanal işletim sistemi tarafından servisin yeniden başlatılması denenir. (first failure – service restart)

Hemen veya bir süre sonra ikinci kez beklenmeyen bir hata durumu oluşursa, sanal işletim sistemi tarafından ikinci kez servisin yeniden başlatılması denenir. (second failure – service restart)

Daha sonraki hata durumlarında ise varsayılan olarak sanal işletim sistemi artık herhangi bir müdahalede bulunmaz. (subsequent failures – no action)

İşte tam bu noktada yani üçüncü ve daha sonraki beklenmeyen hata durumlarında Cluster servisi tarafından yönetilen VM Monitoring özelliği devreye girerek önce sanal işletim sisteminin aynı Node üzerinde yeniden başlatılmasını (os restart) dener. Sanal makine açıldığında eğer problem tekrar ediyorsa, bu sefer sanal makineyi shutdown edip farklı bir Node üzerine kaydırır ve işletim sistemini yeni Node üzerinde tekrar başlatarak problemi gidermek için denemeye devam eder.

VM Monitoring özelliği tarafından izlenen bir servis beklenmeyen bir şekilde sonlandığında sistem bunu fark eder ve o VM için Cluster seviyesinde bir kritik durum etiketi oluşturur. Test etmek için az önce izlemeye aldığınız spoolsv.exe ‘yi taskkill komutu ile terminate edebilirsiniz.

taskkill /im spoolsv.exe /f

vm-monitoring-img-018

İlk kill işleminde servis yeniden başlatılır. (Guest OS tarafından)

İkinci kill işleminde servis yeniden başlatılır. (Guest OS tarafından)

Üçüncü kill işleminde sanal makine için Critical status bilgisi işlenir, sanal işletim sistemi shutdown edilir ve aynı Node üzerinde tekrar start edilir. (OS restart – Cluster Service ve VM Monitoring tarafından)

vm-monitoring-img-019

Bu esnada Host üzerinde FailoverClustering 1250 event log’u oluşur ve herhangi bir uygulamayla bu log’u izleyerek de çeşitli aksiyonlar almanız mümkün. (SCOM veya Orchestrator Runbook’lar gibi..)

Cluster resource ‘Virtual Machine CL-WS12-v5’ in clustered role ‘CL-WS12-v5’ has received a critical state notification. For a virtual machine this indicates that an application or service inside the virtual machine is in an unhealthy state. Verify the functionality of the service or application being monitored within the virtual machine.

>vm-monitoring-img-020

Sanal makine yeniden başladıktan sonra problem hala devam ediyor olabilir. Bu durumda sayaç sıfırlandığı için yine ilk kill (veya terminate) durumunda servis yeniden başlar, ikinci kill (veya terminate) durumunda servis yeniden başlar, üçüncü kill (veya terminate) durumunda sanal makine shutdown edilir ve farklı bir Node üzerinde tekrar start edilir.

Sanal makine hv-node1 üzerindeyken ikinci kritik durum bilgisi geliyor:

vm-monitoring-img-021

Ardından sanal makine shutdown edilip hv-node2 üzerine alınıyor ve yeniden start ediliyor:

vm-monitoring-img-022

Eğer yeni Node üzerinde de problem devam ediyorsa aynı süreç tekrar işler ancak şu noktayı atlamayın: Cluster üyesi bir sanal makinenin belirli bir süre içinde yapabileceği failover sayısı, sanal makine özelliklerinde yer alan bir ayar ile kontrol edilir.

vm-monitoring-img-023

Varsayılan olarak bir sanal makine Cluster servisi tarafından 6 saat içinde en fazla bir kez failover yapılabilir. Eğer ihtiyacınız varsa buradaki Maximum failures in the specified period değerini arttırabilirsiniz.

Aksi durumda şöyle bir hata görürsünüz:

Clustered role ‘CL-WS12-v5’ has exceeded its failover threshold. It has exhausted the configured number of failover attempts within the failover period of time allotted to it and will be left in a failed state. No additional attempts will be made to bring the role online or fail it over to another node in the cluster. Please check the events associated with the failure. After the issues causing the failure are resolved the role can be brought online manually or the cluster may attempt to bring it online again after the restart delay period.

vm-monitoring-img-024

Eğer sanal makinenin yeterli sayıda failover izni varsa, sanal makine yine önce aynı Node üzerinde, daha sonra ise müsait olan bir başka Node üzerinde tekrar start edilir.

Peki problem hala devam ediyorsa? E artık bir zahmet sunucuya logon olup servisin problemi neymiş diye bir bakın dimi? Her şeyi devletten beklememek lazım :)

Şaka bir yana süreç aynı şekilde devam eder.

Bu süreçteki sanal makine shutdown işlemleri temizdir. Yani sanal işletim sistemi üzerinde çalışan diğer servisler sağlıklı olarak kapatılır ve tekrar başlatılır.

Eğer özel bir nedenle izlediğiniz servislerden birinde problem olduğu bilgisini almak ancak sanal makinenin otomatik olarak restart veya failover olmasını engellemek istiyorsanız, ilgili sanal makine için Failover Cluster Manager ‘da Enable automatic recovery for application health monitoring checkbox’ını temizleyebilirsiniz.

vm-monitoring-img-025

Yazı Etiketleri: , , , ,

Sayfa Başı ▲

Yorumlar (1)

  1. Sema cıngıllıoglu

    güzel döküman tşk.

Yorum Ekle