Von NFS bereitgestellte Dienste Mounten: Aktivieren Sie den Servoprozess /usr/sbin/rpc.mountd auf dem Server und verwenden Sie den Mount-Befehl auf dem Client. Der gemountete Servoprozess ist ein RPC, der auf die Anfrage des Clients antwortet. Remote-Dateizugriff: Durch Aktivieren von /usr/sbin/nfsd auf dem Server und /usr/sbin/biod auf dem Client werden Clientanforderungen für Dateien verarbeitet. Wenn jedoch ein Benutzer auf dem Client eine Datei auf dem Server lesen oder schreiben möchte, sendet der Biod-Servoprozess diese Anforderung an den Server. Startparameter: Bietet Startparameter für SunOS-Clients ohne Festplatte, indem der Daemon /usr/sbin/rpc.bootparamd auf dem Server aktiviert wird. PC-Authentifizierung: Bietet Benutzerauthentifizierungsdienst für PC-NFS durch Starten von /usr/sbin/rpc.pcnfsd auf der Serverseite Ein NFS-Dienst ist zustandslos, das heißt, die NFS-Übertragung ist atomar und eine einzelne NFS-Übertragung entspricht einem einzelnen vollständigen Dateivorgang. Hintergrund: Linux ist die Serverseite von NFS und AIX ist die Clientseite von NFS (zusätzlich gibt es einen Vergleichstest, bei dem Linux auch als Clientseite verwendet wird). 1. Das NFS entsprechende zugrunde liegende Gerät ist eine Flash-Karte, und die lokale Test-E/A-Schreibleistung kann 2 GB/s erreichen; 2. Der Server ist eine Gigabit-Netzwerkkarte und die FTP-Testübertragung kann 100 MB/s erreichen; 3. AIX mountet NFS erfolgreich und die DD-Test-Schreibgeschwindigkeit beträgt nur 10 MB/s; 4. Linux mountet NFS erfolgreich und die Schreibgeschwindigkeit desselben DD-Tests kann 100 MB/s erreichen; Hinweis: Die oben genannten Geschwindigkeiten spiegeln hauptsächlich den Unterschied in der Größenordnung wider. Bei tatsächlichen Tests kann es zu geringfügigen Abweichungen kommen. Spezifische Umgebung:
Die Montageparameter werden gemäß dem MOS-Dokument konfiguriert:
Verfeinern Sie die zu konfigurierenden Parameter entsprechend den tatsächlichen Anforderungen dieses Mal:
AIX NFS-Mount-Parameter:
Bei der direkten Montage tritt der folgende Fehler auf: # mount -o cio,rw,bg,hard,nointr,rsize=32768,wsize=32768,proto=tcp,noac,vers=3,timeo=600 10.xx.xx.212:/xtts /xtts Montierung: 1831-008 Aufgeben: 10.xx.xx.212:/xtts vmount: Vorgang nicht zulässig. Überprüfen Sie die Informationen, um zu bestätigen, dass AIX zusätzliche Netzwerkparameter festlegen muss: # nfso -p -o nfs_use_reserved_ports=1 Versuchen Sie erneut, die Montage erfolgreich durchzuführen: mount -o cio,rw,bg,hard,nointr,rsize=32768,wsize=32768,proto=tcp,noac,vers=3,timeo=600 10.xx.xx.212:/xtts /xtts Die Geschwindigkeit des DD-Tests ist sehr unbefriedigend, nur 10 MB/s: --Testleistung; AIX NFS # Zeit dd wenn=/dev/zero von=/xtts/test-write bs=8192 Anzahl=102400 102400+0 Datensätze drin. 102400+0 Datensätze ausgegeben. echt 0m43.20s Benutzer 0m0.79s System 0 m5,28 s # Zeit dd wenn=/xtts/test-write von=/dev/null bs=8192 Anzahl=102400 102400+0 Datensätze drin. 102400+0 Datensätze ausgegeben. real 0m30.86s Benutzer 0m0.84s System 0 m5,88 s Alle Parameter werden entsprechend dem tatsächlichen Bedarf und gemäß den MOS-Empfehlungen eingestellt. Haben Sie eine Frage?
Wir haben fast alle möglichen Parameter ausprobiert, aber die Ergebnisse waren nicht optimal. Wir waren sofort bereit, Ressourcen zu koordinieren, um einen Host-Techniker zur Behebung des Problems zu finden. In diesem Moment kam mir plötzlich die Inspiration und mir fiel eine Möglichkeit ein. Ist es möglich, dass NFS unter AIX den E/A-Durchsatz eines einzelnen Prozesses begrenzt? Führen Sie mit dieser Vermutung parallele Tests durch: Öffnen Sie 5 Fenster und starten Sie dd gleichzeitig: Zeit dd wenn=/dev/zero von=/xtts/test-write1 bs=8192 Anzahl=102400 Zeit dd wenn=/dev/zero von=/xtts/test-write2 bs=8192 Anzahl=102400 Zeit dd wenn=/dev/zero von=/xtts/test-write3 bs=8192 Anzahl=102400 Zeit dd wenn=/dev/zero von=/xtts/test-write4 bs=8192 Anzahl=102400 Zeit dd wenn=/dev/zero von=/xtts/test-write5 bs=8192 Anzahl=102400 Ich war angenehm überrascht, dass alle fünf Fenster gleichzeitig in 55 Sekunden abgeschlossen wurden, was 800 M*5 = 4000 M entspricht, alles in 55 Sekunden abgeschlossen, was 72 MB/s pro Sekunde entspricht. Dieser parallele Ansatz hat dem Bedarf an Effizienzverbesserungen entsprochen. Und es scheint, dass wir, solange wir weiterhin versuchen, mehrere Fenster zum Testen zu öffnen, grundsätzlich das Netzwerklimit von 100 MB/s erreichen können (begrenzt durch Gigabit-Netzwerkkarten). P.S. Beim Testen desselben NFS, das auf einem anderen Linux-Server gemountet ist, kann die DD-Schreibgeschwindigkeit ohne Parallelisierung 100 MB/s erreichen. Dies war auch der Faktor, der meine Überlegungen zuvor beeinflusst hat. # mount -o rw,bg,hard,nointr,rsize=32768,wsize=32768,tcp,actimeo=0,vers=3,timeo=600 10.xx.xx.212:/xtts /xtts Linux NFS-Testergebnisse: --Testleistung; Linux NFS # dd wenn=/dev/zero von=/xtts/test-write bs=8192 Anzahl=102400 102400+0 Datensätze in 102400+0 Datensätze aus 838860800 Bytes (839 MB) kopiert, 6,02451 s, 139 MB/s # dd wenn=/xtts/test-write von=/dev/null bs=8192 Anzahl=102400 102400+0 Datensätze in 102400+0 Datensätze aus 838860800 Bytes (839 MB) kopiert, 8,55925 s, 98,0 MB/s Ich bin mit AIX nicht vertraut und habe mich nicht näher mit den zugrunde liegenden Prinzipien befasst. Die größte Verwirrung bei der Lösung des Problems bestand zu Beginn darin, warum der DD-Test bei Verwendung von Linux als Client ohne Parallelisierung eine Geschwindigkeit von 100 MB/s erreichen konnte, was mich in die inhärente Denkweise verfallen ließ. Die Lektion, die ich aus diesem Vorfall gelernt habe, lautet: Manchmal muss man über den Tellerrand hinausblicken, um einen Durchbruch zu erzielen. Abschließend habe ich auch die Ergebnisse des lokalen Tests auf der NFS-Serverseite gepostet, um meine Bewunderung für die E/A-Fähigkeiten der Flash-Speicherkarte auszudrücken: # dd wenn=/dev/zero von=/dev/test-write2 bs=8192 Anzahl=1024000 1024000+0 Datensätze in 1024000+0 Datensätze aus 8388608000 Bytes (8,4 GB) kopiert, 4,19912 s, 2,0 GB/s Zusammenfassen Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Wenn Sie Fragen haben, können Sie eine Nachricht hinterlassen. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Das könnte Sie auch interessieren:
|
<<: Lernen Sie die schwarze Technologie der Union-All-Verwendung in MySQL 5.7 in 5 Minuten
>>: Vermeiden Sie den Missbrauch zum Lesen von Daten in Vue
0. Bereiten Sie relevante Tabellen für die folgen...
1. Clustered-Index Tabellendaten werden in der Re...
Zusammenfassung: MySQL bietet eine Vielzahl von S...
Hintergrund: Ich habe bereits ein Projekt durchge...
Inhaltsverzeichnis 1. Gemeinsame Funktionen höher...
Standardmäßig wird PHP unter CentOS 7 als Apache ...
Mit der Array-Deduplizierung wird man häufig bei ...
Eine Anwendung einer CSS-Animation mit demselben ...
Überprüfen Sie zuerst die Datei /etc/group: [root...
Vorwort Weil dies ein verteiltes Dateisystem ist,...
Vorwort WeChat-Miniprogramme bieten neue offene F...
Inhaltsverzeichnis Prototypen verstehen Prototypo...
Bei der Verwendung von Vue zum Entwickeln von Pro...
Inhaltsverzeichnis 1 Installieren Sie Docker im B...
Inhaltsverzeichnis 1. Verbindung zum Tencent Clou...