Przechowywanie i serwer NAS
Krótkie podsumowanie
Pamięć masowa to połączenie nośników (SSD/NVMe/HDD), sieci (Ethernet/IB/FC), protokołów (NFS/SMB/iSCSI/S3) i oprogramowania (ZFS, Ceph, NetApp, اNAS itp.), które zapewnia wydajność, niezawodność, bezpieczeństwo i ekonomię. Prawidłowy wybór zależy od profilu I/O (losowe/sekwencyjne, blok/plik/obiekt), RPO/RTO i SLO wymagania latencji/przepustowości.
Taksonomia przechowywania
DAS (Direct Attached Storage) - dyski "w pobliżu serwera. - Minimalne opóźnienia, brak wąskich gardeł sieciowych, ale trudniejsze do dzielenia się zasobami.
SAN (Storage Area Network) - blok pamięci przez FC/iSCSI/NVMe-oF. Wysoka wydajność, wspólne jednostki LUN, scentralizowane zarządzanie.
NAS (Network Attached Storage) - piłki plików na NFS/SMB. Wygodne dla wspólnych katalogów, dzienników, artefaktów, treści multimedialnych.
Przechowywanie obiektów - S3-compatible API (Ceph RGW/MinIO/chmury). Dla kopii zapasowych, dzienników, archiwów, mediów, artefaktów modelowych.
Rozwiązania hiperkontrolowane (HCI) - Łączenie obliczeń i pamięci masowej (Ceph, vSAN, StarWind itp.) dla skali poziomej.
Protokoły dostępu
Plik:- NFSv3/v4 - środowisko Unix/Posix, blokady statefull, Kerberos/KRB5i/KRB5p.
- SMB 3. x - domeny Windows/AD, szyfrowanie/podpisy, wielokanałowe, DFS.
- iSCSI - over Ethernet, LUN, wiele ścieżek (MPIO), wygodne dla wirtualizacji/bazy danych.
- FC/NVMe-oF - niskie opóźnienia, wyspecjalizowane fabryki/mapy.
- S3 API - wersje obiektów, cykl życia, tryb WORM/Compliance, multipart upload.
- DB/maszyny wirtualne → blok (iSCSI/NVMe-oF).
- Udostępnione foldery/CI Artefakty → NFS/SMB.
- Dzienniki/kopie zapasowe/media/modele → obiekt S3-compatible.
Dane i kodowanie: RAID, ZFS, Erasure Coding
RAID
RAID1/10 - niskie opóźnienia i wysokie IOPS/losowe odczytu/zapisu.
RAID5/6 - oszczędności pojemności, ale napisać karę.
ZFS - kopiowanie do zapisu (CoW), puli i vdev, pamięć podręczna ARC/L2ARC, ZIL/SLOG do operacji synchronizacji, migawki/repliki i integralności wbudowanej (checksums).
Kodowanie usuwania (WE) w systemach rozproszonych (Ceph/MinIO): kod Reeda-Salomona 'k + m' - oszczędności powyżej 3x replikacji przy dopuszczalnej degradacji wydajności zapisu.
- Gorące losowe obciążenia (metadane, małe pliki) → RAID10/ZFS lustra na NVMe.
- EC zimno/archiwum →, duże płyty HDD, agresywne pamięci podręczne.
- Dla rekordów synchronizacyjnych (eksport NFS) - dedykowany SLOG na niezawodnym niskopatentowanym NVMe (PLP).
Wydajność: IOPS, przepustowość, opóźnienie
IOPS są ważne dla małych operacji losowych (DB/metadane).
Przepustowość - dla dużych plików (filmy, kopie zapasowe).
Latency p95/p99 - kluczowe dla baz danych, kolejek, pamięci podręcznej API.
Kolejki i równoległość: multitreading na kliencie, 'rsize/wsize' dla NFS, 'rw, queue _ depth' dla iSCSI.
Sieć: 25/40/100 GbE (lub IB) + RSS/RPS, jumbo MTU wewnątrz centrum danych.
Buforowanie i tykanie
ARC/L2ARC (ZFS) - pamięć podręczna RAM i NVMe; SLOG - historia synchronizacji rekordów.
Pamięć zwrotna/pamięć podręczna - ostrożna, tylko bateria/superkapacytor (BBU/PLP).
Grubość: NVMe (gorący) → SSD (ciepły) → HDD (zimny) → obiekt (archiwum). Polityka migracyjna i cykl życia.
Migawki, klony, replikacja, DR
Migawki (CoW): punkty błyskawiczne na rollback/backup; przechowywać katalogi „wewnątrz” przechowywania, nie tylko w hypervisor.
Replikacja: synchroniczna (RPO ≤ 0, powyżej opóźnienia), asynchroniczna (RPO = N min).
Klony: ekonomiczne środowiska dev/testowe.
Schematy DR: 3-2-1 (trzy egzemplarze, dwa rodzaje przewoźników, jeden - poza obiektem), regularne ćwiczenia DR; Cele RPO/RTO.
Bezpieczeństwo, zgodność i wielopoziomowość
Uwierzytelnianie/autoryzacja: LDAP/AD, Kerberos/NTLMv2 dla SMB, AUTH_SYS/KRB dla NFSv4.
Izolacja: VLAN/VRF, polityka eksportowa, kontyngenty/kontyngenty najemców.
Szyfrowanie: w stanie spoczynku (LUKS/ZFS native/SED) oraz w locie (szyfrowanie NFS-krb5p/SMB/TLS dla S3).
WORM/Zgodność dla danych istotnych pod względem prawnym (S3 Object Lock, analogi SnapLock).
Audyt: niezmienne dzienniki dostępu, integracja z SIEM.
Monitorowanie i SLO
Metryka:- Według puli/woluminów: użycie, 'p95/p99 latency', IOPS, przepustowość, głębokość kolejki, hit pamięci podręcznej, wzmacnianie zapisu.
- W sieci: krople, retransmitty, PPS, niedopasowanie MTU.
- Według mediów: błędy medialne, poziom zużycia, temperatura, SMART.
- Poprzez replikację/migawki: lag/age, sukces zadania, czas trwania.
- Kula NFS dla CI: p95 opóźnienie ≤ 3 ms, dostępność ≥ 99. 95%.
- Baza danych LUN: p99 zapisz ≤ 1. 5 ms, replika synchroniczna w regionie; RPO 0, RTO ≤ 5 min.
- Obiekt: p95 PUT ≤ 50 ms, p95 GET ≤ 30 ms, 11 × 9 trwałości (poprzez EU/replikację).
- Wypełnienie puli> 80/90/95%, spadek trafienia pamięci podręcznej, wzrost wzmacniacza zapisu, degradacja dysku, pobieranie sieci, dziennik replikacji> próg.
Kopia zapasowa i archiwum
Migawki + zdalna replika + oddzielne kopie zapasowe do obiektu/taśmy.
Zasady zachowania: dzień/tydzień/miesiąc.
Immutability: S3 Object Lock (zarządzanie/zgodność), „air-gap” (feed/disabled accounts).
Testy odzyskiwania - regularnie.
Szablony praktyczne (minimalne)
Eksportowanie NFS (przykład)
/pool/projects 10. 0. 0. 0/16(rw,async,no_root_squash,sec=krb5p)
share SMB (fragment smb. conf)
[media]
path = /pool/media read only = no vfs objects = acl_xattr, recycle ea support = yes kernel oplocks = no smb encrypt = required
ZFS: tworzenie puli i zbioru danych
bash zpool create tank mirror nvme0n1 nvme1n1 zfs set atime=off compression=lz4 tank zfs create tank/projects zfs set recordsize=1M tank/projects # большие файлы zfs set recordsize=16K tank/db # БД/мелкие I/O
iSCSI (pomysły)
Włączanie ALUA/MPIO, korygowanie czasu i głębokość kolejki dla klientów.
Rozprzestrzeniać sieci iSCSI i ruchu klienta, używać Jumbo MTU wewnątrz fabryki stu metrów.
Planowanie wydajności i wydajności
Zestaw roboczy i tempo wzrostu.
Margines dla IOPS i przepustowość 30-50% dla szczytów i równowagi.
Należy rozważyć amplifikację pisania (RAID/EC/CoW) i metadane.
Dla obiektu - koszt żądań i ruchu wychodzącego, klasy pamięci masowej (standard/IA/glacier-like).
Operacje i aktualizacje
Aktualizacje kroczące sterowników/OS/firmware.
Skruby/Windows Resilver i priorytety.
Odbudować balansowanie: ograniczenie I/O na odzyskiwanie tak, aby nie „zabić” prod.
Książki startowe dotyczące degradacji/utraty węzłów/sieci.
Lista kontrolna implementacji
- Wybrany profil dostępu pliku/bloku/obiektu + RPO/RTO/SLO.
- Schemat kodowania obciążenia i cen (RAID/ZFS/EC).
- Sieci: indywidualne VLAN/VRF, wewnątrz tkaniny MTU 9000, MPIO/ALUA.
- Pamięć podręczna/tykanie: ARC/L2ARC/SLOG lub podobne mechanizmy.
- Migawki/repliki/kopie zapasowe: harmonogramy, immutability, ćwiczenia DR.
- Monitorowanie: puli/media/sieć/mierniki replikacji, wpisy.
- Dostęp/bezpieczeństwo: ACL, Kerberos/AD, szyfrowanie, audyt.
- Kwoty/limity dla najemców i katalogów SLA/SLO.
- Dokumentacja i książki startowe, odzyskiwanie badań.
Częste błędy
Przepływ puli> 80% w systemach ZFS/EC → gwałtowny wzrost opóźnień.
Jeden kontroler/jedna sieć bez MPIO/ochrony.
Zestawy do obróbki na gorąco i na zimno miesza się w jednej klasie nośników.
Brak SLOG dla obciążenia synchronizacji NFS → nieprzewidywalne opóźnienie.
Kopie zapasowe tylko „wewnątrz” tej samej tablicy/konta → strata w przypadku wypadku/kompromisu.
Brak regularnego monitorowania szorowania i SMART.
Ignorowanie małych wzorów I/O: duży 'recordsize' dla DB.
iGaming/specyficzne dla fintechu
Transakcyjne bazy danych i portfele: pojedyncze puli NVMe, lustra RAID10/ZFS, synchroniczna replika do strefy B, niezależne zamknięte.
Rejestry/zdarzenia surowe i funkcje przeciwdziałania oszustwom: obiekt + cykl życia + tanie klasy, indeksy/prezentacje - na SSD.
Treści i media (dostawcy): NAS + CDN, agresywna pamięć podręczna, deduplikacja.
Raportowanie i PII: WORM/immutability, szyfrowanie, audyt dostępu, geo-lokalizacja danych.
Wydarzenia szczytowe: bufory rozgrzewające, limity I/O, kontrola opóźnień p99 na basenach.
Razem
Niezawodne przechowywanie to prawidłowa klasa podziału (plik/blok/obiekt), odpowiedni schemat kodowania (RAID/ZFS/EC), szybka sieć, pamięć podręczna/wiązanie, migawki + repliki + kopie zapasowe, hard SLO i zautomatyzowane operacje. Stosując się do tych zasad, otrzymujesz przewidywalne wyniki, wysoką odporność i przejrzystą gospodarkę magazynową - z względami bezpieczeństwa i regulacji.