Сазнајте колико појединачни процес или системски троше ЦПУ или меморију.
Као системски администратор, често морате да се носите са инцидентима у којима је апликација спора или не реагује због високог искоришћења ЦПУ/меморије/мреже. Ако сервер хостује само један процес, онда је лако сазнати када процес троши све ресурсе. Међутим, замислите дељени сервер на коме ради више услуга, а ви морате да пронађете који од њих троши све ресурсе.
Постоји много софтвера за надгледање који то ради из кутије. Али ако га немате или тражите решење засновано на команди, изволите. Сви су БЕСПЛАТНИ!
Преглед садржаја
топ
Можда ћете желети да почнете тако што ћете погледати топ или хтоп резултат да бисте видели преглед процеса.
Као што можете видети у наставку, даје одличну идеју о томе шта сви процеси користе. Ако погледате први, МиСКЛ заузима 11,9% ЦПУ-а и 2,5% ЦПУ-а.
top - 11:57:33 up 0 min, 1 user, load average: 3.69, 0.96, 0.32 Tasks: 165 total, 2 running, 113 sleeping, 0 stopped, 0 zombie %Cpu(s): 21.0 us, 5.5 sy, 0.0 ni, 70.5 id, 1.7 wa, 0.0 hi, 1.3 si, 0.0 st KiB Mem : 7637308 total, 5802888 free, 849512 used, 984908 buff/cache KiB Swap: 0 total, 0 free, 0 used. 6495648 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1986 netdata 20 0 1738856 191560 22948 S 11.6 2.5 0:02.30 mysqld 3021 www-data 20 0 255288 78420 55484 S 6.6 1.0 0:01.55 php-fpm 3138 www-data 20 0 253096 79780 59228 S 6.6 1.0 0:00.92 php-fpm 3153 www-data 20 0 255116 79088 56472 S 5.0 1.0 0:00.70 php-fpm 3037 www-data 20 0 257200 81088 56216 S 4.3 1.1 0:01.50 php-fpm 3048 www-data 20 0 257088 78740 55380 S 4.3 1.0 0:01.46 php-fpm 3054 www-data 20 0 254160 72168 52108 S 3.7 0.9 0:01.32 php-fpm 3135 www-data 20 0 255084 75912 54836 S 3.7 1.0 0:00.91 php-fpm 3051 www-data 20 0 254096 73804 51964 S 3.0 1.0 0:01.38 php-fpm 2962 www-data 20 0 45280 7284 3488 R 2.0 0.1 0:00.22 openresty 1062 netdata 20 0 338748 76144 6720 S 1.0 1.0 0:01.31 netdata 1702 netdata 20 0 21852 4232 2352 S 1.0 0.1 0:00.34 apps.plugin 1729 netdata 20 0 18636 3280 2764 S 0.7 0.0 0:00.05 bash 1980 netdata 20 0 62008 12896 5796 S 0.7 0.2 0:00.14 redis-server 11 root 20 0 0 0 0 I 0.3 0.0 0:00.14 rcu_sched 1007 root 20 0 1347424 74524 38872 S 0.3 1.0 0:00.92 dockerd 1857 root 20 0 10600 5564 4276 S 0.3 0.1 0:00.03 containerd-shim 2045 root 20 0 9948 6028 5016 S 0.3 0.1 0:00.14 forego 2934 root 20 0 13616 8760 5928 S 0.3 0.1 0:00.07 docker-gen 2966 systemd+ 20 0 25784 7924 2340 S 0.3 0.1 0:00.06 nginx
Врх је инсталиран на скоро свим Линук дистрибуцијама.
Када идентификујете осумњиченог, можда ћете желети да се фокусирате на тај процес уместо на све као што сте видели горе. И даље можете користити топ команду, али са неким аргументом.
Рецимо да знате ИД процеса (ПИД); можете користити доњу команду.
топ -п $ПИД
Испод примера топ -п 3102
top - 11:59:56 up 3 min, 1 user, load average: 0.72, 0.70, 0.31 Tasks: 1 total, 0 running, 1 sleeping, 0 stopped, 0 zombie %Cpu(s): 7.1 us, 2.9 sy, 0.0 ni, 89.1 id, 0.3 wa, 0.0 hi, 0.7 si, 0.0 st KiB Mem : 7637308 total, 5802024 free, 783672 used, 1051612 buff/cache KiB Swap: 0 total, 0 free, 0 used. 6555636 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 3102 www-data 20 0 329500 82376 60640 S 0.0 1.1 0:03.35 php-fpm
Такође можете користити греп са врхом. У наставку је пример провере коришћења Доцкер-а.
[email protected]:~# top | grep docker 1007 root 20 0 1347424 74524 38872 S 0.3 1.0 0:01.38 dockerd 2934 root 20 0 14676 9652 5928 S 0.3 0.1 0:00.54 docker-gen 1007 root 20 0 1347424 74524 38872 S 0.3 1.0 0:01.39 dockerd 1007 root 20 0 1347424 74524 38872 S 1.0 1.0 0:01.42 dockerd 2934 root 20 0 14740 9652 5928 S 0.3 0.1 0:00.55 docker-gen 2934 root 20 0 14740 9652 5928 S 0.3 0.1 0:00.56 docker-gen
хтоп
Слично као на врху, али са више информација. Као што можете, добио је командну колону, која је згодна за идентификацију путање процеса. И такође је шарено.
хтоп можда није подразумевано инсталиран, али увек можете то да урадите на следећи начин.
Инсталирајте хтоп на Убунту
apt-get install htop
Инсталирајте хтоп на ЦентОС/РХЕЛ 8.к
dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm dnf update dnf install htop
погледи
Као што име каже, добијате приказ коришћења система на једном екрану. Покренути процеси су сортирани према њиховој искоришћености ЦПУ-а.
Можете инсталирати погледе на ЦентОС 8 користећи ДНФ као што је доле.
dnf install glances
за ЦентОС7, можете користити ИУМ
yum install glances
на врху
Слично горе наведеном, али са бриљантном функцијом за снимање излаза у датотеку како бисте их касније могли погледати. Замислите да постоји образац да имате проблем у одређеном временском прозору. Можете заказати да упишете излаз у датотеку преко цронтаб-а или другог, а касније можете да је репродукујете.
Да бисте снимили излаз у датотеку:
atop -w filename
и за репродукцију:
atop -r filename
Подржава више аргумената као што су интервал, узорци, итд. и топло бих препоручио да погледате ман страницу.
Ако сте само заинтересовани за решавање проблема у реалном времену, онда само извршите на врху и требало би да видите као испод.
Можете инсталирати на врху као испод.
dnf install atop
пс
Хајде да сада проверимо пс команду.
Можете користити команду пс са ПИД-ом да одштампате њихову искоришћеност ЦПУ-а и меморије.
ps -p $PID -o %cpu,%mem
Излаз би требао изгледати овако.
[email protected]:~# ps -p 1048 -o %cpu,%mem %CPU %MEM 0.2 3.0 [email protected]:~#
нмон
Интерактивна алатка за праћење командне линије за ЦПУ, меморију, дискове, мрежу, НФС и коришћење виртуелне меморије. Да бисте видели главни процес (по коришћењу), можете извршити нмон и притиснути дугме т.
Можете инсталирати нмон као испод.
dnf install nmon
Монит
Монит је решење отвореног кода засновано на вебу и командној линији за надгледање серверских ресурса, демона, датотека, директоријума, система датотека итд.
Монит је такође добио кул виџет.
Његов лагани софтвер за праћење. Али, овде има још тога за истраживање.
Мониторик
Лагани услужни програм отвореног кода за надгледање Линук сервера. Мониторик има уграђени ХТТП тако да можете да проверите коришћење и друге ствари на вебу. Неки од других извештаја о употреби укључују:
- Кернал/температура
- Систем датотека и И/О
- Мрежни саобраћај
- Апацхе/Маил/ФТП/Нгинк
- МиСКЛ/Варнисх/Мемцацхед
Мониторик такође нуди конфигурацију упозорења тако да можете бити обавештени када ствари нису у реду. Биће то добар избор када управљате серверима заснованим на облаку и тражите проактивно решење за праћење.
Нетдата
Нетдата је праћење перформанси у реалном времену за системске ресурсе, апликације, веб сервере, базе података, ДНС, пошту, хардверске сензоре и још много тога. Он је отвореног кода и почетак је лак. Сви подаци се прикупљају, чувају и емитују да бисте их интерактивно визуелизовали. Подаци се прикупљају сваке секунде, тако да никада ништа не пропустите.
Воле га многи лидери индустрије.
Дакле, оно што чекате, покушајте да преузмете контролу над својим Линук серверима.
бтоп
бтоп је згодан монитор ресурса потпуно интерактиван са прелепим корисничким интерфејсом који вам помаже да управљате Линук серверима.
Можете лако да визуелизујете процесе у приказу стабла, филтрирате са листе процеса и управљате ресурсима. бтоп такође долази са аутоматским скалирањем графикона који приказује коришћење мреже.
Осим тога, такође можете проверити брзину диска и комплетну И/О активност.
Постоји још много тога што можете искусити на Линук-у, ФрееБСД-у и мацОС-у.
Закључак
Надам се да ће вам горњи алати помоћи да визуализујете искоришћеност сервера у реалном времену како бисте могли да предузмете неопходне радње. Ако сте тек почели као систем администратор и желите да добијете практичну обуку, погледајте ово Удеми цоурсе.