LINUX.ORG.RU
ФорумAdmin

KVM зависает в зомби

 , , ,


0

2

Вводные: CentOS 7.1 с KVM Гостевая машина Ubuntu 14.04.2 На гостевой запускается stress -c 4 -d 4, что нагружает систему. Через некоторое время (часов через 12 или более) начинают появляться за записи в log/messages

Jun 18 07:11:49 srv-test1 kernel: INFO: task qemu-kvm:23633 blocked for more than 120 seconds.
Jun 18 07:11:49 srv-test1 kernel: "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
Jun 18 07:11:49 srv-test1 kernel: qemu-kvm        D ffff88041e293680     0 23633      1 0x00000080
Jun 18 07:11:49 srv-test1 kernel: ffff8800d1d47d70 0000000000000082 ffff8800d1d47fd8 0000000000013680
Jun 18 07:11:49 srv-test1 kernel: ffff8800d1d47fd8 0000000000013680 ffff8803d6a738e0 ffff88041e293f48
Jun 18 07:11:49 srv-test1 kernel: ffff8803d6a738e0 7fffffffffffffff ffff8803d6a738e0 0000000000000017
Jun 18 07:11:49 srv-test1 kernel: Call Trace:
Jun 18 07:11:49 srv-test1 kernel: [<ffffffff8160a1d9>] schedule+0x29/0x70
Jun 18 07:11:49 srv-test1 kernel: [<ffffffff81608119>] schedule_timeout+0x209/0x2d0
Jun 18 07:11:49 srv-test1 kernel: [<ffffffff812ab153>] ? __blk_run_queue+0x33/0x40
Jun 18 07:11:49 srv-test1 kernel: [<ffffffff8101b589>] ? read_tsc+0x9/0x10
Jun 18 07:11:49 srv-test1 kernel: [<ffffffff810c8e5c>] ? ktime_get_ts+0x4c/0xf0
Jun 18 07:11:49 srv-test1 kernel: [<ffffffff816099ab>] io_schedule_timeout+0x9b/0xf0
Jun 18 07:11:49 srv-test1 kernel: [<ffffffff8160a9d6>] wait_for_completion_io+0x116/0x170
Jun 18 07:11:49 srv-test1 kernel: [<ffffffff810a9650>] ? wake_up_state+0x20/0x20
Jun 18 07:11:49 srv-test1 kernel: [<ffffffff812b0b84>] blkdev_issue_flush+0xb4/0x110
Jun 18 07:11:49 srv-test1 kernel: [<ffffffff81200635>] blkdev_fsync+0x35/0x50
Jun 18 07:11:49 srv-test1 kernel: [<ffffffff811f7215>] do_fsync+0x65/0xa0
Jun 18 07:11:49 srv-test1 kernel: [<ffffffff811f7503>] SyS_fdatasync+0x13/0x20
Jun 18 07:11:49 srv-test1 kernel: [<ffffffff81614de9>] system_call_fastpath+0x16/0x1b
Если сделать virsh destroy test_ubn то получаем зомби qemu-kvm c ошибкой
ошибка: Не удалось разрушить домен test_ubn
ошибка: Не удалось прервать выполнение процесса 22090 с SIGKILL: Устройство или ресурс занято
и зависший процесс со статусом D, который виден htop, но не виден ps и top. Причем этот процесс блокирет блочное устройство, к которому была подключена виртуальная машина и лечиться сие происшествие только полной перезагрузкой сервера.

Замечу, что если не делать virsh destroy, то гостевая машина отвечает и вполне успешно работает.

На практике, данная ситуация случается не часто, когда сервер нагружается под 85-100% CPU с наличием запущенного резервного копирования, или другой нагрузкой на диск.

Возможно кто-то сталкивался с такой ситуацией



Последнее исправление: VEvgeniyV (всего исправлений: 3)

давай начнём с простого yum repilist all на fpaste.org, потом на чём стоит виртуалка, файл, lvm, zfs. раздел диска просто. Далее установи ovirt or virt-manager и покажи вообще настройки машинки, ну и под конец полностью железо, мать, проц, мощность бп.

erzent ☆☆
()
Ответ на: комментарий от i_gnatenko_brain

repolist*, а про овирт да переборщил, хватило бы вирт-менеджера, хотя если он это делает на работе овирт вполне будет в тему. Через вирш легко накосячить. А реполист нужен, потому что в стандартных репах очень уж всё древнее, и некоторых библиотек к либвирту нет.

erzent ☆☆
()
Ответ на: комментарий от King_Carlo

всё может быть ещё проще, дешёвая плата с отсутствием vd-t и хреновой поддержкой vt-x, если у него какая мать от асус до 5000 россйиских, проверять в виртуалке проц сразу занятие идиотское.

erzent ☆☆
()
Ответ на: комментарий от erzent
[root@srv-test1 ~]# yum repolist all
Загружены модули: fastestmirror
Loading mirror speeds from cached hostfile
 * base: centos-mirror.rbc.ru
 * elrepo: elrepo.mirrors.arminco.com
 * epel: epel.besthosting.ua
 * extras: centos-mirror.rbc.ru
 * updates: ftp.sjtu.edu.cn
Идентификатор репозитория                                                     репозиторий                                                                                                       состояние
C7.0.1406-base/x86_64                                                         CentOS-7.0.1406 - Base                                                                                            отключено
C7.0.1406-centosplus/x86_64                                                   CentOS-7.0.1406 - CentOSPlus                                                                                      отключено
C7.0.1406-extras/x86_64                                                       CentOS-7.0.1406 - Extras                                                                                          отключено
C7.0.1406-fasttrack/x86_64                                                    CentOS-7.0.1406 - CentOSPlus                                                                                      отключено
C7.0.1406-updates/x86_64                                                      CentOS-7.0.1406 - Updates                                                                                         отключено
!base/7/x86_64                                                                CentOS-7 - Base                                                                                                   включено: 8 652
base-debuginfo/x86_64                                                         CentOS-7 - Debuginfo                                                                                              отключено
base-source/7                                                                 CentOS-7 - Base Sources                                                                                           отключено
centosplus/7/x86_64                                                           CentOS-7 - Plus                                                                                                   отключено
centosplus-source/7                                                           CentOS-7 - Plus Sources                                                                                           отключено
cr/7/x86_64                                                                   CentOS-7 - cr                                                                                                     отключено
!elrepo                                                                       ELRepo.org Community Enterprise Linux Repository - el7                                                            включено:   143
elrepo-extras                                                                 ELRepo.org Community Enterprise Linux Extras Repository - el7                                                     отключено
elrepo-kernel                                                                 ELRepo.org Community Enterprise Linux Kernel Repository - el7                                                     отключено
elrepo-testing                                                                ELRepo.org Community Enterprise Linux Testing Repository - el7                                                    отключено
!epel/x86_64                                                                  Extra Packages for Enterprise Linux 7 - x86_64                                                                    включено: 8 095
epel-debuginfo/x86_64                                                         Extra Packages for Enterprise Linux 7 - x86_64 - Debug                                                            отключено
epel-source/x86_64                                                            Extra Packages for Enterprise Linux 7 - x86_64 - Source                                                           отключено
epel-testing/x86_64                                                           Extra Packages for Enterprise Linux 7 - Testing - x86_64                                                          отключено
epel-testing-debuginfo/x86_64                                                 Extra Packages for Enterprise Linux 7 - Testing - x86_64 - Debug                                                  отключено
epel-testing-source/x86_64                                                    Extra Packages for Enterprise Linux 7 - Testing - x86_64 - Source                                                 отключено
!extras/7/x86_64                                                              CentOS-7 - Extras                                                                                                 включено:   128
extras-source/7                                                               CentOS-7 - Extras Sources                                                                                         отключено
fasttrack/7/x86_64                                                            CentOS-7 - fasttrack                                                                                              отключено
!updates/7/x86_64                                                             CentOS-7 - Updates                                                                                                включено:   682
updates-source/7                                                              CentOS-7 - Updates Sources                                                                                        отключено
repolist: 17 700
VEvgeniyV
() автор топика
Ответ на: комментарий от erzent

Стоит на DRBD

[root@srv-test1 ~]# lshw -short
H/W path       Device      Class          Description
=====================================================
                           system         (To be filled by O.E.M.)
/0                         bus            DQ77MK
/0/0                       memory         64KiB BIOS
/0/3c                      memory         1MiB L2 cache
/0/3d                      memory         256KiB L1 cache
/0/3e                      memory         6MiB L3 cache
/0/3f                      memory         16GiB System Memory
/0/3f/0                    memory         4GiB DIMM DDR3 Synchronous 1333 MHz (0,8 ns)
/0/3f/1                    memory         4GiB DIMM DDR3 Synchronous 1333 MHz (0,8 ns)
/0/3f/2                    memory         4GiB DIMM DDR3 Synchronous 1333 MHz (0,8 ns)
/0/3f/3                    memory         4GiB DIMM DDR3 Synchronous 1333 MHz (0,8 ns)
/0/40                      processor      Core i5 (Fill By OEM)
/0/100                     bridge         Xeon E3-1200 v2/3rd Gen Core processor DRAM Controller
/0/100/2                   display        Xeon E3-1200 v2/3rd Gen Core processor Graphics Controller
/0/100/14                  bus            7 Series/C210 Series Chipset Family USB xHCI Host Controller
/0/100/14/0    usb4        bus            xHCI Host Controller
/0/100/14/1    usb3        bus            xHCI Host Controller
/0/100/16                  communication  7 Series/C210 Series Chipset Family MEI Controller #1
/0/100/16.3                communication  7 Series/C210 Series Chipset Family KT Controller
/0/100/19      eno1        network        82579LM Gigabit Network Connection
/0/100/1a                  bus            7 Series/C210 Series Chipset Family USB Enhanced Host Controller #2
/0/100/1a/1    usb1        bus            EHCI Host Controller
/0/100/1a/1/1              bus            Integrated Rate Matching Hub
/0/100/1c                  bridge         7 Series/C210 Series Chipset Family PCI Express Root Port 1
/0/100/1c.6                bridge         7 Series/C210 Series Chipset Family PCI Express Root Port 7
/0/100/1c.6/0  eth1        network        82574L Gigabit Network Connection
/0/100/1d                  bus            7 Series/C210 Series Chipset Family USB Enhanced Host Controller #1
/0/100/1d/1    usb2        bus            EHCI Host Controller
/0/100/1d/1/1              bus            Integrated Rate Matching Hub
/0/100/1e                  bridge         82801 PCI Bridge
/0/100/1e/3                bus            FW322/323 [TrueFire] 1394a Controller
/0/100/1f                  bridge         Q77 Express Chipset LPC Controller
/0/100/1f.2                storage        7 Series/C210 Series Chipset Family 4-port SATA Controller [IDE mode]
/0/100/1f.3                bus            7 Series/C210 Series Chipset Family SMBus Controller
/0/100/1f.5                storage        7 Series/C210 Series Chipset Family 2-port SATA Controller [IDE mode]
/1                         power          To Be Filled By O.E.M.
/2             vnet1       network        Ethernet interface
/3             virbr0-nic  network        Ethernet interface

VEvgeniyV
() автор топика
Ответ на: комментарий от VEvgeniyV

добавь rpmfussion free/nonfree, потом покажи список пакетов kvm,qemu,libvirt которые ты ставишь. и заодно uname -a, интересно какое ты ядро используешь.

erzent ☆☆
()
Ответ на: комментарий от VEvgeniyV

не корми его, а то сейчас опять шкворца наберёт и в толксах будет по новой вакханалию разводить. он всё равно не знает, что такое drbd :) ты лучше fsck сделай для начала.

anonymous
()
Ответ на: комментарий от anonymous

А это зачем? Дам девайс блочный цепляется, ФС вроде как сбоку получается. Судя по проблеме, там дисковые операции подвисают, а libvirt перед убийством не объясняет qemu, что дисковые операции нужно прекращать.

VEvgeniyV
() автор топика

Jun 18 07:11:49 srv-test1 kernel: INFO: task qemu-kvm:23633 blocked for more than 120 seconds.

не страшно, такое бывает, это можно игнорировать. Сколько на хосте процессоров, и сколько отдано виртуалке(кам)?

что вообще с загрузкой процессоров/памяти/дисков во время таких проблем?

какие прослойки между KVM и физ. диском (lvm, fs, drbd, etc) установлены? какой используется io шедулер?

насчет D-state, это уже не должно случаться, был баг в пятерке, но его давно исправили. Я бы залез на freenode #kvm и спросил там

dyasny ★★★★★
()
Ответ на: комментарий от erzent

yum repilist all на fpaste.org

зачем?

Далее установи ovirt or virt-manager и покажи вообще настройки машинки

вот тебя прет... я всеми руками за ovirt, но не надо пихать его в каждую щель

dyasny ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.