GNU/Linux >> Belajar Linux >  >> Linux

Pelaporan I/O dari baris perintah Linux

Jika Anda telah mengikuti posting saya di sini di Aktifkan Sysadmin, Anda tahu bahwa saya sebelumnya bekerja sebagai insinyur dukungan penyimpanan. Salah satu dari banyak tugas saya dalam peran itu adalah membantu pelanggan mereplikasi cadangan dari lingkungan produksi mereka ke susunan penyimpanan cadangan khusus. Sering kali, pelanggan menghubungi saya karena khawatir tentang kecepatan transfer data dari produksi ke penyimpanan.

Sekarang, jika Anda pernah bekerja dalam mendukung, Anda tahu bahwa ada banyak penyebab gejala. Namun, throughput suatu sistem dapat memiliki implikasi besar untuk transfer data besar-besaran. Jika semuanya baik-baik saja, kita berbicara berjam-jam, jika tidak... Saya telah melihat satu pekerjaan replikasi membutuhkan waktu berbulan-bulan.

Kita tahu bahwa Linux dimuat penuh dengan alat yang berguna untuk segala macam masalah. Untuk pemantauan input/output, kami menggunakan iostat memerintah. iostat adalah bagian dari sysstat paket dan tidak dimuat di semua distribusi secara default.

Instalasi dan pengoperasian dasar

Saya menggunakan Red Hat Enterprise Linux 8 di sini dan telah menyertakan hasil instalasi di bawah ini.

[ Ingin mencoba Red Hat Enterprise Linux? Unduh sekarang secara gratis. ]

CATATAN :perintah berjalan secara otomatis setelah instalasi.

[root@rhel ~]# iostat
bash: iostat: command not found...
Install package 'sysstat' to provide command 'iostat'? [N/y] y
    
    
 * Waiting in queue... 
The following packages have to be installed:
lm_sensors-libs-3.4.0-21.20180522git70f7e08.el8.x86_64    Lm_sensors core libraries
sysstat-11.7.3-2.el8.x86_64    Collection of performance monitoring tools for Linux
Proceed with changes? [N/y] y
    
    
 * Waiting in queue... 
 * Waiting for authentication... 
 * Waiting in queue... 
 * Downloading packages... 
 * Requesting data... 
 * Testing changes... 
 * Installing packages... 
Linux 4.18.0-193.1.2.el8_2.x86_64 (rhel.test)     06/17/2020     _x86_64_    (4 CPU)
    
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           2.17    0.05    4.09    0.65    0.00   83.03
    
Device             tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
sda             206.70      8014.01      1411.92    1224862     215798
sdc               0.69        20.39         0.00       3116          0
sdb               0.69        20.39         0.00       3116          0
dm-0            215.54      7917.78      1449.15    1210154     221488
dm-1              0.64        14.52         0.00       2220          0

Jika Anda menjalankan perintah dasar tanpa opsi, iostat menampilkan informasi penggunaan CPU. Ini juga menampilkan statistik I/O untuk setiap partisi pada sistem. Outputnya mencakup total, serta nilai per detik untuk operasi baca dan tulis. Perhatikan juga bahwa tps field adalah jumlah total Transfer per detik dikeluarkan untuk perangkat tertentu.

Aplikasi praktisnya adalah ini:jika Anda tahu perangkat keras apa yang digunakan, maka Anda tahu parameter apa yang harus dioperasikan di dalamnya. Setelah Anda menggabungkan pengetahuan ini dengan output iostat , Anda dapat membuat perubahan pada sistem Anda.

Interval berjalan

Ini dapat berguna dalam fase pemecahan masalah atau pengumpulan data untuk menjalankan laporan pada interval tertentu. Untuk melakukannya, jalankan perintah dengan interval (dalam detik) di akhir:

[root@rhel ~]# iostat -m 10
Linux 4.18.0-193.1.2.el8_2.x86_64 (rhel.test)     06/17/2020     _x86_64_    (4 CPU)
    
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.94    0.05    0.35    0.04    0.00   98.62
    
Device             tps    MB_read/s    MB_wrtn/s    MB_read    MB_wrtn
sda              12.18         0.44         0.12       1212        323
sdc               0.04         0.00         0.00          3          0
sdb               0.04         0.00         0.00          3          0
dm-0             12.79         0.43         0.12       1197        329
dm-1              0.04         0.00         0.00          2          0
    
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.24    0.00    0.15    0.00    0.00   99.61
    
Device             tps    MB_read/s    MB_wrtn/s    MB_read    MB_wrtn
sda               0.00         0.00         0.00          0          0
sdc               0.00         0.00         0.00          0          0
sdb               0.00         0.00         0.00          0          0
dm-0              0.00         0.00         0.00          0          0
dm-1              0.00         0.00         0.00          0          0
    
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.20    0.00    0.18    0.00    0.00   99.62
    
Device             tps    MB_read/s    MB_wrtn/s    MB_read    MB_wrtn
sda               0.50         0.00         0.00          0          0
sdc               0.00         0.00         0.00          0          0
sdb               0.00         0.00         0.00          0          0
dm-0              0.50         0.00         0.00          0          0
dm-1              0.00         0.00         0.00          0          0

Output di atas adalah dari lari 30 detik.

Anda harus menggunakan Ctrl + C untuk keluar dari proses.

Bacaan mudah

Untuk membersihkan output dan membuatnya lebih mudah dicerna, gunakan opsi berikut:

-m mengubah keluaran menjadi megabita, yang sedikit lebih mudah dibaca dan biasanya lebih dipahami oleh pelanggan atau pengelola.

[root@rhel ~]# iostat -m
Linux 4.18.0-193.1.2.el8_2.x86_64 (rhel.test)     06/17/2020     _x86_64_    (4 CPU)
    
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           1.51    0.09    0.55    0.07    0.00   97.77
    
Device             tps    MB_read/s    MB_wrtn/s    MB_read    MB_wrtn
sda              22.23         0.81         0.21       1211        322
sdc               0.07         0.00         0.00          3          0
sdb               0.07         0.00         0.00          3          0
dm-0             23.34         0.80         0.22       1197        328
dm-1              0.07         0.00         0.00          2          0

-p memungkinkan Anda untuk menentukan perangkat tertentu untuk fokus. Anda dapat menggabungkan opsi ini dengan -m untuk tampilan yang bagus dan rapi pada perangkat dan partisinya.

[root@rhel ~]# iostat -m -p sda
Linux 4.18.0-193.1.2.el8_2.x86_64 (rhel.test)     06/17/2020     _x86_64_    (4 CPU)
    
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           1.19    0.07    0.45    0.06    0.00   98.24
    
Device             tps    MB_read/s    MB_wrtn/s    MB_read    MB_wrtn
sda              17.27         0.63         0.17       1211        322
sda2             16.83         0.62         0.17       1202        320
sda1              0.10         0.00         0.00          7          2

Statistik tingkat lanjut

Jika nilai default tidak memberikan informasi yang Anda butuhkan, Anda dapat menggunakan -x tandai untuk melihat statistik yang diperluas:

[root@rhel ~]# iostat -m -p sda -x 
Linux 4.18.0-193.1.2.el8_2.x86_64 (rhel.test)     06/17/2020     _x86_64_    (4 CPU)
    
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           1.06    0.06    0.40    0.05    0.00   98.43
    
Device            r/s     w/s     rMB/s     wMB/s   rrqm/s   wrqm/s  %rrqm  %wrqm r_await w_await aqu-sz rareq-sz wareq-sz  svctm  %util
sda             12.20    2.83      0.54      0.14     0.02     0.92   0.16  24.64    0.55    0.50   0.00    45.58    52.37   0.46   0.69
sda2            12.10    2.54      0.54      0.14     0.02     0.92   0.16  26.64    0.55    0.47   0.00    45.60    57.88   0.47   0.68
sda1             0.08    0.01      0.00      0.00     0.00     0.00   0.00  23.53    0.44    1.00   0.00    43.00   161.08   0.57   0.00

Beberapa opsi yang perlu diperhatikan di sini adalah:

  • avgqu-sz - rata-rata panjang antrean permintaan yang dikeluarkan ke perangkat
  • menunggu - waktu rata-rata untuk permintaan I/O yang dikeluarkan ke perangkat untuk dilayani (milidetik)
  • r_await - waktu rata-rata untuk melayani permintaan baca (milidetik)
  • w_await - waktu rata-rata untuk melayani permintaan tulis (milidetik)

Ada nilai-nilai lain yang ada, tetapi inilah yang harus diwaspadai.

Mematikan

Artikel ini mencakup hampir semua yang Anda butuhkan untuk memulai iostat . Jika Anda memiliki pertanyaan lain atau memerlukan penjelasan lebih lanjut tentang opsi, pastikan untuk memeriksa halaman manual atau mesin pencari pilihan Anda. Untuk tips dan trik Linux lainnya, pantau terus Aktifkan Sysadmin!

[ Kursus online gratis:Tinjauan teknis Red Hat Enterprise Linux. ]


Linux
  1. Miliki sapi di baris perintah Linux

  2. Masukkan diri Anda ke dalam baris perintah Linux

  3. Menggunakan Stratis untuk mengelola penyimpanan Linux dari baris perintah

  1. Konfigurasikan ruang kerja Linux dari jarak jauh dari baris perintah

  2. 8 tips untuk baris perintah Linux

  3. Menggunakan Google Drive dari Baris Perintah Linux

  1. Cara menginstal perangkat lunak dari baris perintah Linux

  2. Bagaimana Cara Memanggil Makro Openoffice Dari Baris Perintah Linux?

  3. Migrasi server Linux dari baris perintah