Isilon: Comprensión de los identificadores de archivos de Isilon
Summary: Comprender cómo funcionan los manejadores de archivos de OneFS.
Symptoms
Un identificador de archivo es la unidad básica de acceso al sistema de archivos de red (NFS). Son referencias a archivos o directorios independientes del nombre de archivo/directorio. Casi todas las NFS o llamadas a procedimiento remoto (RPC) requieren un identificador o identificador de archivo. Los identificadores de archivos son opacos para el cliente; sin embargo, los identificadores de archivos de OneFS son persistentes en todos los nodos. En OneFS, la información del identificador de archivos se almacena en inodos, y cada archivo que utiliza el mismo inodo también utiliza el mismo identificador de archivo. Esto es para evitar identificadores de archivos obsoletos en las conmutaciones por error. OneFS no recicla los identificadores de archivos, y un identificador de archivo para un archivo puede existir siempre y cuando exista su archivo.
Cause
Resolution
En general, los identificadores de archivo se crean en el servidor NFS y pueden variar según la plataforma. En OneFS, se crea un identificador de archivo cuando se crea un inódico lógico (LIN) en el momento de la creación del archivo. Los identificadores de archivos constan de un ID de sistema de archivos (FSID), un ID de exportación y un LIN del archivo/directorio en cuestión. Los identificadores de archivos de OneFS son de 64 bits, lo que los hace ilimitados en teoría (total posible de identificadores de archivos simultáneos = 18 quintillones * 10^19). Con el uso máximo, teóricamente podría tardar mil millones de años en agotar los inodos lógicos disponibles en un clúster de Isilon.
Dado que OneFS no recicla inodos lógicos, se puede esperar que un LIN se asocie con su identificador de archivo homólogo.
El trabajo lincount se puede utilizar para buscar el conteo actual de LIN del clúster:
# 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
Dado que los LIN forman parte de los identificadores de archivos de OneFS, se puede extraer un LIN de un identificador de archivo. Siga el enlace que aparece a continuación para obtener más información sobre este proceso.
Cómo obtener un LIN a partir de un identificador
de archivoAlgunos sistemas operativos y aplicaciones heredadas no pueden aceptar identificadores de archivos de 64 bits y no pueden interactuar con el clúster Isilon debido a esta limitación.
Para solucionar esta limitación, OneFS puede devolver ID de archivo de 32 bits a los clientes; sin embargo, esta funcionalidad tiene un costo y una advertencia.
Si se superan los 4.000 millones de archivos o si hay suficiente rotación de archivos creados y eliminados, existe la posibilidad de que los LIN se ajusten (módulo de 32 bits). Esto puede dar lugar a varios LIN que apuntan al mismo identificador de archivo. Matemáticamente, esta situación es altamente improbable, pero existe la posibilidad de una pérdida de datos grave si se cumplen las condiciones anteriores. Se debe tener precaución cuando se implementan identificadores de archivo de 32 bits. Al momento de escribir este artículo, no se observó ninguna instancia de este problema en un clúster de Isilon.
Cómo implementar el uso de ID de archivo de 32 bits a través de NFS
Ocasionalmente, es posible que vea problemas con identificadores de archivos obsoletos. Un identificador de archivo obsoleto es un identificador de archivo que ya no corresponde a un FSID activo. Los FSID se basan en un ID de generación (GENID) que es similar a un "número de versión" para el archivo. Las escrituras no se basan en el GENID más reciente, por lo que se puede producir un error de identificador de archivo obsoleto.
Los identificadores de archivos obsoletos pueden deberse a problemas de almacenamiento en caché del cliente o a que el archivo no estaba bloqueado y estaba abierto para que lo editaran dos o más usuarios simultáneos. Se requiere el bloqueo de archivos para corregir los identificadores de archivos obsoletos.