Есть такой, замечательный гипервизор, SmartOS.
Всем хорош, особенно для работы dev проектов, на маломощных машинах. Некоторые мои разрабы от, smf и startd, что заменило им возню с софтом аля supervisord, просто в восторге. Но не суть.
Он, как добросовестный форк солярки, используется естественно zfs, в коем есть такая штука как
zfs_arc
Недавно, я, когда исследовал возможность использования его в тяжеловесных продакшн окружениях (там где надо распределение ресурсов чёткое, для всего остального есть Jail), наткнулся, например. на такой кейс:
1) Создаем любую KVM либо OS машину (для проверки нагрузки на IO)
2) Например, если у нас FreeBSD делаем всего две операции:
- Выкачиваем порты
- Перебираем и устанавливаем мир
3) Получаем большую нагрузку на IO и, соответственно, большое значение zfs кеша в памяти (при условии что у нас нет дисков кеширующих в пуле)
В моем случае было где то 7,8/8 Гб RAM, так как дисков для кеша нет.
Соответственно, для гипервизора с жестким распределением ресурсов - это очень не есть хорошо. (Представим что там какая нибудь постгря еще до кучи стоит.)
И, соответственно, так как в дефолтном состоянии система грузится в память - возможность установки лимитов на эти параметры отсутствует. (В обычном Solaris это делается в /etc/system).
Ладно, пошел спросил в мейлинг листы насчет этой особенности. Из дельных ответов либо советуют пересобирать платформу, согласно патчам http://dtrace.org/blogs/wesolows/2013/1 ... n-smartos/
Либо еще, например, вот такой
Да, действительно, что это я). Ну подумаешь memory leak, даже не явный, а вызванный работой другого сервиса. Все ок:)It is still not clear to me what problem it is you are experiencing other than the free memory counter getting smaller as a result of the system using unused RAM.
Механизм освобождения кеша, так же не реализован, т.е если через vmadm виртуалка стопориться, весь кеш, который был "сделан" её UID остаётся в системе.(оставлял в состоянии покоя ОС на 24 ч)
За сим вопрос:
Случайно, никто не сталкивался с подобным поведением? Если да, то с какой стороны решали?
Момент с установкой ++ хардов в пул для кеша, я думаю, не есть продуктивный, так как при отсутствии механизма освобождения без перезагрузки полной хост машины - смысла 0. Так как не будешь же бутить хост машину.
Я, пока вижу, единственный адекватный вариант - это поставить хост на бут раздел, а не флешку, что бы получить полноценный доступ к /etc и ограничить в том числе и это.