Najlepszy wybór systemu plików dla NFS przechowującego obrazy dysków VMware
11
Obecnie używamy SAN iSCSI jako pamięci masowej dla kilku serwerów VMware ESXi. Badam użycie celu NFS na serwerze Linux dla dodatkowych maszyn wirtualnych. Jestem również otwarty na pomysł użycia alternatywnego systemu operacyjnego (takiego jak OpenSolaris), jeśli zapewni on znaczące korzyści.
Jaki system plików oparty na systemie Linux preferuje bardzo duże ciągłe pliki (takie jak obrazy dysków VMware)? Alternatywnie, w jaki sposób ludzie znaleźli ZFS na OpenSolaris dla tego rodzaju obciążenia?
Naprawdę polecam rzucić okiem na ZFS, ale aby uzyskać przyzwoitą wydajność, musisz wybrać dedykowane urządzenie jako ZENT Intent Log (ZIL). Zasadniczo jest to małe urządzenie (kilka GB), które może zapisywać bardzo szybko (20-100 tys. IOPS), co pozwala ZFS natychmiast potwierdzić, że zapisy zostały zsynchronizowane z pamięcią, ale poczekaj do 30 sekund, aby faktycznie zatwierdzić zapisy na dyskach twardych w twój basen. W przypadku awarii / awarii wszelkie niezatwierdzone transakcje w ZIL są odtwarzane po zamontowaniu. W rezultacie oprócz zasilacza UPS może być potrzebny napęd z wewnętrznym zasilaczem / superkondensatorem, aby wszelkie oczekujące operacje we / wy dotarły do trwałego magazynu w przypadku utraty zasilania. Jeśli zdecydujesz się na dedykowane urządzenie ZIL, zapisy mogą mieć duże opóźnienia, co prowadzi do różnego rodzaju problemów. Zakładając, że nie interesujesz się Sunem
DDRDrive X1 - 4 GB DDR2 + 4 GB SLC Flash na karcie PCIe x1 zaprojektowanej specjalnie do użytku w ZIL. Zapisy trafiają do pamięci RAM; w przypadku utraty zasilania synchronizuje pamięć RAM z NAND w czasie <60 sekund zasilanym przez superkondensator. (50–300 tys. IOPS; 2000 USD Direct, 1500 USD dla .edu)
2,5-calowy dysk SSD Intel X25-E 32 GB (SLC, ale bez super cap, 3300 IOPS zapisu); [390 $ @ Amazon] [11]
Po skonfigurowaniu OpenSolaris / Nexenta + ZFS istnieje kilka sposobów przenoszenia bloków między OpenSolaris a ESX boxen; to, co jest dla Ciebie odpowiednie, w dużej mierze zależy od twojej istniejącej infrastruktury (przełączniki L3, karty Fibre) i twoich priorytetów (redundancja, opóźnienie, szybkość, koszt). Ponieważ jednak nie potrzebujesz wyspecjalizowanych licencji do odblokowania funkcji iSCSI / FC / NFS, możesz ocenić wszystko, do czego masz sprzęt i wybrać swój ulubiony:
Obiekty docelowe iSCSI (obciążenie procesora; brak obsługi TOE w OpenSolaris)
Cele Fibre Channel (karty Fibre nie są tanie)
NFS (VMWare + NFS może być wybredny, ograniczony do 32 montowań)
Jeśli nie możesz wydać 500 USD na ocenę, przetestuj z wyłączonym ZIL i bez niego, aby sprawdzić, czy ZIL jest wąskim gardłem. (Prawdopodobnie jest). Nie rób tego podczas produkcji . Nie zadzieraj jeszcze z deduplikacją ZFS, chyba że masz również dużo pamięci RAM i SSD dla L2ARC. Jest to zdecydowanie miłe po skonfigurowaniu, ale na pewno próbujesz wykonać tuning NFS przed rozpoczęciem gry z deduplikacją. Po nasyceniu linków 1-2 Gb istnieją możliwości rozwoju w 8 Gb FC, 10 GIGE i Infiniband, ale każdy wymaga znacznej inwestycji nawet do oceny.
Nie zrobiłbym tego dokładnie. Z mojego doświadczenia wynika, że Linux (szczególnie CentOS 3/4/5) jest ogólnie kiepskim wyborem dla serwera NFS. Miałem ich kilka i odkryłem, że pod obciążeniem, opóźnienia i przepustowość zwykle spadają z powodów, dla których nigdy nie udało nam się całkowicie opanować.
W naszych przypadkach porównaliśmy wydajność Linux-a z powrotem do Solaris (na Ultra-SPARC) i NetApp; oba zwróciły wyniki w kategoriach wydajności jabłek i w mglistych słowach „inżynierowie nie narzekają prawie tak samo na opóźnienia, gdy serwer jest obciążony”. Było wiele prób dostrojenia serwera Linux NFS; Zarówno systemy NetApps, jak i Solaris działały bez zmian. A ponieważ oba systemy Solaris i NetApp były starsze, można było argumentować, że serwery Linux miały wszystkie zalety i nadal nie były przekonujące.
Jeśli masz czas, warto byłoby eksperymentować z ustawieniem tego samego sprzętu w OpenSolaris (teraz, gdy Solaris jest zbyt drogi w użyciu), Linuksie i być może wariancie BSD lub dwóch i ściganie się z nimi. Jeśli możesz wymyślić kilka wskaźników wydajności (na przykład liczba operacji we / wy dysku w maszynie wirtualnej hostowanej poza sklepem), może to być ciekawy artykuł lub artykuł w Internecie. (Jeśli masz czas.)
Jeśli chodzi o ogólnie NFS, ludzie NetApp powiedzieli mi kilka razy, że ich testy porównawcze wykazały, że NFS kosztował tylko 5 do 10% wydajności dla maszyn wirtualnych - a jeśli twoja aplikacja była wystarczająco wrażliwa, że to był problem, nie powinieneś wirtualizować w pierwszej kolejności.
Ale muszę wyznać, że po tylu latach i łzach nasze nielokalne produkcyjne sklepy VM są zasilane przez iSCSI, głównie z NetApp.
Myślę, że to NetApp zaczął od NFS, a potem włączył obsługę iSCSI później, dlatego ich produkty zawsze widzą „najlepszy przypadek” wydajności NFS w porównaniu z „najgorszym przypadkiem” iSCSI ... Jednak po drugie, unikając NFS - Możesz używać iSCSI na Linuksie i to lepszy wybór IMO.
Chris Thorpe
2
Używamy OpenSolaris 2009/06 z konfiguracją RAID 10 ZFS, aby zapewnić NFS naszemu serwerowi VMWare ESXi. Jak dotąd działa całkiem dobrze dla naszych potrzeb. Używamy dysków typu SATA Raid (dyski Seagate ES.2 1TB). Nadal jednak mamy do zrobienia kilka zmian.
Skopiowałeś / wkleiłeś tę samą „odpowiedź” na co najmniej dwa różne pytania związane z Nexenta. Chociaż jest to poważny błąd, można go spotkać tylko w bardzo rzadkich okolicznościach. W związku z tym twoje działania wydają się nieco nadmierne. Korzyści z uruchomienia ZFS znacznie przewyższają bardzo małą szansę, że trafisz na tego błędu.
EEAA
OK, zrób 8 osobnych pytań, na które wkleiłeś tę samą odpowiedź.
EEAA
Są powiązane, ale taka jest twoja opinia. Zgadzam się z korzyściami, ale wpływ tego zaległego / trwającego błędu jest znaczący, ponieważ spowoduje zatrzymanie całego systemu operacyjnego - żadnych korzyści, gdy nie będzie można niezawodnie uzyskać dostępu do przechowywanych danych.
user48838,
Dla osób, które naprawdę chcą to uczciwie ocenić pod kątem ogólnej przydatności tego forum / formatu, przeczytaj najpierw komentarz na następującym
serwerze
ErikA NIE zidentyfikuje swojego zestawu ZFS, więc komentarze tej osoby dotyczące sytuacji zidentyfikowanej w pytaniu, do których się odnosi, występujące w „bardzo rzadkich okolicznościach” nie mogą być poparte przez tę osobę ... Wybór zignorowania wniosków o identyfikację podstawy ich oświadczenia / stanowiska są również na tych komentarzach.
Używamy OpenSolaris 2009/06 z konfiguracją RAID 10 ZFS, aby zapewnić NFS naszemu serwerowi VMWare ESXi. Jak dotąd działa całkiem dobrze dla naszych potrzeb. Używamy dysków typu SATA Raid (dyski Seagate ES.2 1TB). Nadal jednak mamy do zrobienia kilka zmian.
źródło
Jestem wielkim fanem magazynów danych NFS dla VMware, NetApp ma doskonałą implementację.
TR-3808 porównuje skalowanie współdzielonych magazynów danych podłączonych do NetApp FC, iSCSI i NFS, co jest doskonałym odczytem.
źródło
Możesz wziąć pod uwagę ponad 3-letni błąd w ZFS ARC, który nadal występuje, zanim wskoczysz zbyt głęboko w ZFS ...
http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=6522017
(Ten jest paskudny, ponieważ wykracza poza limity VM hiperwizora!)
źródło