Synology zaprezentowało nowe oprogramowanie DSM (DiskStation Manager) 4.1.  Opis nowych funkcji można znaleźć tutaj. Ale jak zwykle jedna z najlepszych rzeczy jaka została dodana do DSM nie została nagłośniona tak jak inne domowe funkcje multimedialne. Przykład:

  1. Wsparcie dla VMware vSphere 5.0 VAAI:
    • VAAI jest obsługiwany na DS3612xs, RS3412xs, RS3412RPxs, RS3411xs i RS3411RPxs, DS3611xs w celu zoptymalizowania wydajności pamięci masowych Synology w środowisku wirtualizacji.
    • Full Copy jest obsługiwane dzięki czemu pamięć masowa Synology zwiększyła swoją wydajność przy klonowaniu danych. 
    • Block Zero jest obsługiwane, co przyspiesza inicjalizację Synology NAS jako pamięci sieciowej magazynującej wirtualne dyski.

Niektórzy z was pamiętają, że Synology nie obsługiwało VAAI w DSM 4, a tylko ATS (Atomic Test & Set), który eliminował LUN z niektórych typów aktualizacji i ograniczał ilość uruchomionych obrazów maszyn wirtualnych na jednym LUN-ie.

Co to jest VAAI?

Dla tych, którzy jeszcze tego nie wiedzą…VAAI to API dla macierzy do vStorage  wykorzystywane do ich integracji.  To eleganckie określenie oznacza, że API pozwala odciążyć macierz z wielu zadań. Na przykład funkcja VAAI Full Copy pozwala macierzy dyskowej na sklonowanie wirtualnej maszyny (VM) we własnym obrębie bez konieczności przesyłania danych z/do hosta vSphere. Zadaniem hosta vSphere jest tylko poinformowanie macierzy co ma być zrobione i oczekiwanie na informacje jak zadanie zostanie zakończone. Dzięki temu cała operacja jest wykonywana znacznie szybciej i znacznie mniej danych jest przesyłanych podczas wykonywania takiej operacji co ma też przełożenie na niepotrzebne zapychanie dostępnego pasma.

Testowanie obsługi VAAI

Jak tylko zobaczyłem, że taka funkcjonalność została dodana do nowej Bety to natychmiast zainstalowałem ją na Synology DS3611xs.  Wgranie nowego oprogramowania zajęło dosłownie chwilę.

Do celów testowych utworzyłem nowy iSCSI LUN. Decyzję o włączeniu VAAI musi podjąć przy tworzeniu LUN-a. Jeżeli przy tworzeniu LUN nie włączysz VAAI to później nie masz możliwości, aby to zrobić.  Co za tym idzie niestety nie można włączyć tej funkcji dla LUN-ów, jakie były utworzone przed instalacją DSM 4.1 – co jest pewnym nieudogodnieniem.

Po utworzeniu LUN-a podłączasz go z poziomu vCenter/vSphere dokładnie tak samo jak inne iSCSI LUN.  Różnica jest taka, że na liście podłączonych LUN-ów zobaczysz, że obsługiwana jest sprzętowa akceleracja (Hardware Acceleration).

Info z hosta:

~ # esxcli storage core device vaai status get
naa.600140501f7c5fdd0ad1d39f1daf68d5
 VAAI Plugin Name: 
 ATS Status: supported
 Clone Status: supported
 Zero Status: supported
 Delete Status: supported
naa.6001405729ac07addb01d3c73db4bbd1
 VAAI Plugin Name: 
 ATS Status: supported
 Clone Status: unsupported
 Zero Status: supported
 Delete Status: unsupported
naa.60014057e339553d95ffd3825d9205d3
 VAAI Plugin Name: 
 ATS Status: supported
 Clone Status: supported
 Zero Status: supported
 Delete Status: supported
naa.60014052ba18972d25e1d3897d8740da
 VAAI Plugin Name: 
 ATS Status: supported
 Clone Status: unsupported
 Zero Status: supported
 Delete Status: unsupported
~ #

Nawet jeżeli nie włączymy VAAI dla LUN-a to i tak będziemy mieli włączone Zero Status i ATS (Atomic Test and Set).  Dlatego właśnie pokazuje, że Hardware Acceleration jest włączony dla wszystkich LUN-ów. Jak widać dwa LUN-y pokazują pełne wsparcie (VAAI1 & VAAI2 data stores), natomiast pozostałe dwa tylko Zero Status i ATS (NoVAAI1 & NoVAAI2 data stores)

Pierwszy Test – Tworzenie VMDK

Pierwszy test, dotyczył tworzenie Eager Zeroed Thick 100GB VMDK.  Łącze między hostem vSphere, a macierzą to 1Gb Ethernet z włączonym jumbo frame.  Dane będą przechowywane na czterech dyskach skonfigurowanych w RAID0 (VAAI2 & NoVAAI2)

Czas do utworzenia VMDK:

  • VAAI Włączony – 2 minuty i 18 sekund
  • VAAI Wyłączony – 14 minut i 55 sekundy

Porównanie wykorzystania sieci podczas tworzenia VMDK:

Jak widać są ogromne różnice w czasie i w użyciu pasma.  Zasadniczo 100GB zostało przesłane przez kabel ponieważ VAAI było wyłączone.  Szybsze łącze (10Gb) zmniejszy czas przesyłania, ale nie zmniejszy ilości przesłanych danych.  Gdy VAAI jest włączony, przesyłane są tylko dane kontrolne, macierz resztę roboty wykonuje sama .

Drugi Test – VM Clone

Tym razem sklonujemy maszynę wirtualną VM o wielkości 20GB.  Czas do zakończenia:

  • VAAI Włączony – 50 sekund
  • VAAI Wyłączony – 8 minut i 48 sekund
 

Ponownie przy włączonym VAAI czas trwania operacji jest znacznie krótszy oraz ilość przesłanych danych jest praktycznie zerowa w porównaniu z wyłączonym VAAI.

Ostrzeżenie

VAAI został wdrożony od DSM 4.1 i jak wspomniałem wcześnie można włączyć tę opcję tylko przy tworzeniu LUN-a, więc na razie LUN-y stworzone przed wgraniem DSM 4.1 nie obsługują tej opcji. Czekamy na potwierdzenie od Synology czy w finalnej wersji DSM 4.1 ta opcja będzie dostępna także dla już wcześniej utworzonych LUN-ów.

VAAI na chwilę obecną działa tylko na modelach z serii xs.  Osoby wykorzystujące mniejsze jednostki niestety nie mogą na razie wykorzystywać VAAI, co jest trochę denerwujące.  Chciałbym, aby uruchomili taką funkcjonalność minimum na modelach 5  i 8-dyskowych, nawet jeżeli oficjalnie VMware nie da na to certyfikatu.  Synology potwierdziło, że ograniczeniem są wymagania firmy VMware co do wydajności macierzy.  Podczas testów monitorowałem stan użycia procesora na DS3611xs i niestety okazuje się, że mogą mieć rację.

 

Jak widać VAAI podczas pracy wykorzystuje mocno CPU, ale okres obciążenia CPU jest znacznie krótszy niż wykonywanie operacji bez VAAI.  Czasami VAAI podczas wykonywania operacji wykorzystuje około 25% możliwości CPU zainstalowanego w DS3611xs….tj. dual core i3-2100 3.1GHz.  Jeżeli porównasz ten CPU do procesorów Atom montowanych w jednostkach 5 i 8-dyskowych to zdasz sobie sprawę, że jest to problem.  Standardowy benchmark pokazuje, że i3-2100 jest 4, a nawet 6 razy szybszy niż Atom dual-core.  Co za tym idzie serwery NAS wyposażone w procesory Atom podczas wykonywania operacji VAAI nie miały by zasobów CPU na inne czynności, należy mieć na uwadze, że podczas testów nie uruchamiałem innych aplikacji i procesów, wykorzystywałem tylko iSCSI.

Nie można podważać liczb, które wyraźnie pokazują dlaczego niższe modele nie obsługują VAAI.  Ale należy pamiętać, że wielu z nas wykorzystuje w naszych labach serwer NAS tylko pod kontem iSCSI do testowania, nie jest to środowisko produkcyjne więc tego typu obciążenia są moim zdaniem dopuszczalne.

PS. Powyższe screeny pochodzą z nowego Monitora Zasobów, który został zaimplementowany w DSM 4.1 Beta.  Jest on świetny, potrafi pokazać wykorzystanie poszczególny CPU, pokazuje IOPS i wiele innych ciekawych parametrów, które są bardzo przydatne przy analizie wydajności serwera.

Podsumowanie

Jeżeli znałeś już VAAI to większość z powyższych informacji są ci znane, ale celem tego artykułu było pokazanie, że VAAI jest obsługiwany w DSM 4.1 Beta.  Z tego co się orientuję jak do tej pory, żadna inna firma produkująca serwery NAS nie ma tego typu funkcjonalności w ofercie. To jest naprawdę wielka sprawa. Należy pamiętać, że wsparcia dla VAAI nie ma także wielu liczących się producentów macierzy. Na przykład VNXe od EMC obsługuje VAAI, ale tylko przez NFS (Synology dla NFS tego nie robi), ale nie obsługuje dla iSCSI.  Dobra robota Synology!  Super, że ciągle rozwijają możliwości swoich produktów nie tylko pod kontem użytkownika domowego.