Chris Jones опубликовал (http://www.mail-archive.com/freebsd-hackers@freebsd.org...) в списке рассылки freebsd-hackers набор патчей для ограничения памяти а подсистеме FreeBSD jail.
Патчи позволяют указывать максимальный доступный объём памяти при создании окружения. Патчи созданы на базе RELENG_6 от 1 августа.
URL: http://www.mail-archive.com/freebsd-hackers@freebsd.org...
Новость: http://www.opennet.me/opennews/art.shtml?num=8238
Возможно я не до конца вник, но выглядит как уродливый костыль.
http://wikitest.freebsd.org/JailResourceLimitsЧто это за уродский контроль памяти с периодическим опросом процессов? Надо VM обучить jail'ам, а не фигней страдать.
Еще хуже с процессорным временем. Обещали же вроде по отдельному шедулеру на jail. И де? Опять костыль, который не помешает занять 100% CPU.
Блин, понабрали в рамках SOC каких-то выродков... Один начал систему портов уродовать совершенно идиотской реализацей ${DESTDIR}, другой jail'ы ограничивает через ж%пу...
В рамках проекта jail2 автор планирует сделать лимиты по другому.
http://docs.freevps.com/doku.php?id=freebsd:index
ну вам-то, конечно, виднее.
хотелось бы увидеть результаты ваших работ, а не треп ЛОРовца.
О, если у вас так много работ, ответьте на простой вопрос - от чего такое ограничение памяти спасет и что вообще даст?
Вы, наверное, привыкли там на ЛОРе в лужу пердеть, а я эти патчи лично тестировал.
Вообще-то в отличии от Вас, автор в листе достаточно подробно аргументирует свою позицию. И приводит аргументы в пользу такого решения. Впрочем, "чукча не читатель".
В прочем - 2 треда на каждый Jail (при том что на боль менее нормальном хостинге 50-100 jail на хосте) как то не кошерно. Да и цикл в котором обходятся все процессы запущеные в системе - а не только процессы данного jail, очень хреново.
он пишет, что в solaris примерно так же сделано. соляра тоже поделка пионеров? :)и ещё пишет, что хотел ограничивать именно весь jail, а не процесс, потому и...
А что соляра эталон правильности?
в соляре то как раз таки сделно совершенно нитак идиоцки как у етого товарища.
догоняем openvz ?
>Что это за уродский контроль памяти с периодическим опросом процессов? Надо VM обучить jail'ам, а не фигней страдать.
Дык.Такой "контроль памяти" я и сам могу прикрутить, для совершенно любых процессов и практически в любой OS.Оно, конечно, может даже и работает но свои минусы это имеет (скажем, не мгновенная реакция и т.п. позволяет кратковременно превысить объем позволенной памяти, гарантий что это никому не создаст проблем как вы понимаете ноль).Как готовое решение в операционке ожидаешь увидеть нечто более профессиональное.Или лабухи-системщики настолько нынче деграднули что не способны родить решение уровнем хоть на йоту выше того что приходит в голову дятлу типа меня который линукс и бздю видит без году неделю?
Фиговое решение, мне кажется, во-первых лучше каждый раз не суммировать, а научить ядро вести размер памяти потребляемой процессами в пределах каждого jail'a. Во-вторых, постоянное продергивание и сверение этой суммы с максимально допустимой тоже не пик красоты, я думаю, что лучше это организовать событийно, а не опросом, т.е. превысили -- получили, а не "а не пережрали ли мы? а не пережрали ли мы? а не пережрали ли?......"
Надо сделать как это сделано в LIMIT_AS/LIMIT_RSS - просто проверки в нужных местах. одна сложность в FreeBSD нету связки VMA => PROC. есть только PROC->VMA.
поэтому вопрос о принадлежности VMA какому-то контексту достаточно проблематичен.