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

Asterisk использует 100% процессора и замораживает мой хост Debian

У меня есть хост Debian

$ uname -a

Linux voip 2.6.25-2-amd64 # 1 SMP Понедельник, 14 июля, 11:05:23 UTC 2008 x86_64 GNU / Linux

Старая звездочка

звездочка 1: 1.4.21.2 ~ dfsg-3

Работает очень-очень давно

$ uptime

13:50:37 до 1047 дней, 21:02, 7 пользователей, средняя нагрузка: 0,17, 0,19, 2,81

Сегодня хост был заморожен, на пинги отвечали, но я не мог использовать ssh, dhcp или другие службы.

После того, как я вошел в систему с консоли и заглянул в верхнюю часть - я увидел, что звездочка использует 100% процессора. killall asterisk не сработала, пришлось прибегнуть к killall -9. После того, как я перезапустил службу, все выглядело нормально.

Я проверил свои логи и заметил следующее:

> Mar 12 13:18:06 voip kernel: [96834831.947297] asterisk      D
> ffff81000100a080     0 15757      1                 Mar 12 13:18:06
> voip kernel: [96834831.947304]  ffff8100390fdda8 0000000000000086
> ffff810039561c00 ffff810024af33d8                                     
> Mar 12 13:18:06 voip kernel: [96834831.947310]  ffff81002dda8080
> ffff810039cb2d40 ffff81002dda82f0 0000000000000001                    
> Mar 12 13:18:06 voip kernel: [96834831.947317]  0000000000000296
> 0000000000000003 ffff8100390fdda8 ffffffff8022bea4                    
> Mar 12 13:18:06 voip kernel: [96834831.947322] Call Trace:            
> Mar 12 13:18:06 voip kernel: [96834831.947345]  [<ffffffff8022bea4>]
> __wake_up+0x38/0x4e                           Mar 12 13:18:06 voip kernel: [96834831.947364]  [<ffffffff881145b4>]
> :jbd:log_wait_commit+0x9f/0xed                Mar 12 13:18:06 voip
> kernel: [96834831.947373]  [<ffffffff80246a54>]
> autoremove_wake_function+0x0/0x2e             Mar 12 13:18:06 voip
> kernel: [96834831.947389]  [<ffffffff881104f7>]
> :jbd:journal_stop+0x165/0x18d                 Mar 12 13:18:06 voip
> kernel: [96834831.947400]  [<ffffffff802b4c6d>]
> __writeback_single_inode+0x17f/0x29d          Mar 12 13:18:06 voip kernel: [96834831.947407]  [<ffffffff80246a54>]
> autoremove_wake_function+0x0/0x2e             Mar 12 13:18:06 voip
> kernel: [96834831.947419]  [<ffffffff802b558b>] sync_inode+0x24/0x31  
> Mar 12 13:18:06 voip kernel: [96834831.947440]  [<ffffffff881213ce>]
> :ext3:ext3_sync_file+0x8a/0x9c                Mar 12 13:18:06 voip
> kernel: [96834831.947449]  [<ffffffff802b79c2>] do_fsync+0x52/0xa4    
> Mar 12 13:18:06 voip kernel: [96834831.947456]  [<ffffffff802b7a37>]
> __do_fsync+0x23/0x36                          Mar 12 13:18:06 voip kernel: [96834831.947463]  [<ffffffff8020bd9a>]
> system_call_after_swapgs+0x8a/0x8f

Я сбит с толку, это ошибка Asterisk? Или что-то другое? Почему я вижу в журнале do_fsync и sync_inode? Может быть, это проблема файловой системы или жесткого диска? (Использую lvm + ext3)

Может кто-то указать мне верное направление?

Если что-то работает без сбоев около трех лет подряд и внезапно начинает выдавать ошибки ядра, связанные с файловой системой, я бы сказал, что ваше оборудование начинает таять. Немедленно убедитесь, что у вас есть пригодные для использования резервные копии, и немедленно замените сервер новым.

Или, как минимум, замените жесткие диски, даже если проблемы, которые выглядят как проблема HD, иногда могут быть из-за плохой оперативной памяти / процессора или перегрева.

Я думаю, у вас может быть проблема с оборудованием. Попробуйте бежать fsck для восстановления вашей файловой системы.