SAP HANA ve VMware
Merhaba,
SAP HANA ve VMware isimli bu yazımda sizlere VMware vSphere üzerinde bulunduracağınız SAP HANA virtual machine’lerinin özellikleri ve önerilen konfigurasyonları hakkında detaylı bilgiler vereceğim.
Daha önce SAP ile ilgili aşağıdaki gibi bir makale yazmıştım.
SAP kullanıcıları, VMware vSphere üzerinde sanallaştırılmış SAP HANA platformunu çalıştırarak önemli avantajlar sağlar. Öncelikle Sanallaştırma mimarisinde SAP HANA kullandığınızda eğer ortamınızda bir cluster var ise fiziksel donanımda bir sorun yaşanması durumunda çalışan virtual machine’i farklı bir host’a migrate edebilir veya fiziksel donanımın ansızın kapanması durumunda virtual machine’in farklı bir host üzerinde vSphere HA sayesinde açılmasını sağlayabilirsiniz. Elbette sanallaştırma mimarilerinin operasyonel anlamda ciddi kazanımları bulunmaktadır. SAP HANA sistemlerini VMware sanallaştırma ortamlarında sorunsuz kullanabileceğinizi belirtmek isterim.
SAP HANA ve VMware
SAP HANA sunucularını VMware ortamlarında çalıştırmanız durumunda aşağıdaki yeteneklerden faydalanacağınızı belirtmek isterim.
- NSX veya DRS sayesinde artırılmış güvenlik ve SLA oranları.
- VMware vSphere vMotion sayesinde çalışan SAP HANA sunucularının farklı bir host’a power on bir şekilde migration işlemi.
- vSphere HA sayesinde SAP HANA virtual machine’inin çalıştığı ESXi host’un down olması durumunda virtual machine’ler otomatik olarak cluster’da bulunan farklı ESXİ host’lar üzerinde power on olabilecektir. vSphere HA ile ilgili aşağıdaki makalelerimi inceleyebilirsiniz.
Objective 2.2 – Describe HA solutions for vSphere
SAP HANA’nın çalışacağı VMware ortam ortamlarında aşağıda belirteceğim işlemlere dikkat etmeniz gerekiyor. vSphere 7.0 U1 geçtiğimiz günlerde release oldu ve ben bu makalede vSphere 7.0 U1 ile ilgilide ekstra bilgiler vereceğim.
vSphere 7.0 U1 ile birlikte bir SAP HANA virtual machine’i üzerinde maksimum konfigurasyonlarda bazı değişiklikler oldu.
vSphere 7.0 U1 ile birlikte SAP HANA çalıştırılacak virtual machine’lere 6 TB memory verebilirsiniz. Ancak bu memory miktarını şuan için Skylake ve Cascade lake tabanlı işlemcileri kullanıyorsanız verebilirsiniz. SAP HANA için virtual machine üzerinde minimum 128GB memory olması gerekmektedir. Tabi bu sizin SAP HANA üzerinde çalıştıracağınız iş yüküne göre değişkenlik gösterir.
Bir SAP HANA VM yapılandırması, maksimum 256 vCPU ile yapılandırılabilir. Haswell tabanlı sistemlerde maksimum 144 vCPU, Broadwell tabanlı sistemler maksimum 192 vCPU ve Skylake ve Cascade Lake tabanlı sistemlerde maksimum 224 vCPU yapılandırılabilir. Dolayısıyla bu, CPU kaynakları (SAPS kapasitesi) SAP HANA VM’nin sınırlayıcı faktörüdür. SAP, üretim için bir SAP HANA sistemi için minimum 8 pCPU çekirdeği talep eder. Bugün itibariyle Haswell (18 çekirdekli CPU) veya daha sonraki CPU nesli (Yarım Soket VM) ile CPU soketi başına maksimum 2 VM’ye izin verilmektedir.
Daha önceki makalelerimden hatırlayabilirsiniz. Persistent memory denilen bir kavram ortaya çıktı. Persistent Memory sayesinde çok yüksek performans alabilirsiniz. Persistent memory ile ilgili makalemi aşağıdaki linkten inceleyebilirsiniz.
vSphere 6.7 – Persistent Memory
vSphere 6.7 EP14 ve vSphere 7.0 U1 ile birlikte SAP HANA sunucularında PMEM yani Persistent Memory kullanabilirsiniz. Ancak bunu kullandığınızda bazı kısıtlamalar karşımıza çıkıyor. VMware, vSphere 6.7 ve 7.0 ile Intel Optane PMem’i destekler. VMware ve Intel, SAP HANA’nın Optane PMem özellikli VM’lerle çalışmasını sağlamak için SAP ile birlikte çalıştı. vSphere 6.7’de (6.7 EP 14 sürümünden itibaren) 6 TB’a kadar (DRAM + Optane PMem) SAP HANA VM’lerin ve ayrıca vSphere 7.0 U1 sürümünden itibaren artık desteklenmektedir. Ayrıntılar için SAP Note 2913410‘a bakabilirsiniz. VMware, müşterilerin SAP’den özel danışmanlık almasını şiddetle tavsiye ediyor. Eğer Persistent Memory kullanacak iseniz bazı kısıtlamalara dikkat etmeniz gerekiyor.
SAP HANA ile birlikte Optane PMem özelliğini kullanacaksanız vSphere HA support edilmiyor. vSphere HA ihtiyaçları için SAP HANA System Replication gibi 3 party bir ürünü kullanmanız gerekecektir. Tabiki şunu söyleyebilirsiniz. SAP HANA çözümlerinde zaten yüksek memory kullanılıyor ve vSphere HA ‘in kullanılması için cluster’da yeterli kaynağınızda olmayabilir veya olası bir downtime durumunda SAP HANA virtual machine’i farklı host’da kaynak yetersizliğinden dolayı açılmayabilir. Özet ile SAP HANA sunucularının bulunduğu cluster’da eğer vSphere HA kullanılacak ise kaynak planlaması iyi bir şekilde yapılmalıdır.
Yukarıdaki görseli incelediğinizde SRM konusu dikkatinizi çekebilir. VMware SRM, disaster recovery çözümüdür. vSphere Replication sayesinde virtual machine’i farklı bir lokasyona replike edebilirsiniz. vSphere Replication kullanıyorsanız minimum 5 dakikalık bir RPO ile bu işlemi gerçekleştirebilirsiniz. SAP HANA virtual machine’leri için replikasyonu kullanabilirsiniz ancak RPO süresi 5 dakika olduğu için yani replike edilen data 5 dakika geç geleceği için SAP HANA database ‘inde sorunlar ile karşılaşabilirsiniz. Bundan dolayı VMware SRM ve vSphere Replication’in kullanılması önerilmez. Aynı durum FT içinde geçerlidir.
vSphere vMotion özelliği sayesinde bir virtual machine’i power on bir şekilde farklı bir ESXi host’a migrate edebiliyoruz. vSphere 7 ile birlikte vMotion özelliğinde de bazı değişiklikler yapıldı. vSphere 7 üzerinde çalışan SAP HANA virtual machine’lerinde vMotion işlemi başlatıldığında vSphere 6.7’ye göre 2.5 kat daha hızlı sonuç alındığı belirtiliyor. vSphere 7 ile birlikte gelen vMotion yenilikleri ile ilgili ayrıca bir makale yazacağım.
SAP HANA kullanıyorsanız aşağıda belirteceğim Best Practices’lere dikkat etmeniz gerekiyor.
- SAP HANA sunucularında Memory rezervasyonu yapılmalıdır. Sunucu üzerinde memory miktarı kadar rezervasyon yapılmalıdır.
- Paravirtual SCSI Controller kullanılmalıdır.
- VMxnet3 network kartı kullanılmalıdır.
- ESXi host’un çalıştığı fiziksel sunucuda HT aktif durumda olmalıdır.
- vMotion, management, backup ve replikasyon için kullanılan network’ler dedike olmalıdır. Yani SAP HANA virtual machine’i ile bu belirtmiş olduğum VMkernel network’leri aynı uplink’i kullanmamalıdır.
- Yoğun kullanım olduğu zamanlarda vMotion ve Snapshot almayın.
- CPU yapılandırması yaparken CPU Ready Time’a dikkat edin.
- Aşağıdaki SAP HANA ve VMware parametrelerini uygulayın.
transparent_hugepage=never
numa_balancing=disabled
vmw_pvscsi.cmd_per_lun=254
vmw_pvscsi.ring_pages=32
Son olarak; SAP HANA yüksek gereksinimlerinden dolayı sanallaştırma ortamlarında size bazı zorluklar çıkarabilir. Özellikle vMotion ve Snapshot gibi operasyonlarda eğer dikkatli olmaz iseniz başınıza dertler açabilir. SAP HANA virtual machine’lerinin memory ve disk boyutları yüksek olduğu için uyarıyorum aslında. Çünkü bir virtual machine’i vMotion ile farklı bir ESXi host’a migrate etmek istediğinizde virtual machine’in memory datası taşınır. Virtual machine’in memory’si ne kadar büyük ise migration işlemi o kadar uzun sürecektir. vMotion tamamlandığında ise virtual machine üzerinde anlık ping kayıpları görebilirsiniz. Aynı durum snapshot içinde geçerlidir. Disk ve Memory ne kadar yüksek ise snapshot işlemi o kadar uzun sürecek ve performans sorunu yaşamanızda kaçınılmaz olacaktır. Bundan dolayı SAP HANA gibi ürünlerde kesinlikle snapshot ve vMotion işlemleri mümkün olduğunca gerçekleştirmeyin.
Umarım faydalı olmuştur.
İyi çalışmalar.