Завантажте середню дивність у Linux Ubuntu


9

Протягом останніх кількох днів я намагався зрозуміти дивацтво, яке відбувається в нашій інфраструктурі, але я не зміг зрозуміти це наше, тому я звертаюся до вас, хлопці, щоб дати мені підказки.

Я помічав у графіті, шипи в load_avg, які відбуваються зі смертельною регулярністю приблизно кожні 2 години - це не рівно 2 години, але це дуже регулярно. Я прикріплюю скріншот цього фільму, який я взяв із Graphite

Завантажити Averag - клацніть для збільшення

Я застряг у дослідженні цього - регулярність цього наштовхнула мене на думку, що це якась робота із крон або щось подібне, але на цих серверах НЕ працює жодна робота, - це фактично віртуальні машини, що працюють у хмарі Rackspace. Що я шукаю, це якесь вказівка ​​на те, що може викликати ці проблеми, і як далі це досліджувати.

Сервери досить непрацюючі - це таємне середовище, тому трафік майже не надходить / на них не повинно бути навантаження. Це всі 4 віртуальні ядра VM. Що я точно знаю, це те, що ми беремо купу зразків графіту приблизно кожні 10 секунд, але якщо це є причиною навантаження, то я б очікував, що він буде постійно високим, а не відбувається кожні 2 години хвилями на різних серверах.

Будь-яка допомога, як це дослідити, буде дуже вдячна!


Ось деякі дані sar для app01 - це перший синій шип на малюнку вище - я не зміг зробити жодних висновків із цих даних. Крім того, не те, що у байтах пишеться колосок, який ви бачите, що відбувається кожні півгодини (НЕ ВСЕ 2 ГОДИНИ) відбувається завдяки шеф-кухару-клієнту, який працює кожні 30 хвилин. Я спробую зібрати більше даних, хоча я вже зробив це, але насправді не міг зробити з них жодних висновків.

ЗАВАНТАЖЕННЯ

09:55:01 PM   runq-sz  plist-sz   ldavg-1   ldavg-5  ldavg-15   blocked
10:05:01 PM         0       125      1.28      1.26      0.86         0
10:15:01 PM         0       125      0.71      1.08      0.98         0
10:25:01 PM         0       125      4.10      3.59      2.23         0
10:35:01 PM         0       125      0.43      0.94      1.46         3
10:45:01 PM         0       125      0.25      0.45      0.96         0
10:55:01 PM         0       125      0.15      0.27      0.63         0
11:05:01 PM         0       125      0.48      0.33      0.47         0
11:15:01 PM         0       125      0.07      0.28      0.40         0
11:25:01 PM         0       125      0.46      0.32      0.34         0
11:35:01 PM         2       130      0.38      0.47      0.42         0
11:45:01 PM         2       131      0.29      0.40      0.38         0
11:55:01 PM         2       131      0.47      0.53      0.46         0
11:59:01 PM         2       131      0.66      0.70      0.55         0
12:00:01 AM         2       131      0.81      0.74      0.57         0

ЦП

09:55:01 PM     CPU     %user     %nice   %system   %iowait    %steal     %idle
10:05:01 PM     all      5.68      0.00      3.07      0.04      0.11     91.10
10:15:01 PM     all      5.01      0.00      1.70      0.01      0.07     93.21
10:25:01 PM     all      5.06      0.00      1.74      0.02      0.08     93.11
10:35:01 PM     all      5.74      0.00      2.95      0.06      0.13     91.12
10:45:01 PM     all      5.05      0.00      1.76      0.02      0.06     93.10
10:55:01 PM     all      5.02      0.00      1.73      0.02      0.09     93.13
11:05:01 PM     all      5.52      0.00      2.74      0.05      0.08     91.61
11:15:01 PM     all      4.98      0.00      1.76      0.01      0.08     93.17
11:25:01 PM     all      4.99      0.00      1.75      0.01      0.06     93.19
11:35:01 PM     all      5.45      0.00      2.70      0.04      0.05     91.76
11:45:01 PM     all      5.00      0.00      1.71      0.01      0.05     93.23
11:55:01 PM     all      5.02      0.00      1.72      0.01      0.06     93.19
11:59:01 PM     all      5.03      0.00      1.74      0.01      0.06     93.16
12:00:01 AM     all      4.91      0.00      1.68      0.01      0.08     93.33

IO

09:55:01 PM       tps      rtps      wtps   bread/s   bwrtn/s
10:05:01 PM      8.88      0.15      8.72      1.21    422.38
10:15:01 PM      1.49      0.00      1.49      0.00     28.48
10:25:01 PM      1.54      0.00      1.54      0.03     29.61
10:35:01 PM      8.35      0.04      8.31      0.32    411.71
10:45:01 PM      1.58      0.00      1.58      0.00     30.04
10:55:01 PM      1.52      0.00      1.52      0.00     28.36
11:05:01 PM      8.32      0.01      8.31      0.08    410.30
11:15:01 PM      1.54      0.01      1.52      0.43     29.07
11:25:01 PM      1.47      0.00      1.47      0.00     28.39
11:35:01 PM      8.28      0.00      8.28      0.00    410.97
11:45:01 PM      1.49      0.00      1.49      0.00     28.35
11:55:01 PM      1.46      0.00      1.46      0.00     27.93
11:59:01 PM      1.35      0.00      1.35      0.00     26.83
12:00:01 AM      1.60      0.00      1.60      0.00     29.87

МЕРЕЖА:

10:25:01 PM     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s
10:35:01 PM        lo      8.36      8.36      2.18      2.18      0.00      0.00      0.00
10:35:01 PM      eth1      7.07      4.77      5.24      2.42      0.00      0.00      0.00
10:35:01 PM      eth0      2.30      1.99      0.24      0.51      0.00      0.00      0.00
10:45:01 PM        lo      8.35      8.35      2.18      2.18      0.00      0.00      0.00
10:45:01 PM      eth1      3.69      3.45      0.65      2.22      0.00      0.00      0.00
10:45:01 PM      eth0      1.50      1.33      0.15      0.36      0.00      0.00      0.00
10:55:01 PM        lo      8.36      8.36      2.18      2.18      0.00      0.00      0.00
10:55:01 PM      eth1      3.66      3.40      0.64      2.19      0.00      0.00      0.00
10:55:01 PM      eth0      0.79      0.87      0.08      0.29      0.00      0.00      0.00
11:05:01 PM        lo      8.36      8.36      2.18      2.18      0.00      0.00      0.00
11:05:01 PM      eth1      7.29      4.73      5.25      2.41      0.00      0.00      0.00
11:05:01 PM      eth0      0.82      0.89      0.09      0.29      0.00      0.00      0.00
11:15:01 PM        lo      8.34      8.34      2.18      2.18      0.00      0.00      0.00
11:15:01 PM      eth1      3.67      3.30      0.64      2.19      0.00      0.00      0.00
11:15:01 PM      eth0      1.27      1.21      0.11      0.34      0.00      0.00      0.00
11:25:01 PM        lo      8.32      8.32      2.18      2.18      0.00      0.00      0.00
11:25:01 PM      eth1      3.43      3.35      0.63      2.20      0.00      0.00      0.00
11:25:01 PM      eth0      1.13      1.09      0.10      0.32      0.00      0.00      0.00
11:35:01 PM        lo      8.36      8.36      2.18      2.18      0.00      0.00      0.00
11:35:01 PM      eth1      7.16      4.68      5.25      2.40      0.00      0.00      0.00
11:35:01 PM      eth0      1.15      1.12      0.11      0.32      0.00      0.00      0.00
11:45:01 PM        lo      8.37      8.37      2.18      2.18      0.00      0.00      0.00
11:45:01 PM      eth1      3.71      3.51      0.65      2.20      0.00      0.00      0.00
11:45:01 PM      eth0      0.75      0.86      0.08      0.29      0.00      0.00      0.00
11:55:01 PM        lo      8.30      8.30      2.18      2.18      0.00      0.00      0.00
11:55:01 PM      eth1      3.65      3.37      0.64      2.20      0.00      0.00      0.00
11:55:01 PM      eth0      0.74      0.84      0.08      0.28      0.00      0.00      0.00

Для людей, які цікавляться кронштейном. Ось підсумок всіх налаштувань на сервері (я вибрав app01, але це відбувається і на кількох інших серверах із тими ж налаштованими кронштейнами)

$ ls -ltr /etc/cron*
-rw-r--r-- 1 root root  722 Apr  2  2012 /etc/crontab

/etc/cron.monthly:
total 0

/etc/cron.hourly:
total 0

/etc/cron.weekly:
total 8
-rwxr-xr-x 1 root root 730 Dec 31  2011 apt-xapian-index
-rwxr-xr-x 1 root root 907 Mar 31  2012 man-db

/etc/cron.daily:
total 68
-rwxr-xr-x 1 root root  2417 Jul  1  2011 popularity-contest
-rwxr-xr-x 1 root root   606 Aug 17  2011 mlocate
-rwxr-xr-x 1 root root   372 Oct  4  2011 logrotate
-rwxr-xr-x 1 root root   469 Dec 16  2011 sysstat
-rwxr-xr-x 1 root root   314 Mar 30  2012 aptitude
-rwxr-xr-x 1 root root   502 Mar 31  2012 bsdmainutils
-rwxr-xr-x 1 root root  1365 Mar 31  2012 man-db
-rwxr-xr-x 1 root root  2947 Apr  2  2012 standard
-rwxr-xr-x 1 root root   249 Apr  9  2012 passwd
-rwxr-xr-x 1 root root   219 Apr 10  2012 apport
-rwxr-xr-x 1 root root   256 Apr 12  2012 dpkg
-rwxr-xr-x 1 root root   214 Apr 20  2012 update-notifier-common
-rwxr-xr-x 1 root root 15399 Apr 20  2012 apt
-rwxr-xr-x 1 root root  1154 Jun  5  2012 ntp

/etc/cron.d:
total 4
-rw-r--r-- 1 root root 395 Jan  6 18:27 sysstat
$ sudo ls -ltr /var/spool/cron/crontabs 
total 0
$

Як бачите, немає ЧАСОВОГО кронінгу. Тільки щодня / тиждень тощо

Я зібрав купу статистичних даних (vmstat, mpstat, iostat) - як би важко я намагався, я просто не бачу жодних висновків, які б підказували, що будь-який компонент VM не поводиться ... Я починаю схилятися до потенційних проблем у гіпервізора. Не соромтеся ознайомитись із статистикою . Суть починається з виведення sar -q навколо часу "образи", і тоді ви можете побачити vm, mp та iostats ....

В основному це все ще загальна таємниця для мене ...


Чи є у вас інтерактивні дані, якими ви можете поділитися для подальшого дослідження (тобто, що відображатимуть "top", "htop" та "iotop" під час повторних спайок завантаження)? Крім того, чи перевіряли ваші журнали додатків під час відповідних періодів, щоб побачити, чи не проявляє це дивна поведінка? Крім того, чи є у вас хости зі схожими конфігураціями, які не розміщені на загальнодоступній хмарній інфраструктурі, і якщо так, чи проявляють вони подібну поведінку?
esquireofoz

Щодо журналів додатків - нічого не відбувається. Єдині записи журналу, які він містить, - це перевірки від моніторингу, які відбуваються щохвилини - в основному система моніторингу потрапляє на головний сайт і повідомляє код результату - крім того, що журнали повністю порожні. Крім того, як ви бачите, є різноманітні хости вгорі - це відбувається з усіма ними (redis, сервер додатків, сервер шеф-кухарів тощо)
milosgajdos

Ви намагалися використовувати psacct, щоб звузити його?
HTTP500

ви припускаєте регулярність, але дані, які ви показуєте, не показують жодних сплеску, що регулярно відбувається. запускайте "top -n 1" кожні 1 мільйон або близько того і зберігайте їх у файлі, і це могло б допомогти побачити, які інші процеси конкурують за процесор одночасно, коли виникає шип. Якщо App1 - це Інтернет-додаток, можливо, це просто хтось отримує доступ до нього і змушує його поведінку? додати звичайний "netstat -an" ведення журналу теж (кожні хвилини?)
Олів'є Дулак

Ви бачили доданий скріншот? Якщо це не відображається регулярно, я не знаю, що робить. Зараз я збільшив період відбору проб для sar, тому я беру проби кожні 5 хвилин. Регулярність на малюнку більш ніж очевидна - це відбувається кожні дві години. Це середовище інсценування, яке взагалі не має трафіку - як ви, безумовно, бачите з наведених вище результатів sar для статистики мережі.
milosgajdos

Відповіді:


3

Цікаво.

По-перше, чи можете ви збільшити частоту реєстрації sar. Замість 10 хвилин намагайтеся входити в систему щохвилини. Система cronjob може налаштовуватися.

Далі спробуйте викреслити наступні команди.

ps auxf > /tmp/ps.out
vmstat 1 50 > /tmp/vm.out
mpstat -P ALL 1 50 > /tmp/mp.out
iostat -xdk 1 50 > /tmp/io.out
cat /proc/meminfo > /tmp/meminfo.out

Збирайте цей набір даних або під час кожної ітерації, коли середнє навантаження збільшується вручну, або через крон. Було б добре мати дані хоча б одного повного робочого дня.

Тепер я розумію, що сервери простоюють, але все ж деякі програми повинні працювати. Хто вони?

Можливо, ви можете запустити якийсь інструмент для профілювання, наприклад, perf або oprofile.

Чи змінено якийсь компонент апаратного забезпечення сервера? Навіть щось таке нешкідливе, як оновлення прошивки або оновлення програмного забезпечення.

Гей, одне питання. Який у вас планувальник. Я вважаю, що це cfq, будь-який шанс ви можете змінити його на noop. Введіть elevator=noopпараметр командного рядка ядра та перезавантажте систему та подивіться, чи покращує вона.


Я додав невелику редагування щодо планувальника. будь ласка, подивіться результат.
Сохам Чакраборті

1

Протоколи журналу

Оскільки ця зустріч є дуже регулярною, встановіть роботу Cron для моніторингу провідних процесів у цей період

#app01
20-59 0/2 * * * root /usr/bin/top -b -n 1 | /usr/bin/head -n 15 >> /var/log/top.log

Змінити 20-59на *буде записувати всю годину за кожну парну кількість годин. Завдання Cron буде працювати один раз на хвилину в будь-якому випадку.

Ви можете додати файл top.log до обертання журналу, щоб він не зайняв весь простір, якщо ви забудете його відключити.

Перевірте файл журналу

Пошук записів у журналі журналу при високому періоді завантаження

Взяти за приклад наступне введення навантаження

10:25:01 PM         0       125      4.10      3.59      2.23         0

Зробіть

grep ' 22:2' /var/log/*
grep ' 22:2' /var/log/apache2/*

Це покаже всі записи журналу для 22:2x:xx. Можливо, доведеться включати інші каталоги журналів.

Нд 6 січня 21:00:07 2013: xvda w_await spike

xvda Chart - Шип w_await є на 6 січня 21:00:07 2013 введіть тут опис зображення


0

Я б однозначно перевірив:

  • vSphere графіки для того ж шаблону, можливо, інший VM на тому ж хості їсть процесори (таким чином, навантаження на ваш VM збільшується, оскільки потрібно більше часу для обробки тієї ж кількості даних з постійним потоком через менший час процесора, доступний для ваш ВМ).

Редагувати: Не отримав це вперше :) Ви працюєте в Rackspace, тому немає контролю над гіпервізором, але, можливо, варто поцікавитисясь, чи зможе вони перевірити, чи є ця модель звичайною для інших віртуальних машин того ж хоста .


1
Я теж підозрюю це - це не перший раз, коли б хмара Rackspace викликала якесь божевілля. Я сумніваюся, що вони контролюють будь-який із своїх гіпервізорних серверів - я маю на увазі з точки зору неправильної поведінки віртуальних машин, однак я хотів би виключити будь-які "внутрішні" можливості, перш ніж звернутися до останнього засобу - підтримки Rackspace.
milosgajdos

Чи вплине на продуктивність гіпервізора показник середньої навантаженості? Це змушує задуматися про те, як обчислюється середнє навантаження. Чи може це бути деяким ефектом зеленої / енергозберігаючої функції, яка періодично змінює роботу навколо меншої кількості ядер, невідомих ОС? А як щодо динамічно змінюваної тактової частоти на основі, наприклад, вкладень у навколишнє середовище?
trp

Середня завантаженість обчислюється алгоритмом планування простими словами, якщо у вашій черзі обробки 100 завдань, а гіпервізор на 100% ефективніший при виконанні 10 завдань за 1 секунду, то для виконання 100 завдань вам потрібно 10 секунд, якщо ваш гіпервізор ефективність лише на 50% (можливо, надмірне забезпечення процесора) знадобиться 20 секунд, щоб виконати стільки ж завдань, що призведе до збільшення навантаження. Повне пояснення: blog.scoutapp.com/articles/2009/07/31/…
Martino Dino
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.