Если заведомо известно, что в системе будут присутствовать приложения, которым нужен значительный объем памяти для работы, то общем кэша следует ограничить.
В Solaris 10 это делается добавлением строки в /etc/system
set zfs:zfs_arc_max = 0x1000000000и перезагрузкой. Данный параметр ограничит используемый объем 64 гигабайтами. Ограничение жесткое и превышено никогда не будет.
Это же можно сделать на лету с помощью утилиты mdb, но знающие люди весьма не советуют, потому даже команды приводить не буду.
Другие полезные команды по теме -
текущий объем файлового кэша в гигабайтах
kstat zfs:0:arcstats:size|grep size|awk {'print $2"/1024/1024/1024"'}|bcустановленный лимит в гигабайтах
kstat zfs:0:arcstats:c_max|grep c_max|awk {'print $2"/1024/1024/1024"'}|bc
> с помощью утилиты mdb, но знающие люди весьма не советуют
ОтветитьУдалитьА почему?
С ходу линк не нашел, но это unstable kernel parameter (как-то так). Вы можете свалиться в панику меняя этот параметр на лету, т.е. ядро не все ситуации может корректно отработать. Потому этот параметр устанавливается именно на этапе загрузки.
ОтветитьУдалить