Implementacja fstrim Linux na SSD z oprogramowaniem md-raid

14

Obecnie buduję nowy serwer Ubuntu 13.04 z 2 256 GB dyskami SSD w lustrze RAID, aby uruchomić instancję MariaDB. Zazwyczaj LVM umieszczamy na górze szyfrowania dm-crypt na macierzy md raid 1 , ale wcześniej nie używaliśmy dysków SSD w tej konfiguracji.

Moje pytanie brzmi: ponieważ będziemy używać nowszego jądra (3.8), powinno to umożliwić bezpośrednie stosowanie fstrim do woluminu rajdowego, tak jak go rozumiem. Czy mogę teraz po prostu polegać na tym, aby poprawnie współpracować z fstrim -v /zadaniem cron, tak jak zrobiłbym to, gdyby nalot nie był na miejscu? Czy to prawda nawet z LVM na szczycie woluminu rajdowego? Planujemy używać sprzętowego szyfrowania na dyskach, więc nie będziemy potrzebować tutaj dm-crypt.

UWAGA: Zdaję sobie sprawę, że istnieje kilka podobnych pytań dotyczących backportowania zaktualizowanych wersji jądra i implementacji odrzucania z woluminem md - pytam konkretnie, czy fstrimdziała przeciwko md-raid bez dalszych modyfikacji w nowszych jądrach.

AKTUALIZACJA: Chciałem tylko sprawdzić i opublikować, że to działa dobrze. W cron.daily jest teraz praca, która działa na fstrim /i /bootdziała idealnie. Okazało się również, że szyfrowanie sprzętowe na dyskach SSD (Samsung 840 Pro) wymaga obsługi TPM, której nie mamy, więc skonfigurowaliśmy szyfrowanie programowe, jak pokazano w linku. Dodając discarddo opcji w /etc/crypttab( nie do /etc/fstab) i issue_discards = 1sekcji urządzeń /etc/lvm/lvm.conf, fstrim działa dobrze nawet przez LVM, szyfrowanie i warstwy RAID. Więcej informacji o konfiguracji trymowania / odrzucania na dyskach SSD z LVM i szyfrowaniem można znaleźć tutaj.

nedm
źródło

Odpowiedzi:

11

Poprawki dla mdraid RAID 1 i 10 dla TRIM wzrosły około rok temu.

Możesz przetestować obsługę swojego jądra, montując system plików z discardopcją (która umożliwia automatyczne TRIM). Jeśli jest obsługiwany, zobaczysz komunikat w syslog lub dmesgpodobne:

EXT4-fs (md1): re-mounted. Opts: discard,data=ordered

W przeciwnym razie otrzymasz to:

EXT4-fs warning (device md1): ext4_issue_discard:2619: discard not supported, disabling

Nie musisz ponownie uruchamiać się, aby sprawdzić, czy działa:

mount /dir -o remount
Michael Hampton
źródło
1
Więc jeśli dobrze cię rozumiem, jeśli montaż z odrzucaniem działa, to fstrim również powinien?
nedm
1
Poprawny. Jeśli zostanie w pełni wdrożony do samego końca, będzie działał w obu kierunkach.
Michael Hampton
3
Pamiętaj, aby później zmienić opcje montowania, jeśli nie zamierzasz wykonywać automatycznego TRIM. :)
Michael Hampton
2
Dla przypomnienia , obsługa TRIM dla RAID1 została dodana 11 października 2012 r. Zobacz tutaj lkml.indiana.edu/hypermail/linux/kernel/1203.1/01772.html Więc jądro 3.4 nie obsługuje go, ale 3.8 obsługuje (nie wiem około 3,5 / 3,6 / 3,7)
Joril
3
@MichaelHampton to niestety nieprawda. Na przykład mając jądro 3.2, z ext4 na LVM na MD (miękkim) RAID1, (ponowne) zamontowanie ext4 z odrzuceniem nie zgłosi błędu, ale też nie zadziała (ponieważ jądra MD RAID1 w 3.2.x nie obsługują przekazywanie poleceń TRIM). Jedynym sposobem, aby się upewnić, jest przetestowanie
Matija Nalis,