La reexportacio de NFS a través d'una VPN no és encaminament de paquets
La màquina intermèdia és client i servidor, no un encaminador. Els identificadors de sistema de fitxers, els handles de fitxer embolcallats i la manca de suport de bloqueig canvien el disseny.
Una màquina Linux s'uneix a una VPN, munta una exportació NFS remota i després serveix aquest muntatge a un altre conjunt de clients. Aquest arranjament sembla encaminament amb passos extra, i aquesta és la primera suposició errònia. La màquina intermèdia és client del servidor superior i servidor dels clients inferiors, i participa en les dues relacions de servei de fitxers. L'encaminament de paquets no té opinió sobre els handles de fitxer, el bloqueig o la identitat del sistema de fitxers; la reexportació sí.
Comenceu preguntant si els clients inferiors podrien arribar al servidor original directament. Si poden, la màquina intermèdia és opcional.
Tres models, tres històries de consistència
El muntatge directe és el més simple: cada client munta el servidor original a través del túnel, i la política d'exportació d'aquest servidor governa l'accés. La reexportació és la màquina intermèdia presentant una frontera de servei diferent, cosa útil quan la xarxa orientada als clients no ha d'arribar directament al servidor. La replicació és un tercer model, i canvia la pregunta de consistència a sincronització i resolució de conflictes.
No descriviu una còpia replicada com si fos una reexportació viva. Els modes de fallada difereixen, i un usuari que espera que cada operació arribi al sistema de fitxers original es durà una sorpresa durant una interrupció de l'enllaç.
La identitat sobreviu a l'ordre de muntatge
Les reexportacions necessiten un identificador de sistema de fitxers explícit, i aquesta identitat ha de sobreviure a reinicis i reconstruccions de configuració. La documentació del nucli és clara sobre el requisit, i també adverteix que crossmnt no elimina la necessitat d'exportar sistemes de fitxers fills amb els seus propis identificadors. Un arbre de directoris que sembla continu per a un usuari pot creuar diverses fronteres de sistema de fitxers. Els nfs-utils actuals poden assignar identificadors automàticament per a configuracions suportades, i quan ho fan, la seva base de dades esdevé part de l'estat de la passarel·la. Tracteu aquests identificadors com a identitat de servei i no com a fitxers d'un sol ús.
Els handles de fitxer són l'altra frontera d'identitat: una reexportació embolcalla l'handle original, cosa que el fa més gran i pot superar el límit d'un client. Un muntatge correcte no demostra que totes les disposicions d'exportació siguin compatibles.
No tota funcionalitat d'NFS sobreviu a la màquina intermèdia
La guia de reexportació del nucli afirma que el servidor que reexporta no admet bloqueig ni peticions de delegació. Les aplicacions que depenen d'aquestes operacions necessiten un camí diferent o un disseny verificat contra elles. Un muntatge correcte i un llistat de directoris funcional no demostren que les operacions reals de l'aplicació funcionin.
La identitat d'usuari i la política d'exportació també importen a cada salt. Un inici de sessió VPN demostra que un participant de la xarxa s'ha autenticat; no autoritza un usuari NFS ni reenvia les credencials d'un client a través de la passarel·la.
La passarel·la té dues dependències aigües amunt
La passarel·la depèn de la VPN per al muntatge superior i del servidor superior per al sistema de fitxers mateix. Un procés d'exportació local que encara s'executa no pot fer saludable un emmagatzematge no disponible. Planifiqueu l'ordre d'inici, el comportament de reconnexió i els reinicis del servidor, incloent-hi què passa amb els handles de fitxer que els clients ja tenen. Un client que ha muntat a través de la passarel·la i ha perdut el seu handle necessita tornar a muntar, i això és un esdeveniment operatiu i no una recuperació transparent.
Si tot el que el requisit necessitava era accessibilitat d'IP privades, encaminar directament al servidor original és l'arquitectura més simple. La reexportació hauria d'existir per una raó que sobrevisqui a ser escrita.
Proveu la càrrega de treball, no el muntatge
Exerciteu la càrrega de fitxers real en un entorn controlat: les operacions que fa l'aplicació, les mides de fitxer que utilitza i la concurrència que espera. Vigileu les mancances de funcionalitat i no només els errors de transport. Després anoteu quin model heu triat i per què, perquè altrament la propera persona assumirà que la passarel·la és un encaminador.
Una reexportació és legítima quan existeix per una raó deliberada, com ara una xarxa de clients aïllada o una frontera de versió controlada. És un mal accident, i la diferència és si algú ho va decidir.