Agresywny cache ZFS L2ARC z wykorzystaniem NVMe – wydajność

Optymalizacja ZFS nie jest prostym zadaniem, jednak niektóre zmienne mogą w łatwy sposób poprawić wydajność Twojej infrastruktury.

W zależności od topologii sprzętowej, na przykładzie konfigurowanego serwera z dyskiem cache’ującym główny zbiornik (pool), – w naszym wypadku urządzenie L2ARC to wydajny dysk NVMe – możemy zastosować taką zmienną:

vfs.zfs.l2arc_noprefetch=0
options zfs zfs_prefetch_disable=0

domyślnie: l2arc_noprefetch=1 – oznacza wyłączone ładowanie do cache drugiego poziomu danych w streamie odczytu (np. dostęp do dysku) – domyślnie L2ARC wykorzystywany jest gdy dane „wypadają” z ARC.
wartość „0” (zero) włączy zatem prefetching, zwiększając szansę trafienia odczytu w cache L2ARC

Pamiętajmy jednak o prawidłowym doborze ilości pamięci RAM względem dysków i L2ARC – powyższa metoda niejako przełącza L2ARC w tryb „agresywnego” cache’owania. Możemy sobie na to pozwolić jeżeli wolne miejsce na dysku L2ARC pozostaje relatywnie duże względem jego użycia po nagrzaniu (np. przypadek, w którym nie wykorzystujemy więcej niż 20% L2ARC lub wiemy, że dysk L2ARC jest wystarczająco duży).

Zmiana tego parametru wymaga restartu maszyny a zatem rozpoczęcia cyklu „nagrzewania cache”

ZFS performance optimisation with L2ARC NVMe

Musisz się zalogować, aby móc dodać komentarz.