LINUX.ORG.RU
ФорумAdmin

Тормоза: task bdi-default:17 blocked for more than 120 seconds


1

1

Столкнулся со следующей проблемой: Сервер дико тормозит, высокий load average, одно ядро утилизировано на 100% в userspace. Ни top, ни ps не отображают жрущих процессов.

В dmesg вываливается:

[2647558.534794] INFO: task bdi-default:17 blocked for more than 120 seconds.
[2647558.534914] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[2647558.535033] bdi-default   D ffff88006a308000     0    17      2 0x00000000
[2647558.535037]  ffff88006a308000 0000000000000046 0000000000015788 0000000000015780
[2647558.535040]  0000000000000008 0000000000015780 000000000000f9e0 ffff88013fb81fd8
[2647558.535043]  0000000000015780 0000000000015780 ffff88013fa9f810 ffff88013fa9fb08
[2647558.535045] Call Trace:
[2647558.535054]  [<ffffffff81043cfd>] ? select_task_rq_fair+0x472/0x843
[2647558.535059]  [<ffffffff812fb6dd>] ? schedule_timeout+0x2e/0xdd
[2647558.535061]  [<ffffffff812fb594>] ? wait_for_common+0xde/0x15b
[2647558.535064]  [<ffffffff8104a4cc>] ? default_wake_function+0x0/0x9
[2647558.535068]  [<ffffffff81064e02>] ? kthread_create+0x93/0x121
[2647558.535072]  [<ffffffff810c9176>] ? bdi_start_fn+0x0/0xd2
[2647558.535077]  [<ffffffff8105a8cc>] ? lock_timer_base+0x26/0x4b
[2647558.535079]  [<ffffffff8105a954>] ? try_to_del_timer_sync+0x63/0x6c
[2647558.535082]  [<ffffffff8105a969>] ? del_timer_sync+0xc/0x16
[2647558.535084]  [<ffffffff812fb75c>] ? schedule_timeout+0xad/0xdd
[2647558.535087]  [<ffffffff8105a9e8>] ? process_timeout+0x0/0x5
[2647558.535089]  [<ffffffff810c90ae>] ? bdi_forker_task+0x1f5/0x2bd
[2647558.535093]  [<ffffffff8103aa66>] ? __wake_up_common+0x44/0x72
[2647558.535096]  [<ffffffff810c8eb9>] ? bdi_forker_task+0x0/0x2bd
[2647558.535098]  [<ffffffff81064cc5>] ? kthread+0x79/0x81
[2647558.535102]  [<ffffffff81011baa>] ? child_rip+0xa/0x20
[2647558.535104]  [<ffffffff81064c4c>] ? kthread+0x0/0x81
[2647558.535106]  [<ffffffff81011ba0>] ? child_rip+0x0/0x20

Гуглил плхожие проблемы, но нигде нет решения. ОС Debian Squeeze, amd64 в VMWare ESXi 5. Сервер используется в качестве NFS шары.

В чем может быть проблема? Как решить?

★★★

Проблема может и в самом деле быть в интенсивном IO. Посмотри графики IO в sysstat и в virtual center.

Если нет, попробуй поставить обновления на esxi, обновить тулзы и ОС ( как минимум - ядро linux )

Также в новых версиях ядра был какой-то баг по этому поводу, но debian squeeze это не грозит :)

Ни top, ни ps не отображают жрущих процессов.

А это не жрущие процессы. Такая проблема означает, что процесс пытается выполнить IO запрос, а ядро не может этого сделать, т.к. очередь IO и так забита по самое небалуйся.

Посмотри iostat, atop, iotop

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

:)))) Надеюсь, ты не xen пришёл советовать?

З.Ы. кстати, совсем забыл, попробуй перейти на паравиртуальный scsi ( pvscsi ) в настройках ВМ. Но только не для диска с корневой ВФ, иначе придётся включать драйвер pvscsi в initrd

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

Не могу просмотреть. Это состояние длится не долго, не более 2 часов. Уже обновил ПО, перезагрузил сервер и жду следующего инцидента.

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

Вывод top не обновлялся. Странное состояние системы.

exst ★★★ ()

Вот у меня нечто похожее сегодня началось:

May 19 11:08:32 infra kernel: [ 4321.104183] INFO: task flush-8:16:1729 blocked for more than 120 seconds.
May 19 11:08:32 infra kernel: [ 4321.104189] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
May 19 11:08:32 infra kernel: [ 4321.104195] flush-8:16      D ffff88042ecd3780     0  1729      2 0x00000000
May 19 11:08:32 infra kernel: [ 4321.104203]  ffff88041cd42080 0000000000000046 0000000000011200 ffff88041a4551a0
May 19 11:08:32 infra kernel: [ 4321.104212]  0000000000013780 ffff88040b61bfd8 ffff88040b61bfd8 ffff88041cd42080
May 19 11:08:32 infra kernel: [ 4321.104219]  0000000000000246 ffffffff8134da04 ffff88042efbeef0 ffff88040eba5128
May 19 11:08:32 infra kernel: [ 4321.104226] Call Trace:
May 19 11:08:32 infra kernel: [ 4321.104238]  [<ffffffff8134da04>] ? _raw_spin_lock_irqsave+0x9/0x25
May 19 11:08:32 infra kernel: [ 4321.104269]  [<ffffffffa0119630>] ? do_get_write_access+0x1ad/0x36a [jbd2]
May 19 11:08:32 infra kernel: [ 4321.104279]  [<ffffffff8105f9a5>] ? autoremove_wake_function+0x2a/0x2a
May 19 11:08:32 infra kernel: [ 4321.104294]  [<ffffffffa01198e1>] ? jbd2_journal_get_write_access+0x21/0x38 [jbd2]
May 19 11:08:32 infra kernel: [ 4321.104315]  [<ffffffffa01297d2>] ? ext4_read_block_bitmap+0x4c/0x2f8 [ext4]
May 19 11:08:32 infra kernel: [ 4321.104343]  [<ffffffffa0151ffb>] ? __ext4_journal_get_write_access+0x4f/0x5e [ext4]
May 19 11:08:32 infra kernel: [ 4321.104369]  [<ffffffffa0156833>] ? ext4_mb_mark_diskspace_used+0x66/0x2b6 [ext4]
May 19 11:08:32 infra kernel: [ 4321.104393]  [<ffffffffa0157832>] ? ext4_mb_new_blocks+0x208/0x403 [ext4]
May 19 11:08:32 infra kernel: [ 4321.104417]  [<ffffffffa0151000>] ? ext4_ext_map_blocks+0x139d/0x1724 [ext4]
May 19 11:08:32 infra kernel: [ 4321.104425]  [<ffffffff811add02>] ? __lookup_tag+0x6f/0x120
May 19 11:08:32 infra kernel: [ 4321.104433]  [<ffffffff811ae4ba>] ? radix_tree_gang_lookup_tag_slot+0x77/0x98
May 19 11:08:32 infra kernel: [ 4321.104454]  [<ffffffffa012e6da>] ? ext4_map_blocks+0x10a/0x1f0 [ext4]
May 19 11:08:32 infra kernel: [ 4321.104474]  [<ffffffffa0131670>] ? mpage_da_map_and_submit+0x8e/0x2f9 [ext4]
May 19 11:08:32 infra kernel: [ 4321.104495]  [<ffffffffa0131eac>] ? ext4_da_writepages+0x239/0x45b [ext4]
May 19 11:08:32 infra kernel: [ 4321.104519]  [<ffffffffa01474f0>] ? ext4_journal_start_sb+0x139/0x14f [ext4]
May 19 11:08:32 infra kernel: [ 4321.104539]  [<ffffffffa0131f37>] ? ext4_da_writepages+0x2c4/0x45b [ext4]
May 19 11:08:32 infra kernel: [ 4321.104549]  [<ffffffff81117ad6>] ? writeback_single_inode+0x124/0x2d3
May 19 11:08:32 infra kernel: [ 4321.104556]  [<ffffffff81117f56>] ? writeback_sb_inodes+0x16b/0x204
May 19 11:08:32 infra kernel: [ 4321.104563]  [<ffffffff8111805c>] ? __writeback_inodes_wb+0x6d/0xab
May 19 11:08:32 infra kernel: [ 4321.104569]  [<ffffffff811181c2>] ? wb_writeback+0x128/0x21f
May 19 11:08:32 infra kernel: [ 4321.104575]  [<ffffffff81070c55>] ? arch_local_irq_save+0x11/0x17
May 19 11:08:32 infra kernel: [ 4321.104583]  [<ffffffff81118679>] ? wb_do_writeback+0x146/0x1a8
May 19 11:08:32 infra kernel: [ 4321.104590]  [<ffffffff8111875f>] ? bdi_writeback_thread+0x84/0x1e5
May 19 11:08:32 infra kernel: [ 4321.104596]  [<ffffffff811186db>] ? wb_do_writeback+0x1a8/0x1a8
May 19 11:08:32 infra kernel: [ 4321.104603]  [<ffffffff8105f329>] ? kthread+0x76/0x7e
May 19 11:08:32 infra kernel: [ 4321.104609]  [<ffffffff81354b34>] ? kernel_thread_helper+0x4/0x10
May 19 11:08:32 infra kernel: [ 4321.104616]  [<ffffffff8105f2b3>] ? kthread_worker_fn+0x139/0x139
May 19 11:08:32 infra kernel: [ 4321.104622]  [<ffffffff81354b30>] ? gs_change+0x13/0x13
Причём в списке так же заблокированных были postgres и разные задачи от клиента BOINC. Вроде бы вылечилось — вот как-то так:
# /etc/init.d/boinc-client stop
# sync ; sync
ОС: Debian GNU/Linux 7.0 AMD64

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

Дополнительная информация для моего случая:

  • В ночь на May 19 прошла запланированная команда
    /sbin/badblocks /dev/sdb
    которая выполнилась без ошибок
  • Спустя примерно сутки на root@ пришло письмо о проблемах с железом HDD.
    From root@infra.infra-hdc.net Mon May 20 02:00:59 2013
    X-Mozilla-Status: 0005
    X-Mozilla-Status2: 00000000
    Return-path: <root@infra.infra-hdc.net>
    Envelope-to: root@infra.infra-hdc.net
    Delivery-date: Mon, 20 May 2013 02:00:59 +0400
    Received: from root by infra.infra-hdc.net with local (Exim 4.80)
    	(envelope-from <root@infra.infra-hdc.net>)
    	id 1UeBdd-0003rM-Ju
    	for root@infra.infra-hdc.net; Mon, 20 May 2013 02:00:07 +0400
    To: root@infra.infra-hdc.net
    Subject: SMART error (CurrentPendingSector) detected on host: infra
    Message-Id: <E1UeBdd-0003rM-Ju@infra.infra-hdc.net>
    From: root <root@infra.infra-hdc.net>
    Date: Mon, 20 May 2013 01:59:33 +0400
    
    This email was generated by the smartd daemon running on:
    
       host name: infra
      DNS domain: infra-hdc.net
      NIS domain: (none)
    
    The following warning/error was logged by the smartd daemon:
    
    Device: /dev/sdb [SAT], 1 Currently unreadable (pending) sectors
    
    
    For details see host's SYSLOG.
    
    You can also use the smartctl utility for further investigation.
    Another email message will be sent in 24 hours if the problem persists.
    

Не думаю, что это простое совпадение. Наверняка появились медленные сектора, которые вгоняли систему в замедление и которые потом стали плохими. После получения данного письма замедления нет.

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