Как я могу контролировать диск io?

Я бы хотел сделать общий общий мониторинг io на сервере debian linux. Каковы инструменты, которые я должен знать об этом мониторе диска io, поэтому я могу проверить, не превышает ли производительность диска или всплески в определенное время в течение дня?

212 голосов | спросил camomileCase 8 42012vEurope/Moscow11bEurope/MoscowThu, 08 Nov 2012 22:42:00 +0400 2012, 22:42:00

9 ответов


182

Для трендов ввода-вывода диска существует несколько вариантов. Мой личный фаворит - это команда sar из sysstat. По умолчанию он выдаёт такой вывод:

09:25:01 AM CPU% user% nice% system% iowait% steal% idle
09:35:01 все 0.11 0.00 0.01 0.00 0.00 99.88
09:45:01 все 0.12 0.00 0.01 0.00 0.00 99.86
09:55:01 все 0.09 0.00 0.01 0.00 0.00 99.90
10:05:01 все 0.10 0.00 0.01 0.02 0.01 99.86
Среднее: все 0,19 0,00 0,02 0,00 0,01 99,78

% iowait - время ожидания ожидания ввода-вывода. Используя пакет Debian, вы должны включить сборщик stat через конфигурационный файл /etc /default /sysstat после установки пакета.

Чтобы увидеть текущее использование, выработанное устройством, вы можете использовать команду iostat, также из пакета sysstat:

$ iostat -x 1
Linux 3.5.2-x86_64-linode26 (linode) 11/08/2012 _x86_64_ (4 процессора)

avg-cpu:% user% nice% system% iowait% steal% idle
           0,84 0,00 0,08 1,22 0,07 97,80

Устройство: rrqm /s wrqm /s r /s w /s rsec /s wsec /s avgrq-sz avgqu-sz wait svctm% util
xvda 0,09 1,02 2,58 0,49 112,79 12,11 40,74 0,15 48,56 3,88 1,19
xvdb 1,39 0,43 4,03 1,82 43,33 18,43 10,56 0,66 112,73 1,93 1,13

Некоторые другие параметры, которые могут показывать использование диска в трендовых графах, munin и кактусы .

ответил jordanm 8 42012vEurope/Moscow11bEurope/MoscowThu, 08 Nov 2012 23:28:24 +0400 2012, 23:28:24
87

Посмотрите на iotop.

Или iodump, если это более похоже на ваш образ мыслей.

Примечание. Для работы требуется не менее ядро ​​2.6.20 .

ответил tink 8 42012vEurope/Moscow11bEurope/MoscowThu, 08 Nov 2012 22:44:31 +0400 2012, 22:44:31
71

Мне нравится dstat. Он может отображать итоговые значения и статистику на диск и даже md-устройства (RAID), а также использовать цвета для лучшего обзора:

$ dstat -tdD total, sda, sdb, sdc, md1 60
---- система ---- -dsk /total ---- dsk /sda ----- dsk /sdb ----- dsk /sdc ----- dsk /md1--
     время | read writ: read writ: read writ: read writ: read writ
08-11 22: 08: 17 | 3549k 277k: 144k 28k: 851k 62k: 852k 60k: 25k 82k
08-11 22: 09: 17 | 60k 258k: 1775B 15k: 13k 63k: 15k 60k: 68B 74k
08-11 22: 10: 17 | 176k 499k: 0 14k: 41k 122k: 41k 125k: 273B 157k
08-11 22: 11: 17 | 42k 230k: 0 14k: 9830B 54k: 14k 51k: 0 70k
08-11 22: 11: 52 | 28k 132k: 0 5032B: 5266B 33k: 9479B 28k: 0 37k
  • -t для временных меток
  • -d для статистики диска
  • -D, чтобы указать точные устройства для отчета
  • 60 в среднем более 60 секунд. Дисплей обновляется каждую секунду, но только один раз за 60 секунд запускается новая строка.

  • не используется в этом примере, но -c может сообщать о ожидаемом проценте IO, который в большинстве случаев связан с ЦП, ожидающим данные с дисков.

Он доступен для большинства дистрибутивов Linux, но иногда их нужно устанавливать из репозиториев.

ответил jippie 9 52012vEurope/Moscow11bEurope/MoscowFri, 09 Nov 2012 00:54:38 +0400 2012, 00:54:38
36

Как раз из файлов на вашем компьютере (при условии, что ядро ​​последних) вы можете запросить /sys /block /sda /stat или /proc /diskstats. Однако для этого потребуется некоторый перевод. Но это хорошо для быстрой и грязной проверки.

ответил charlesbridge 9 52012vEurope/Moscow11bEurope/MoscowFri, 09 Nov 2012 01:20:40 +0400 2012, 01:20:40
28

Другим вариантом является использование: sudo iotop -aoP

-a Покажет накопленный результат
-o Будет выводиться только
-P Покажет только процессы, а не потоки

Эта программа расскажет вам, сколько процесс записал на диск и читал с диска с момента запуска iotop.

ответил lanoxx 2 PMpWed, 02 Apr 2014 22:09:48 +040009Wednesday 2014, 22:09:48
7

Мониторинг диска Io может выполняться с помощью нескольких инструментов, таких как:

  1. IOSTAT
  2. IOzone
  3. SAR
  4. vmstat

Также некоторые важные понятия операционной системы очень необходимы для их понимания. Прочтите Linux IO полный учебник

ответил sarath 1 FebruaryEurope/MoscowbFri, 01 Feb 2013 15:34:41 +0400000000pmFri, 01 Feb 2013 15:34:41 +040013 2013, 15:34:41
7

Еще один отличный инструмент для быстрого обзора, в котором происходит загрузка, - atop

Он может показать вам обзор всех ресурсов (CPU, memory /swap, network и disk I /O), или вы можете перейти к одному ресурсу и отсортировать процессы по тому, сколько они потребляют.

ответил Aaron Digulla 17 PMpFri, 17 Apr 2015 14:19:27 +030019Friday 2015, 14:19:27
1

Лучшее, что нужно сделать, если вы хотите увидеть производительность в течение длительного периода времени, - это использовать Centreon который является мощным инструментом, основанным на Nagios . Centreon позволяет отслеживать графики графиков работы ресурса и многое другое.

ответил omar 9 52012vEurope/Moscow11bEurope/MoscowFri, 09 Nov 2012 14:51:49 +0400 2012, 14:51:49
1

Почему бы не попробовать nmon . Это диски и сети с процессами. Первоначально для AIX, но он был перенесен на Linux уже несколько лет.

ответил Steve Rowe 27 J0000006Europe/Moscow 2018, 20:13:56

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132