Merhaba,
Önceki yazılarımda VSAN’ın gereksinimlerinden bahsetmiştim. Bu yazımda ise VSAN için kullanılan disklerin nasıl kullanımdan çıkarılacağını anlatacağım. Yani siz bir VSAN ortamı yönetiyorsunuz ve bu VSAN’a bağlı olan disk’leri başka bir tarafta kullanmak istiyorsunuz(VMFS datastore, vFRC vs vs ). Bu durumda ne yapmanız gerekir?
Böyle bir durumda birinci yöntem host’u maintenance mode’a almaktır. Host maintenance mode’a girdikten sonra disk group’ları remove edebilirsiniz. Buraya kadar hiç bir problem yok. Ancak ESXi host’u reinstall etmek durumunda kalırsanız ozaman bir hayli uğraşmanız gerekecek. Host yeniden reinstall edildiğinde, üzerinde bulunan VSAN kalıntılarının temizlenmesi gereklidir. Bunun için iki yöntem mevcuttur. Bunlardan birtanesi çok basit diğeri ise birhayli uğraştırıcı ve tehlikeli.
İlk olarak esxcli komutu ile fiziksel diskleri VSAN disk group’larından kaldırıyoruz. Tabi bu detayına gireceğim yöntem VSAN’ın beta sürümlerinde geçerli değildi.
esxcli vsan storage remove [cmd options]
Bu komut’da; -d (manyetik diskler için), -s (SSD diskler için), -u (UUID için) parametrelerini kullanabiliriz.
Diğer yöntem nedir onuda açıklayayım. Bir önceki yöntemde esxcli komutunu kullandık bu yöntemde de bir komut kullanacağız ancak bu yöntem birazdaha zahmetli bir iş. partedUtil komutu ile biz disk’leri silebiliriz. Ancak ESXi üzerinde bu komutu denediğimizde bize hata verecektir. Aşağıda hata detayını görebilirsiniz.
Error: Read-only file system during write on /dev/disks/naa.500xxxxxxxx WriteNewPtable: Unable to commit to device /dev/disks/naa.500xxxxxxxx
Bu hatanın sebebi, disk’lerin hala VSAN’a bağlı olmasından kaynaklıdır. Yani disk’ler VSAN’a dahil ise bu komutu çalıştıramıyoruz. Öncelik ile host’u VSAN Cluster’dan çıkarmamız gerekiyor. Bunun için aşağıdaki komutu çalıştırıyoruz.
esxcli vsan cluster leave
Yukarıdaki komutu çalıştırdıktan sonra host’un VMkernel’i üzerinden VSAN module’lerini silmek için aşağıdaki komutlarıda çalıştırmanız gereklidir. VSAN’ı enable ettiğinizde host’lar üzerine 3 tane module kurulur. Biz bu module’leri kaldıracağız.
vmkload_mod -u vsan vmkload_mod -u plog vmkload_mod -u lsomcommon
VMkernel module’lerini kaldırmanız zorunlu değil ancak önerilen bu module’lerin kaldırılması. Artık partedUtil komutunu kullanabiliriz.
~ # partedUtil get /dev/disks/naa.500xxxxxx 15566 255 63 250069680 1 2048 6143 0 0 2 6144 250069646 0 0 ~ # partedUtil getptbl /dev/disks/naa.500xxxxxx gpt 15566 255 63 250069680 1 2048 6143 381CFCCC728811E092EE000C2911D0B2 vsan 0 2 6144 250069646 AA31E02A400F11DB9590000C2911D1B8 vmfs 0 ~ # ~ # partedUtil delete /dev/disks/naa.500xxxxxx 1 ~ # partedUtil delete /dev/disks/naa.500xxxxxx 2
Yukarıda da görüldüğü gibi 1 ve 2 numaralı disk’leri sildik. Bölümleri sildikten sonra vmkload_mod komutunu kullanarak VMkernel modüllerini yeniden kaldırıyoruz.
vmkload_mod -u vsan vmkload_mod -u plog vmkload_mod -u lsomcommon
Bu işlemleri tamamladıktna sonra artık VSAN’dan fiziksel disk’leri ayırmış olduk. Siz isterseniz bu disk’leri VMFS formatında yeni bir datastore olarak ekleyebilir veya vSphere Flash Read Cache olarak kullanabilirsiniz.
Burada belirtmiş olduğum ikinci yöntem biraz daha uğraştırıcı. Umarım bu yöntemi kullanmak zorunda kalmazsınız. Size tavsiyem esxcli komutu ile bu işi çözmeniz yönünde olacaktır.
Umarım faydalı olmuştur.
İyi çalışmalar.
Kaynak: VSAN Part 16 – Reclaiming disks for other uses