В Centos 5.x нет нормальной поддержки iotop, без которого трудно понять, какой процесс больше всего грузит дисковую систему.
Но можно использовать скрипт [[http://sourceware.org/systemtap/examples/io/disktop.stp disktop.stp]], написанный для подсистемы динамической трассировки [[http://sourceware.org/systemtap/ SystemTap]].Чтобы запустить disktop в CentOS нужно:
Установить пакеты
kernel-debuginfo-`uname -r`
kernel-debuginfo-common-`uname -r`
(скачать можно здесь http://debuginfo.centos.org/5/Установить пакет kernel-devel-`uname -r`
Установить systemtap:
yum install systemtapЗапуcтить disktop:
stap disktop.stpПример работы:
# stap disktop.stp
Wed Nov 24 16:16:20 2010 , Average: 351Kb/sec, Read: 1680Kb, Write: 76KbUID PID PPID CMD DEVICE T BYTES
102 16196 29589 nginx sda3 R 539535
48 29429 26950 httpd sda3 R 161992
48 29427 26950 httpd sda3 R 141730
48 20089 26950 httpd sda3 R 100256
102 16196 29589 nginx sda3 W 57253
URL:
Обсуждается: http://www.opennet.me/tips/info/2487.shtml
iotop не годится для тех же целей?
Он не работает в RHEL/CentOS 5.x
Этот iotop в Centos 5.x не работает?
http://download.fedora.redhat.com/pub/epel/testing/5/i386/io...
#yum install --enablerepo=epel-testing iotop#iotop
iotop requires kernel-2.6.18-199.el5 or later, but kernel-2.6.18-194.17.1.el5xen is runningТак что увы.
а вообще жаль что поломали поддержку iotop'а в CentOS'е или Ubuntu 10.x(по крайней мере в дефолтовом ядре)...... Мегаполезная тулза, а до этой статьи я думал, что ещё и незаменимая..
В смысле ? в Ubuntu 10.x прекрасно работает , да и для Cent придется только ядро пересобрать и будет прекрасно работать
> В смысле ? в Ubuntu 10.x прекрасно работает ,виноват, на 10.04 работает, но отображается не всё (дефолтное ядро)!
Total DISK READ: 0.00 B/s | Total DISK WRITE: 0.00 B/s
TID PRIO USER DISK READ DISK WRITE SWAPIN IO> COMMAND
27205 be/4 www-data 0.00 B/s 0.00 B/s ?unavailable? nginx: worker process
512 be/3 root 0.00 B/s 0.00 B/s ?unavailable? udevd --daemon
1 be/4 root 0.00 B/s 0.00 B/s ?unavailable? init
2 be/4 root 0.00 B/s 0.00 B/s ?unavailable? [kthreadd]
3 rt/4 root 0.00 B/s 0.00 B/s ?unavailable? [migration/0]
4 be/4 root 0.00 B/s 0.00 B/s ?unavailable? [ksoftirqd/0]
CONFIG_TASK_DELAY_ACCT not enabled in kernel, cannot determine SWAPIN and IO %> да и для Cent придется только ядро пересобрать и будет прекрасно работать
поддержка самосборного ядра - удовольствие не для многих. обновлять ядро нынче надо часто, а возни много.
> обновлять ядро нынче надо часто, а возни много.$ git clone git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-2.6.32.y.git;
$ cd linux-2.6.32.y;
$ git pull;
$ [ ! -e .config ] && cat /boot/config-`uname -r` > .config;
$ make oldconfig;
$ make -j $((`grep processor /proc/cpuinfo | wc -l` + 1))
$ sudo make modules_install
$ sudo make install;
$ sudo /sbin/init 6
это не всё.
во-первых неплохо было бы оформить всё это в пакеты.
и во-вторых как быть с уведомлениями об обновлениях? так у меня плугин для нагиоса висит, к-ый алертит о доступных секурити апдейтах, а если руками ставить ядро, то подписавшись на рассылку можно забыть о нужном обновлении. иными словами, надо ещё изобретать другой плугин, или вы поделитесь:)?
> это не всё.
> во-первых неплохо было бы оформить всё это в пакеты.
> и во-вторых как быть с уведомлениями об обновлениях? так у меня плугин
> для нагиоса висит, к-ый алертит о доступных секурити апдейтах,Надо сначала определиться, вам Терафлопы или спокойно спать?
Одной из стадий терафлопизации :) - это минимизация всего что только есть.
(в разумных пределах конечно, хотя, зависит от выделенного времени).
Для безопасности это тоже полезно (тем более нафига вам апдейты софта который не используется.)
> а если руками ставить ядро, то подписавшись на рассылку можно забыть
> о нужном обновлении.Ядро дистрибное выкидывается. Чтоб действительно обновления не мешались.
> иными словами, надо ещё изобретать другой плугин, или вы поделитесь:)?
Ну за последние два года (дальше не помню), из-за замены ядра,
проблем с юзерспейсным софтом не было ваабще.Кроме только vmware, и то модули, которая немного не успевает за ядром.
Пару раз глюкал nvidia.И это учитывая, что у меня в основном RC версии, вот щас 2.6.37-rc3-git2
А если поставить 2.6.32.26, так оно есть LTS (длинно временная поддержка).
И будет еще года 3 точно.
> Пару раз глюкал nvidia.
> проблем с юзерспейсным софтом не было ваабще.У Вас на сервере дрова от NVidia и юзерспейсный софт? Оригинально. Это видимо терминальный сервер, или о чем мы говорим? Или мы говорим о том, что красноглазик мегакрут - поставил линукс на домашнюю машину)))
И этот тоже. Это же testing
Перед тем как предлагать попробуйте его запустить
Он пишет: iotop requires kernel-2.6.18-199.el5Еще тут можно про это прочитать: https://bugzilla.redhat.com/show_bug.cgi?id=641496
Можно использовать ядра с http://people.redhat.com/jwilson/el5/ но в production не думаю что стоит
На продакшне мне было бы ссыкотно systemtap пускать ;)
> На продакшне мне было бы ссыкотно systemtap пускать ;)Есть преценденты?
Для Ubuntu 8.04 в репках нету iotop
чем мне можно помочь?
Обдумать возможность обновления до 10.04 LTS. Ну а если это не подходит, тогда пусть другие подскажут, что вам делать. :)
8.04 тоже LTS
обновлять на 10.04 не хочу (хотя она уже стоит на домашнем шлюзике)
никак с UpStart подружится не могу, говорю рестартовать squid (и другие) и можно до посинения ждать, но так и не понять закончилось выполнение моей команды или нет
разве что глянуть на PID процесса и выяснить изменился ли он
atop -d ?
Подтверждаю отличная вещь, только не скажу есть ли сборки для RHEL и клонов.
хотел это же написать. чем atop не подходит? для rh/centos есть.
в описанной тут утилите минус в том, что надо тянуть дополнительные пакеты.
> хотел это же написать. чем atop не подходит? для rh/centos есть.
> в описанной тут утилите минус в том, что надо тянуть дополнительные пакеты.1. В случае systemtap видно какой именно диск нагружает процесс
2. У меня в CentOS 5.5 64бит этот atop показывает сильно завышенные данные
Очень похоже на то что он показывает просто суммарный вывод каждого процесса (не только на диск но и в сети и т..д.)
http://debuginfo.centos.org/5/ - не работает, да и кеш гугла выдаёт что debuginfo для последнего кернела (2.6.18-194.26.1.el5) там всё равно нету.
ftp://ftp.pbone.net/mirror/ftp.redhat.com/pub/redhat/linux/e...Там же и common.
uname -a
Linux centos 2.6.18-194.26.1.el5xenyum install iotop
Installing:
iotop noarch 0.4.1-2.el5 epel-testing 53 k
Installing for dependencies:
python-ctypes i386 1.0.0-2.el5.rf rpmforge 284 k
>[оверквотинг удален]
> Installing:
> iotop
> noarch
> 0.4.1-2.el5 epel-testing
> 53 k
> Installing for dependencies:
> python-ctypes i386
> 1.0.0-2.el5.rf
> rpmforge
> 284 kУстановить несложно
Да только при запуске ругается что ядро не подходит. Ошибку я уже писал.
Используйте dstat:
http://dag.wieers.com/home-made/dstat/#downloaddstat --list
dstat --top-io