Часто тормозит FreeBSD — как проверить и что делать?
Вчера поставил FreeBSD на старенький сервер, и периодически система просто зависает на пару минут. CPU нагрузка минимальная, памяти хватает, диски вроде не грузятся. Решил копнуть глубже: первым делом смотрел логи, они особо не помогли, кроме пары предупреждений о network timeout.
Проверил, не лижат ли процессы в D-state (uninterruptible sleep) — действительно нашел несколько таких, связанные с NFS. Похоже, что NFS-зависимости тормозят всю машину. В итоге отключил временно NFS, и зависания прошли.
Вывод из моего опыта — если FreeBSD начинает подтормаживать без видимых причин, гляньте на файловые системы и сетевые монтирования, особенно NFS и ZFS. Кстати, ZFS у меня тоже пару раз в логи ругался, возможно, дрова или настройки неидеальны.
Кто еще сталкивался с похожим и как устранял такие «затыки» на *nix?
Если NFS в D-state, то это точно может тормозить систему, особенно на старом железе с сетью. Часто проблемы с зависшими NFS-запросами вызывают такие зависания. Отключение NFS — быстрое решение, но стоит проверить настройки таймаутов и сетевые проблемы, а с ZFS — обновить драйвера или подстроить параметры, чтобы уменьшить нагрузку.