Isilon: Opis uchwytów plików Isilon
Summary: Zrozumienie, jak działają uchwyty plików OneFS.
Symptoms
Dojście do pliku jest podstawową jednostką dostępu do sieciowego systemu plików (NFS). Są to odwołania do plików lub katalogów niezależnych od nazwy pliku/katalogu. Prawie wszystkie NFS lub zdalne wywołania procedur (RPC) wymagają dojścia do pliku lub identyfikatora pliku. Dojścia do plików są nieprzezroczyste dla klienta, jednak uchwyty plików OneFS są trwałe w każdym węźle. W OneFS informacje o dojściu do pliku są przechowywane w i-węzłach, a każdy plik korzystający z tego samego i-węzła używa również tego samego dojścia do pliku. Ma to na celu zapobieganie przestarzałym dojściom plików w trybie failover. OneFS nie odtwarza uchwytów plików, a uchwyt pliku dla pliku może istnieć tak długo, jak długo istnieje jego plik.
Cause
Resolution
Ogólnie rzecz biorąc, uchwyty plików są tworzone na serwerze NFS i mogą się różnić w zależności od platformy. W OneFS uchwyt pliku jest tworzony, gdy w momencie tworzenia pliku tworzony jest Logical INode (LIN). Dojścia plików składają się z identyfikatora systemu plików (FSID), identyfikatora eksportu i numeru LIN danego pliku/katalogu. Dojścia plików OneFS są 64-bitowe, co czyni je teoretycznie nieograniczonymi (całkowita liczba możliwych jednoczesnych uchwytów plików = 18 kwintylionów * 10^19). Przy maksymalnym wykorzystaniu teoretycznie może upłynąć miliard lat, aby wyczerpać dostępne i-węzły logiczne w gromadzie Isilon.
Ponieważ OneFS nie odtwarza i-węzłów logicznych, można oczekiwać, że LIN skojarzy się z dojściem pliku swojego odpowiednika.
Zadania lincount można użyć do znalezienia bieżącej liczby numerów LIN klastra:
# isi job start lincount # isi job reports view <JobID> Example: ------------ ps9500x3-2# isi job start lincount Started job [5983] ps9500x3-2# isi job reports view 5983 LinCount[5983] phase 1 (2025-11-25T20:40:04) -------------------------------------------- LINs traversed 28865 SINs traversed 0 JE/Error Count 0 JE/Time elapsed 7 seconds JE/Time working 9 seconds LinCount[5983] Job Summary -------------------------- Final Job State Succeeded Phase Executed 1
Ponieważ linie LIN są częścią uchwytów plików OneFS, numer LIN można wyodrębnić z dojścia do pliku. Kliknij poniższy link, aby dowiedzieć się więcej o tym procesie.
Jak uzyskać numer LIN z uchwytu
plikuNiektóre systemy operacyjne i starsze aplikacje nie akceptują 64-bitowych uchwytów plików i nie mogą wchodzić w interakcje z klastrem Isilon z powodu tego ograniczenia.
Aby obejść to ograniczenie, OneFS może zwrócić klientom 32-bitowe identyfikatory plików, jednak ta możliwość wiąże się z kosztami i zastrzeżeniem.
Jeśli przekroczona zostanie liczba czterech miliardów plików lub jeśli nastąpi wystarczająca rotacja tworzonych i usuwanych plików, istnieje możliwość, że linie LIN zawijają się (modulo 32-bity). Może to spowodować, że wiele linii LIN będzie wskazywać na ten sam uchwyt pliku. Z matematycznego punktu widzenia taka sytuacja jest wysoce nieprawdopodobna, ale istnieje możliwość poważnej utraty danych, jeśli powyższe warunki zostaną spełnione. Należy zachować ostrożność podczas implementowania 32-bitowych identyfikatorów plików. W chwili pisania tego tekstu nigdy nie zaobserwowano wystąpienia tego problemu w gromadzie Isilon.
Jak zaimplementować użycie 32-bitowych identyfikatorów plików w NFS
Czasami mogą wystąpić problemy z przestarzałymi uchwytami plików. Nieaktualne dojście do pliku to dojście do pliku, które nie odpowiada już aktywnemu identyfikatorowi FSID. Identyfikatory FSID są oparte na identyfikatorze generacji (GENID), który jest podobny do "numeru wersji" pliku. Zapisy nie są oparte na najnowszym identyfikatorze GENID, więc może zostać zgłoszony błąd nieaktualnego dojścia do pliku.
Przestarzałe uchwyty plików mogą wynikać z problemów z buforowaniem klienta lub plik nie został zablokowany i był otwarty do edycji przez dwóch lub więcej równoczesnych użytkowników. Blokada plików jest wymagana, aby rozwiązać problem z przestarzałymi dojściami do plików.