Что делать если vzagent занимает много памяти на сервере с Virtuozzo Containers? Иногда процессы vzagent могут съедать до нескольких гигабайт памяти. Виной тому утечка, или это их нормальное состояние неизвестно, но использование памяти всегда растет постепенно и неумолимо.
Исправить это можно выполнив команду vzagent_ctl restart. Иногда процесс агента выключается слишком долго, в таком случае нужно сначала сделать stop и через несколько секунд start. После рестарта vzagent начинает использовать снова нормальное количество памяти. На сервере с 50-60 вдс рестарта хватает минимум на неделю-другую, пока vzagent снова не начинает отъедать пол-сервера.
Внимание: после рестарта агента в сервисном контейнере VEID #1 начинают выполнятся какие-то служебные процессы, около 15-20 минут, при этом обычно немного поднимается лоад, поэтому рестарт vzagent-а желательно проводить когда нода не сильно загружена.
В стандартных темплейтах для Virtuozzo Containers отсутствуют некоторые полезные программы, например Midnight Commander. Однако есть возможность сделать готовый темплейт для установки любого софта из шаблона. Конечно, установить MC можно и проще, я привожу его в качестве примера, сделать можно шаблон любого пакета программ.
Итак, прежде всего необходимо установить на ноду vzpkgtools-build, взять его можно с установочного iso-образа Virtuozzo.
Далее, создаём мета-файл mc-fc12.meta со следующим содержанием:
%osname
fedora-core
%osver
12
%osarch
x86
%appname
mc
%packages
mc
%repositories
http://mirrors.kernel.org/fedora/releases/12/Fedora/i386/os/
%description
mc for FC12
%version
1.0
Рассмотрим более подробнее некоторые теги meta-файла:
%osname — имя ОС, например centos, fedora-core, debian.
%osver — версия ОС, например 12 для fedora, 5.0 для Debian.
%osarch — архитектура: x86, x86_64.
%appname — название шаблона, не путать с названием самих пакетов, шаблон может называться как угодно, что иногда может помочь делать некоторые хаки :)
%packages — пакеты, входящие в темплейт, в данном случае он один, может быть и больше.
%repositories — репозитории, из которых будет установлен пакет.
%description — описание, пишем тут что угодно.
%version — очевидно, версия шаблона.
Следующий шаг — создание rpm на основе meta-файла:
vzmktmpl mc-fc12.meta
И наконец, установка темплейта на ноду:
vzpkg install template mc-fedora-core-12-x86-ez-1.0-1.noarch.rpm
Теперь в списке в панели у нас есть шаблон, который может быть например автоматически установлен через API биллингом при создании VDS.
Примечания: