У меня есть простая установка ZFS дома, четыре зеркальных диска, 8 ГБ оперативной памяти и 120 ГБ Intel X25-M SSD для L2ARC. Я побежал zpool add poolname cache cXtXdX
затем сгенерировал нагрузку и нетерпеливо отслеживал процесс потепления, запустив zpool iostat -v mypool
. Через несколько часов L2ARC заполнен, но что именно было кэшировано?
Могу я заглянуть и посмотреть, что находится в моем ARC / L2ARC? Я понимаю, что определенные блоки будут отображаться на несколько файловых систем (из-за моментальных снимков, клонирования или дедупликации), но я все же хотел бы попробовать такую статистику:
Я бы предположил, что zdb и / или dtrace будут инструментами de jour, но на самом деле не знаю, с чего начать.
Я бы, вероятно, возразил, что вам следует заботиться не о том, что находится в кеше, а о том, были ли кэшированы наиболее эффективные вещи. Т.е. используется ли кэш ARC с максимальной эффективностью?
Я запускаю небольшую (9 ТБ) реализацию ZFS на работе и нахожу инструмент Бена Роквуда arc_summary.pl, и Sun arcstat.pl, оба подробно описаны в этом сообщение в блоге cuddletech, чтобы быть чрезвычайно полезным.
Я знаю, что он не дает прямого ответа на ваш вопрос о том, что именно находится в кеше ARC, но он должен дать вам надежные данные о том, как используется ваш кеш, и нужно ли вам больше памяти / места на SSD.
Вот сценарий, который был обновлен для отражения данных в L2ARC.
Видеть: http://blog.harschsystems.com/2010/09/08/arcstat-pl-updated-for-l2arc-statistics/
Источник доступен здесь: https://github.com/mharsch/arcstat