GNU/Linux >> Belajar Linux >  >> Linux

Menggunakan nfsstat dan nfsiostat untuk memecahkan masalah kinerja NFS di Linux

Sistem file jaringan (NFS) memungkinkan mesin untuk memasang partisi disk pada mesin jarak jauh seolah-olah itu adalah disk lokal. Ini memungkinkan berbagi file dengan cepat dan mulus di seluruh jaringan. Namun, karena NFS bergantung pada infrastruktur jaringan yang ada, gangguan apa pun pada jaringan dapat memengaruhi kinerja koneksi. Dua alat terpenting yang saya gunakan selama bertahun-tahun untuk menganalisis kinerja NFS dari perspektif server dan klien adalah nfsstat dan nsfiostat . Kedua alat tersebut merupakan bagian dari paket nfs-utils dan perlu diinstal seperti: 

yum install -y nfs-utils

Memahami keluaran alat dapat membantu mengoptimalkan kinerja NFS.

Perintah nfsstat

nfsstat perintah menampilkan informasi statistik tentang antarmuka NFS dan Remote Procedure Call (RPC) ke kernel.

Di server NFS, jalankan perintah berikut:

nfsstat -s

Outputnya harus seperti di bawah ini:

Server rpc stats:
calls      badcalls   badclnt    badauth    xdrcall
107310012   0          0          0          0

Server nfs v4:
null         compound
21        0% 107310004 99%

Server nfs v4 operations:
op0-unused   op1-unused   op2-future   access       close        commit
0         0% 0         0% 0         0% 910848    0% 5671218   2% 153218    0%
create       delegpurge   delegreturn  getattr      getfh        link
4104      0% 0         0% 517       0% 58659066 22% 8700995   3% 0         0%

Bidang yang paling penting untuk diperiksa adalah badcalls , yang mewakili jumlah total panggilan yang ditolak oleh lapisan RPC. Saat badcalls lebih besar dari 0, daripada jaringan yang mendasarinya perlu diperiksa, karena mungkin ada latensi. Selain itu, sangat penting untuk menempatkan server NFS di subnet yang sama dengan klien NFS saat mendesain jaringan.

Pada klien NFS, Anda menjalankan yang berikut:

nfsstat -c

Outputnya harus seperti di bawah ini:

Client rpc stats:
calls      retrans    authrefrsh
30557550   27686      11075

Client nfs v4:
null         read         write        commit       open         open_conf
0         0% 1601136   5% 568239    1% 23683     0% 1652804   5% 1466260   4%
open_noat    open_dgrd    close        setattr      fsinfo       renew
0         0% 0         0% 1648000   5% 27154     0% 8         0% 28320     0%

Dari atas, klien baik-baik saja karena memiliki permintaan transmisi ulang yang relatif sedikit. Jika Anda mengalami transmisi ulang yang berlebihan, Anda mungkin ingin menyesuaikan ukuran buffer transfer data, yang ditentukan oleh mount opsi perintah rsize dan wsize .

Anda juga dapat memeriksa paket yang dijatuhkan dengan menjalankan perintah berikut di server dan klien:

nfsstat -o net

Perintah nfsiostat

nfsiostat perintah bekerja mirip dengan iostat perintah, tetapi digunakan untuk titik pemasangan NFS di server. Ini menggunakan file /proc/self/mountstats sebagai input dan memberikan informasi tentang kinerja input/output dari share NFS yang dipasang pada sistem.

nfsiostat perintah digunakan pada klien NFS untuk memeriksa kinerjanya saat berkomunikasi dengan server NFS.

Menjalankan nfsiostat tanpa argumen apa pun harus memiliki output yang mirip dengan berikut:

10.10.1.10:/data/share mounted on /samba/students:
   op/s         rpc bklog
  16.96            0.00
read:             ops/s            kB/s           kB/op         retrans         avg RTT (ms)    avg exe (ms)
                  0.900           5.392           5.990        0 (0.0%)           0.550           0.660
write:            ops/s            kB/s           kB/op         retrans         avg RTT (ms)    avg exe (ms)
                  0.031          21.818         708.149        0 (0.0%)         122.745         35874.872

Statistik terpenting yang harus diperhatikan adalah:

  • retrans - Ini adalah jumlah transmisi ulang.
  • avg RTT (ms) - Ini adalah durasi dari saat kernel klien mengirimkan permintaan RPC hingga saat menerima balasan.
  • avg exe (ms) - Ini adalah durasi dari saat klien NFS membuat permintaan RPC ke kernelnya hingga permintaan RPC selesai. Ini termasuk RTT.

avg RTT(ms) dan retrans menunjukkan ada latensi tinggi pada jaringan. Latensi tinggi juga mempengaruhi kinerja I/O, karena akan ada banyak waktu habis. Klien akan menjadi lamban dan sulit untuk diajak bekerja sama.

Juga sangat penting untuk selalu memiliki jaringan khusus antara server NFS dan klien NFS untuk memastikan throughput yang tinggi.

Penutup

Penggunaan nfsstat dan nfsiostat untuk memecahkan masalah kinerja NFS dapat membuat Anda menjadi administrator sistem yang jauh lebih efisien. Luangkan waktu untuk mempelajari dan menggunakan alat NFS yang hebat ini.

[ Ingin lebih banyak untuk jaringan Anda? Unduh ebook gratis tentang otomatisasi jaringan dengan Ansible. ]


Linux
  1. Perintah Dasar untuk Memecahkan Masalah Kinerja di Linux

  2. Menggunakan kbhit() dan getch() di Linux

  3. Menggunakan rz dan sz di bawah shell linux

  1. Cara Mengatasi Masalah Performa di Linux – Panduan Pemula

  2. Memecahkan masalah umum NFS di Linux

  3. Masalah menggunakan sort dan comm

  1. Memecahkan masalah menggunakan sistem file proc di Linux

  2. Menyiapkan Server NFS Dan Klien Di Scientific Linux 6.3

  3. Apa itu NFS dan bagaimana cara menginstalnya di Linux