Страница 1 из 2
ZFS, периодически затыкается
Добавлено: 2013-02-25 10:57:59
kharkov_max
День добрый.
Есть Freebsd9 Stable, поднято на raidz из 6 дисков.
С дисками вроде все в порядке, smartmon ни чего плохого не находит, сама система вроде тоже работает нормально.
НО !!!
В системе поднят NFS3 сервер
На хранилище ночью льются с ESXi5 бекапы по nfs, так вот с недавнего времени процесс бекапа перестал нормально заканчиваться.
На ESXi5 точно проблемы нет !!!
По логу Esxi5 видно что в различное время бекапа диск NFS не отвечал и бекап отвалился по тайм ауту.
Несколько раз при копировании большого кол-ва файлов по samba замечал что сервер на 2-3 мин становится недоступным (залипает, пинги работают, ssh - нет, web - нет, samba - нет), потом отлипает и работает как ни в чем не бывало.
Подскажите как побороть косяк ...
Перерыл всесь инет, подходящего ответа не нашел.
Уже остановил все, кроме критичных сервисов (нужных для работы) - не помогло ...
Смотрел в логах - вроде ошибок каких то страшных и не очень страшных нет.
К примеру istgt действительно в это время зафиксировал ошибки обращения к диску ... Но это не дает ни какого понимания почему это произошло.
Собственно как отловить этот косяк ?
Готов показать конфиги sysctl и т.д., говорите что показать ...
Спасибо ...
Re: ZFS, периодически затыкается
Добавлено: 2013-02-28 10:53:34
kharkov_max
Вообщем сегодня система в очередной раз заткнулась, и подвисла.
Полез в консоль и у видел:
Код: Выделить всё
...
swap_pager: indefinite wait buffer:
...
Помогла только жесткая перезагрузка ...
После перезагрузки zpool status показывает что все нормально.
Проверил состояние smart тоже все нормально.
Ошибка вызвана:
http://www.freebsd.org/doc/ru/books/faq ... ait-buffer
Это значит, что процесс пытается сбросить страницу памяти на диск, и попытка сделать это оканчивается неудачно вот уже в течение более чем 20 секунд. Это может быть вызвано испорченными блоками на диске, кабелями, подключением или другим оборудованием ввода/вывода. Если диск сам по себе на самом деле испорчен, вы также увидите ошибки работы с диском в /var/log/messages и при работе команды dmesg. В противном случае проверьте кабели и подключения.
В /var/log/messages тишина.
Далее сделал
Код: Выделить всё
gpart show
=> 34 3907029101 ada0 GPT (1.8T)
34 6 - free - (3.0k)
40 1024 1 freebsd-boot (512k)
1064 3907028064 2 freebsd-zfs (1.8T)
3907029128 7 - free - (3.5k)
=> 34 3907029101 ada1 GPT (1.8T)
34 6 - free - (3.0k)
40 1024 1 freebsd-boot (512k)
1064 3907028064 2 freebsd-zfs (1.8T)
3907029128 7 - free - (3.5k)
=> 34 3907029101 ada2 GPT (1.8T)
34 6 - free - (3.0k)
40 1024 1 freebsd-boot (512k)
1064 3907028064 2 freebsd-zfs (1.8T)
3907029128 7 - free - (3.5k)
=> 34 3907029101 ada3 GPT (1.8T)
34 6 - free - (3.0k)
40 1024 1 freebsd-boot (512k)
1064 3907028064 2 freebsd-zfs (1.8T)
3907029128 7 - free - (3.5k)
=> 34 3907029101 ada4 GPT (1.8T)
34 6 - free - (3.0k)
40 1024 1 freebsd-boot (512k)
1064 3907028064 2 freebsd-zfs (1.8T)
3907029128 7 - free - (3.5k)
=> 34 3907029101 ada5 GPT (1.8T)
34 6 - free - (3.0k)
40 1024 1 freebsd-boot (512k)
1064 3907028064 2 freebsd-zfs (1.8T)
3907029128 7 - free - (3.5k)
Верно ли я понимаю что такое понятие как swap в данной системе отсутствует ?
Собственно тогда и ошибка поэтому, система пытается писать в swap а его нет ...
Ну и изначальные глюки то же ...
Re: ZFS, периодически затыкается
Добавлено: 2013-02-28 11:13:44
pimlab
у менай подвисало когда swap отваливался в месте с диском на котором он был создан отдельным разделом ( raidz на 4етырех диска и на каздом еше раздел со swap ) и еше zfs с tmpfs совсем не дружит, если swap создан средствами самой zfs ... лично у меня так было
Re: ZFS, периодически затыкается
Добавлено: 2013-03-01 2:32:39
iZEN
Несколько часов назад в 9-STABLE прилетели обновления ZFS и исправления NFS:
http://svnweb.freebsd.org/base/stable/9/?sortby=date
Re: ZFS, периодически затыкается
Добавлено: 2013-03-01 10:55:07
kharkov_max
Пересобрал, завтра будет видно после бекапа ...
Re: ZFS, периодически затыкается
Добавлено: 2013-03-04 9:18:09
kharkov_max
Вообщем пересборка мира и ядра проблему не решила.
Немного изменив системные переменные получилось сделать так что бы сервер не падал.
Т.е. как минимум бекап завершается с ошибкой, но сервер отвечает по ssh и работает далее, по samba, ftp ...
Есть подозоение что при ночном бекапе по NFS, сервер съедает всю ОЗУ (т.к. льется много данных), пытается писать в swap и в этот момент ошибка.
Т.к. судя по
Код: Выделить всё
gpart show
=> 34 3907029101 ada0 GPT (1.8T)
34 6 - free - (3.0k)
40 1024 1 freebsd-boot (512k)
1064 3907028064 2 freebsd-zfs (1.8T)
3907029128 7 - free - (3.5k)
=> 34 3907029101 ada1 GPT (1.8T)
34 6 - free - (3.0k)
40 1024 1 freebsd-boot (512k)
1064 3907028064 2 freebsd-zfs (1.8T)
3907029128 7 - free - (3.5k)
=> 34 3907029101 ada2 GPT (1.8T)
34 6 - free - (3.0k)
40 1024 1 freebsd-boot (512k)
1064 3907028064 2 freebsd-zfs (1.8T)
3907029128 7 - free - (3.5k)
=> 34 3907029101 ada3 GPT (1.8T)
34 6 - free - (3.0k)
40 1024 1 freebsd-boot (512k)
1064 3907028064 2 freebsd-zfs (1.8T)
3907029128 7 - free - (3.5k)
=> 34 3907029101 ada4 GPT (1.8T)
34 6 - free - (3.0k)
40 1024 1 freebsd-boot (512k)
1064 3907028064 2 freebsd-zfs (1.8T)
3907029128 7 - free - (3.5k)
=> 34 3907029101 ada5 GPT (1.8T)
34 6 - free - (3.0k)
40 1024 1 freebsd-boot (512k)
1064 3907028064 2 freebsd-zfs (1.8T)
3907029128 7 - free - (3.5k)
swap отсутствует.
Соственно:
1. Как, возможно другим методом проверить наличие swap.
2. Как проверить, если он есть, нормальную функциональность swap.
3. Как безболезненно, не потеряв данные на raidz создать swap, к сожалению подключить еще один диск - не получится, т.е. нужно как то изголится на этой FS.
Спасибо ...
Re: ZFS, периодически затыкается
Добавлено: 2013-03-04 9:30:41
kharkov_max
Хотя
Код: Выделить всё
zfs list rpool/swap
NAME USED AVAIL REFER MOUNTPOINT
rpool/swap 16,5G 7,19T 15,4G -
>>zfs get all rpool/swap
NAME PROPERTY VALUE SOURCE
rpool/swap type volume -
rpool/swap creation чт май 17 15:25 2012 -
rpool/swap used 16,5G -
rpool/swap available 7,19T -
rpool/swap referenced 15,4G -
rpool/swap compressratio 1.00x -
rpool/swap reservation none default
rpool/swap volsize 16G local
rpool/swap volblocksize 8K -
rpool/swap checksum off local
rpool/swap compression off default
rpool/swap readonly off default
rpool/swap copies 1 default
rpool/swap refreservation 16,5G local
rpool/swap primarycache all default
rpool/swap secondarycache all default
rpool/swap usedbysnapshots 0 -
rpool/swap usedbydataset 15,4G -
rpool/swap usedbychildren 0 -
rpool/swap usedbyrefreservation 1,06G -
rpool/swap logbias latency default
rpool/swap dedup off default
rpool/swap mlslabel -
rpool/swap sync standard default
rpool/swap refcompressratio 1.00x -
rpool/swap written 15,4G -
rpool/swap org.freebsd:swap on local
Вроде как swap есть.
Но ошибка вот такая
Код: Выделить всё
swap_pager: indefinite wait buffer: bufobj: 0, blkno: 22335, size: 4096
и т.д.
Re: ZFS, периодически затыкается
Добавлено: 2013-03-04 10:01:41
kharkov_max
Судя по состоянию swap он полностью задействован.
Сделал ребут серверу, смотрю - опять сразу после ребута
По идее ни одна программа не могла его так бысто заполинть ...
Re: ZFS, периодически затыкается
Добавлено: 2013-03-04 10:29:27
kharkov_max
Еще одна странность.
top показывает что swap FREE, собственно по нему на swap и ориентировался ...
Код: Выделить всё
last pid: 2652; load averages: 0.04, 0.03, 0.00 up 0+00:36:35 09:29:14
111 processes: 1 running, 110 sleeping
CPU: 1.4% user, 0.0% nice, 0.2% system, 0.1% interrupt, 98.3% idle
Mem: 158M Active, 104M Inact, 2876M Wired, 12G Free
ARC: 2517M Total, 940M MFU, 1558M MRU, 2320K Anon, 7194K Header, 10M Other
Swap: 16G Total, 16G Free
Re: ZFS, периодически затыкается
Добавлено: 2013-03-04 10:53:14
kharkov_max
Что если попробовать
и потом
Код: Выделить всё
zfs create -V 16Gb rpool/swap
zfs set org.freebsd:swap=on rpool/swap
т.е. пересоздать swap раздел ...
Re: ZFS, периодически затыкается
Добавлено: 2013-03-04 16:47:15
Alvares
kharkov_max писал(а):Судя по состоянию swap он полностью задействован.
Сделал ребут серверу, смотрю - опять сразу после ребута
По идее ни одна программа не могла его так бысто заполинть ...
Это вам показывается, сколько бывало заполнено

У меня тоже своп был занят на 0%, а zfs показывала, что выделено места и занято места 100% (128М)
Re: ZFS, периодически затыкается
Добавлено: 2013-03-04 17:29:50
kharkov_max
Хорошо если так ...
Что можно еще посмотреть/помониторить в системе, ведь то что сервер падает - факт.
Сервер с которого идет бекап подключен к хранилищу напрямую, без свичей, карты гигабитные ...
Re: ZFS, периодически затыкается
Добавлено: 2013-03-04 18:00:04
iZEN
Натравить MHDD на все диски. Досконально проверить на бэд-блоки.
Если SWAP быстро заполняется, то значит не хватает оперативной памяти. Нужно добавить оперативки.
Обновить систему до 9.1-STABLE из SVN. Про CVS забудьте.
Re: ZFS, периодически затыкается
Добавлено: 2013-03-04 18:40:04
kharkov_max
iZEN писал(а):Натравить MHDD на все диски. Досконально проверить на бэд-блоки.
Если SWAP быстро заполняется, то значит не хватает оперативной памяти. Нужно добавить оперативки.
Обновить систему до 9.1-STABLE из SVN. Про CVS забудьте.
1. MHDD все проверно - проблем нет, это сделал в первую очередь
2. Система обновлялась из SVN до 9.1-STABLE и ни как по другому.
3. Сделал checksum=on, но что то кажется что не поможет.
Меня смущает что
Как то мне кажется что не верно что сама zfs показывает не текущее состояние swap, а как писал
Alvares максимальное которое было когда-то ...
Оперативы и так 16Гб, на серверах с меньшим кол-вом ОЗУ, правда под 8.2 работает при гораздо большей нагрузке без проблем ...
Swap делал 16Гб именно исходя из соображений кол-ва ОЗУ.
Re: ZFS, периодически затыкается
Добавлено: 2013-03-04 19:53:37
iZEN
Попробуйте пересоздать SWAP, сделать его размер не больше 4 гигабайта и включить на нём сжатие данных LZ4 (которое недавно появилось в ZFS, zfs пул нужно будет апгрейдить). После этого понаблюдайте за поведением.
Re: ZFS, периодически затыкается
Добавлено: 2013-03-04 21:04:12
kharkov_max
А почему не более 4Гб ?
Re: ZFS, периодически затыкается
Добавлено: 2013-03-04 21:13:32
kharkov_max
Собственно пересоздал swap, перегрузил сервер, завтра будет видно чем все закончилось.
Re: ZFS, периодически затыкается
Добавлено: 2013-03-04 21:36:13
iZEN
kharkov_max писал(а):Собственно пересоздал swap, перегрузил сервер, завтра будет видно чем все закончилось.
Проверку контрольных сумм блоков включили? Включите!
Re: ZFS, периодически затыкается
Добавлено: 2013-03-04 21:36:49
iZEN
kharkov_max писал(а):А почему не более 4Гб ?
Это для оперативного контроля.
Re: ZFS, периодически затыкается
Добавлено: 2013-03-04 21:40:39
kharkov_max
iZEN писал(а):kharkov_max писал(а):Собственно пересоздал swap, перегрузил сервер, завтра будет видно чем все закончилось.
Проверку контрольных сумм блоков включили? Включите!
Спс, включил.
Re: ZFS, периодически затыкается
Добавлено: 2013-03-04 21:58:57
iZEN
После всех манипуляций желательно перезагрузить.
Re: ZFS, периодически затыкается
Добавлено: 2013-03-05 9:10:40
kharkov_max
Да, конечно перегрузил.
Наступило утро, сервер не отвечает.
В консоли сообщение от sendmail о невозможности записать сообщение.
Ошибки
Код: Выделить всё
swap_pager: indefinite wait buffer: bufobj: 0,
нет.
Пошел ребутить кнопкой ....
Какие еще будут варианты ?
Re: ZFS, периодически затыкается
Добавлено: 2013-03-05 9:20:56
iZEN
Память проверить мемтестом.
Re: ZFS, периодически затыкается
Добавлено: 2013-03-05 9:38:32
kharkov_max
ОЗУ как вариант, но уверен что с ОЗУ все нормально.
Сервер падает только при NFS бакапах, когда на приличной скорости льются большие файлы 32-40 Гб
После ребута writen 14Gb, т.е. похоже что в swap написало 14 Гб.
Пока увеличил swap до 48Гб, понимаю что это не выход.
Вопрос в следующем, почему при записи на NFS система начинает активно использовать Swap?
Re: ZFS, периодически затыкается
Добавлено: 2013-03-05 10:32:40
spf
Дедупликация включена?
У меня при включенной дедупликации сервер вис.