vSphere Cluster Service Status: Unhealthy Hatası Çözümü ve Retreat Mode

Merhaba arkadaşlar;

Bu anlatımımda sizlere karşılaştığım bir hatanın çözümünü ve bu hatayı çözerken kullandığım yöntemi anlatacağım.

vCLS nedir?

VMware, vSphere 7.0 Update 1 ile birlikte vCenter’ın kullanılamadığı durumlarda DRS işlemlerinin yürütülebilmesi ve dolayısıyla yük dengeleme işlemlerinin yapılabilmesi için geliştirdiği vCLS’i tanıtmıştı. Bu özellik, eğer ortamınızda vCenter erişilemez hale geldiyse gerekli yük dengeleme işlemlerinin devamlılığını sağlayabilmek için geliştirilmiştir. Çünkü vCenter’ın ortama ne zaman geri geleceğini bilemeyeceği için Cluster’daki hostların dar boğaz yaşamaması ve ardından sanal makinelerin sağlık durumlarının etkilenmemesi gerekmektedir. Bu işlemlerin yürütülebilmesi için her cluster bazında maksimum 3 adet mini ajan sanal makine oluşturulur. vCenter sağlıklı olduğu durumlarda bir işlevleri yoktur.

Retreat Mode Nedir?

vSphere 7.0 u1 ile birlikte DRS açtığınız her clusterda bu vCLS makineleri otomatik olarak oluşturulacaktır. Ama örneğin clusterda çalışan storage’te bakım yapacağınızı, o clusterda başka bir storage olmadığını ve storage’i tamamen kapatacağınız bir seneryo düşünelim. DRS’i devre dışı bırakıp bu vCLS makinelerini her ne kadar kapatsanız da otomatik olarak geri açılacaktır. Başka bir clustera da migrate edemezsiniz. Ya da clusterı silmek istediğinizde bu vCLS makineleri bulunduğu için işleminizi gerçekleştiremeyeceksiniz. Yanlışlıkla bu makineleri silseniz dahi otomatik olarak tekrar oluşturulacaklardır. İşte bu durumlarda cluster bazında Retreat Mode kullanmanız gerekmektedir.

Şimdi de benim yaşadığım soruna geri dönelim. Benim yapımda oluşan bir hatadan dolayı üzerinde vCLS sanal makinesi bulunan hostlarımdan bazıları kapandı. Ardından clusterımda yeni vCLS makineleri oluşturuldu, sonra kapanan hostlar geri geldi ve artık sanal makineler oluştu. Buraya kadar bir sorun görünmüyor ama ardından alttaki hatayı almaya başladım:

vSphere DRS functionality was impacted due to unhealthy state vSphere Cluster Services caused by the unavailability of vSphere Cluster Service VMs. vSphere Cluster Service VMs are required to maintain the health of vSphere DRS.

İlgili KB

Cluster üzerinde Monitor->vSphere Cluster Services->Health bölümünde de alttaki hatayı almaktaydım

Buna çözüm olarak Cluster’ımda önce Retreat modunu açıp sonra kapatmam gerektiğini anladım. Cluster üzerindeki vCLS’leri kapatıp açmam, silip yeniden ekletmem çözüm değildi.

İlk adım olarak vCenter’a giriş yapıp ilgili Clusterımızın üzerine tıklayarak tarayıcımızın adres çubuğundan cluster domain ID’mizi buluyoruz:

Url attaki gibi olacaktır:

https://FQDN/ui/app/cluster;nav=h/urn:vmomi:ClusterComputeResource:domain-c131877:b1baf673-c217-49c2-8661-b51cf1ae414b/monitor/health

domain-c131877 kısmını kopyalıyoruz. Burada önemli olan id olarak 131877 bölümünü alıyoruz.

Sonra vCenter serverimizi seçiyoruz ardından configure tabından Advanced Settings menüsüne giriyoruz. Edit Settings butonuna tıklıyoruz:

Yeni girdi ekliyoruz:

Name kısmına “config.vcls.clusters.domain-c(ID).enabled” giriyoruz. (ID) olarak belirttiğim bölüme biraz önce kopyaladığınız kendi cluster idnizi eklemelisiniz.

value kısmına da False girmelisiniz. Ardından ADD butonuna basıp Save butonuna basıyoruz:

Daha detaylı bir anlatım isterseniz ilgili KB’yi buradan inceleyebilirsiniz.

vCLS monitoring service her 30 saniyerde bir çalışmaktadır. Biraz bekledikten sonra ilgili clusterdaki vCLS sanal makinelerinin silinmeye başladığını göreceksiniz. Ardından da clusterda hala DRS aktifse DRS’in düzgün çalışmadığına dair ilgili alarmlar almaya başlayacaksınızdır.

Daha sonra cluster’ı silebilir ya da yapmak istediğiniz işlemleri yapabilirsiniz. Eski haline getirmek için de yine aynı vCenter->Configure->Advanced Settings bölümünden edit settings butonuna basıp Name bölümünden vcls diye aratarak false girdiğimiz parametreyi True yapıp kaydederek geri alabilirsiniz:

Save dedikten sonra yaklaşık 30 saniye içerisinde yeni vCLS sanal makinelerinin oluşmaya başladığını ve cluster sağlık durumunun düzeldiğini göreceksiniz:

Umarım faydalı bir anlatımda bulunmuşumdur. Başka bir anlatımda görüşmek üzere…