VMware Multipathing
Multipathing adından da anlaşıldığı üzere birden fazla path bulunması durumudur. ESXi host yani server ile storage arasındaki bağlantıda birden fazla path bulunması hem performans hemde yedeklilik açısından önemlidir. Multipathing ile biden fazla path kullanarak ESXi host’un storage’da oluşturulan LUN’lara bağlanması sağlanabilmektedir. Multipathing bizim storage bağlantımızda yük dengeleme (Load Balancing) yapmamıza olanak sağlar. Storage tarafında veya ESXi host’umuzda bir path’in gitmesi durumunda ortamımız diğer path’leri kullanarak storage erişimine devam edebilmekte ve bu şekilde yedekli çalışan bir yapıya sahip olabilmekteyiz.
Multipathing için özel bir driver zorunluluğu bulunmamaktadır. ESXi Server’ın defaultta üç farklı multipathing policy desteği vardır şimdi bunları inceleyelim.
1.Most Recently Used (MRU)
Bu policy kullandığında ESXi host sistem boot zamanında ilk seçilen path’i aktif olarak kullanmaya başlar. Path fail olduğunda alternatif path’e geçilir. Fakat fail olan path tekrar aktif olduğunda ESXi host path’ini değiştirmez yani bu policy’de failback özelliği bulunmamaktadır. Active/Passive array tarafından present edilmiş LUN’lar için default policy budur.
2. Fixed
Bu teknikte ESXi host belirlenmiş bir path kullanmaktadır. Eğer konfigure edilmiş bir path yoksa MRU’da olduğu gibi sistem tarafından boot süresinde keşfedilen ilk path kullanılır. Eğer ESXi host aktif path’i kaybederse alternatif path’e geçiş olur. Fail olan path ayağa kalkması durumunda host failback yaparak ilk aktif path’e geri döner. Active/Active array için default policy’dir.
3. Round Robin
Bu teknikte yazımın ilk başında bahsettiğim yük dengeleme işlemi sağlanması için ESXi host bütün aktif pathleri kullanmaktadır. Bu teknik hem Active/Active hemde Active/Passive array için kullanılabilmektedir fakat Active/Passive array’de sadece Active controller’daki path’ler kullanılabilmektedir.
NOT: Genelde ESXi host array için en uygun default path policy’leri seçerek kullanmaktadır. Eğer bu policy’leri değiştirmek istiyorsanız Storage vendor’unuz tarafından desteklenen ve test edilmiş policy’leri seçtiğinize emin olmanız gerekmektedir.
ÖNEMLİ NOTLAR:
- Üstte bahsettiğimiz gibi Active/Passive array için default policy MRU’dur. VMware tarafından Active/Passive array için Fixed policy kullanılması önerilmemektedir. Fixed seçiminde yavaş LUN erişiminde sebep olan hızlı path geçişleri olmaktadır. (Path-Trashing) Active/Passive array’de optimal performans için MRU kullanılmalı veya Round Robin tercih edilebilmektedir.
- İlk anlatıldığında performans artışı sağlayan ve en mantıklı görünen Round Robin(RR) policy bütün storage array’ler tarafından desteklenmemektedir. Desteklenmeyen storage array için yapılan bu policy seçiminde storage kesintileri yaşamak kaçınılmazdır. Bu policy seçilmeden önce storage array’in dökümanı incelenmeli desteklediği ve önerildiği teyit edilmelidir.
- ESXi host bu açıkladığımız 3 policy haricinde storage vendor bazlı 3rd party olarak adlandırdığımız ve bazı durumlarda en iyi performans sağlayan policy’ler de desteklemektedir. Marka ve model bazlı spesifik özellikleri kullanabilmek için design yapılırken bu policy’ler değerlendirilmelidir.
- Eğer storage array’iniz ALUA (Asymmetric Logical Unit Access) destekliyorsa bu özelliği aktifleştirmeniz önerilmektedir. Bu özellik storage tarafında aktif edildiğinde ESXi tarafından otomatik olarak tespit edilmekte ve kullanılabilmektedir. Bazı ortamlarda daha iyi performans sağlayan bu özellikle “Active Optimized” olarak adlandırılan path storage tarafından seçilmektedir.
Native Multipathing Plugin (NMP)
NMP VMware tarafından sağlanan default multipathing plugin’dir. NMP ile fiziksel path seçimi abort/reset gibi task’ların yönetimi yapılabilmektedir. NMP’nin 2 alt plugin’i bulunmaktadır bunlar;
Storage Array Type Plugin (SATP): SATP aktif path’lerin bilgisini tutmaktadır. Storage tarafındaki fiziksel path’lerin durumunu kontrol etmektedir. Bir path fail olduğunda SATP tarafından failover başlatılmaktadır.
Path Selection Policy (PSP): PSP multipathing policy’leri baz alarak hangi path’in aktif olarak seçileceğini belirlemektedir.
Multipathing Policy Nasıl Değiştirilir ?
Datastore bazlı multipathing policy görüntülemek veya değiştirmek için vCenter’dan ilgili datastore’u seçiyoruz Configure>Connectivity and Multipathing’e geliyoruz. Ekran alıntısında görüldüğü üzere multipathing policy MRU seçili ve ALUA aktif çalışmaktadır.
ESXi host’da yüklü NMP SATP listesini görmek için aşağıdaki komutu çalıştırabiliriz.
esxcli storage nmp satp list
ESXi host’ta yüklü multipathing pluginlerini aşağıdaki komut yardımıyla listeyebilmekteyiz.
esxcli storage core plugin list