Назад | Перейти на главную страницу

Процесс CentOS 7 kswapd0 с использованием ЦП на 99%

Когда я бегу top на centos 7 я нашел kswapd0 занимает 99% ЦП, как показано на скриншоте выше.

Ниже приведена другая информация

top - 11:38:04 up 32 days, 16:14,  1 user,  load average: 0.06, 0.13, 0.19
Tasks: 142 total,   2 running, 140 sleeping,   0 stopped,   0 zombie
%Cpu(s): 12.0 us,  2.0 sy,  0.0 ni, 79.0 id,  6.7 wa,  0.0 hi,  0.0 si,  0.3 st
KiB Mem :  3618860 total,   199684 free,  1130200 used,  2288976 buff/cache
KiB Swap:        0 total,        0 free,        0 used.  2152124 avail Mem

  PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND
12493 mysql     20   0 1200596 402140   6868 S  5.3 11.1  46:54.22 mysqld
13460 apache    20   0 1089628  43932  22264 S  3.0  1.2   1:16.40 php-fpm
13462 apache    20   0 1088772  42704  21672 S  1.3  1.2   1:14.47 php-fpm
 9391 root      20   0  124508  11588   4852 S  0.7  0.3   8:38.31 AliYunDun
13474 apache    20   0 1073892  40976  19884 S  0.7  1.1   1:15.93 php-fpm
12609 apache    20   0 1088832  44976  24000 S  0.3  1.2   1:15.94 php-fpm
12615 apache    20   0 1077948  42776  21764 S  0.3  1.2   1:16.34 php-fpm
12616 apache    20   0 1077568  43116  22344 S  0.3  1.2   1:14.59 php-fpm
12619 apache    20   0 1085672  44144  22380 S  0.3  1.2   1:14.62 php-fpm
12663 nginx     20   0   66928   7604   2276 S  0.3  0.2   4:55.48 nginx
12664 nginx     20   0   68064   9124   2708 S  0.3  0.3   5:17.61 nginx
13451 apache    20   0 1077360  41092  20452 S  0.3  1.1   1:15.16 php-fpm
20987 root      20   0  143572   5788   4492 S  0.3  0.2   0:00.75 sshd
27671 root      20   0  157676   2208   1544 R  0.3  0.1   0:00.12 top
28370 apache    20   0 1071564  34900  15676 S  0.3  1.0   1:01.53 php-fpm
    1 root      20   0  191276   5412   1464 S  0.0  0.1   2:03.59 systemd
    2 root      20   0       0      0      0 S  0.0  0.0   0:00.06 kthreadd
    3 root      20   0       0      0      0 S  0.0  0.0   0:46.51 ksoftirqd/0
    5 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 kworker/0:0H
    7 root      rt   0       0      0      0 S  0.0  0.0   0:00.00 migration/0
    8 root      20   0       0      0      0 S  0.0  0.0   0:00.00 rcu_bh
    9 root      20   0       0      0      0 S  0.0  0.0   0:00.00 rcuob/0
   10 root      20   0       0      0      0 S  0.0  0.0   0:00.00 rcuob/1
   11 root      20   0       0      0      0 S  0.0  0.0   0:00.00 rcuob/2
   12 root      20   0       0      0      0 S  0.0  0.0   0:00.00 rcuob/3
   13 root      20   0       0      0      0 S  0.0  0.0   0:00.00 rcuob/4
   14 root      20   0       0      0      0 S  0.0  0.0   0:00.00 rcuob/5
   15 root      20   0       0      0      0 S  0.0  0.0   0:00.00 rcuob/6
   16 root      20   0       0      0      0 S  0.0  0.0   0:00.00 rcuob/7
   17 root      20   0       0      0      0 S  0.0  0.0   0:00.00 rcuob/8
   18 root      20   0       0      0      0 S  0.0  0.0   0:00.00 rcuob/9
   19 root      20   0       0      0      0 S  0.0  0.0   0:00.00 rcuob/10
   20 root      20   0       0      0      0 S  0.0  0.0   0:00.00 rcuob/11
   21 root      20   0       0      0      0 S  0.0  0.0   0:00.00 rcuob/12
   22 root      20   0       0      0      0 S  0.0  0.0   0:00.00 rcuob/13
   23 root      20   0       0      0      0 S  0.0  0.0   0:00.00 rcuob/14

Я не знаю почему

[root@fl basic]#free -lh
              total        used        free      shared  buff/cache   available
Mem:           3.5G        1.1G        197M         87M        2.2G        2.1G
Low:           3.5G        3.3G        197M
High:            0B          0B          0B
Swap:            0B          0B          0B

Ну, root не ест ваш процессор, он ест kswapd. Там есть известная ошибка в ядре linux. У нас есть те же проблемы в CentOS 7.1 после обновления до 7.2. Возможно, вам поможет обновление ядра.

Как заявил AlexanderT, это может быть ошибка ядра, поэтому вам следует обновить ядро.

Если вы не можете этого сделать, возможный обходной путь - периодически отбрасывать буфер / кэш страницы, вводя следующую команду: echo 3 > /proc/sys/vm/drop_caches

Хотя в этом случае это похоже на ошибку ядра, упомянутую выше, в других случаях это может быть что-то еще.

Это могло быть вредоносное ПО. Имя процесса изменено на kswapd0. Это обычная уловка вредоносных программ, и я специально видел kswapd0.

Некоторые другие подсказки, что это не просто безобидный процесс ядра:

  • Процессы ядра не имеют окружающих [скобок] вокруг имени
  • процессы ядра обычно имеют более низкие PID; kswapd - около 500 на сервере с 64 ядрами (чем больше ядер, тем больше kprocs, таких как миграция, сторожевой таймер, ksoftirqd, которые выполняются до kswapd)
  • файлы в / proc / $ PID / fd - настоящий kproc не будет иметь никаких файловых дескрипторов.
  • VIRT / RES / SHR будет 0 для процесса ядра, но поддельный здесь будет иметь ненулевые значения.
  • ищите другие подозрительные процессы. Вы видите такие вещи, как время безотказной работы, ls -la, id, whoami и т. Д., Которые обычно возвращаются за долю секунды? Как они все работают, когда вы запускали ps? У вас может быть вредоносное ПО.

У вас все еще может быть настоящая загрузка подкачки. Если в вашей системе мало свободной памяти или ваш своп активен (если он у вас есть), то это может быть связано с нормальной работой подсистемы виртуальной машины.