BB-Admin - Администрирование UNIX-серверов

Блог BB-Admin

RSS Записей

Администрирование UNIX-серверов

Архив Категории ‘Virtuozzo \ OpenVZ’

vzagent занимает много памяти

мая 6, 2010 | Комментарии отключены

Что делать если vzagent занимает много памяти на сервере с Virtuozzo Containers? Иногда процессы vzagent могут съедать до нескольких гигабайт памяти. Виной тому утечка, или это их нормальное состояние неизвестно, но использование памяти всегда растет постепенно и неумолимо.

Исправить это можно выполнив команду vzagent_ctl restart. Иногда процесс агента выключается слишком долго, в таком случае нужно сначала сделать stop и через несколько секунд start. После рестарта vzagent начинает использовать снова нормальное количество памяти. На сервере с 50-60 вдс рестарта хватает минимум на неделю-другую, пока vzagent снова не начинает отъедать пол-сервера.

Внимание: после рестарта агента в сервисном контейнере VEID #1 начинают выполнятся какие-то служебные процессы, около 15-20 минут, при этом обычно немного поднимается лоад, поэтому рестарт vzagent-а желательно проводить когда нода не сильно загружена.

Релиз Xen 4.0 – передел рынка виртуализации?

апреля 8, 2010 | Комментарии отключены

Вышел релиз Xen 4.0, новая ветка гипервизора базируется на ядре 2.6.31 в отличии от старых версий 3.x, которые идут на 2.6.18.
Кроме нового ядра наиболее значимыми новшествами являются:

  • синхронизация и создание снапшотов виртуальных машин на нескольких нодах на лету;
  • использование shared страниц памяти между несколькими контейнерами, когда одинаковое приложение на нескольких вдс находится в памяти только в одном экземпляре, что позволяет значительно экономить память внутри гостевой ОС;
  • возможность изменения размера дисков на лету;
  • а также множественные улучшения, добавления новых драйверов и др.

С данными улучшениями недостатки Xen по сравнению с OpenVZ и Virtuozzo исчезли, а преимущества Xen, такие как кастомизируемое ядро и любая гостевая ОС, VZ-продукты видимо не получат никогда из-за особенностей виртуализации. Напомню, что openvz и virtuozzo может виртуализировать только сходные ОС, на Linux-ноде только Linux, тоже самое с Windows, а FreeBSD не поддерживается вообще.

Так что, если новый Xen действительно так хорош, как описывается в changelog-е, то на рынке виртуализации может наступить передел. Раньше многие выбирали продукты VZ-семейства из-за возможностей изменения параметров контейнера на лету и совместно используемой памяти и дискового пространства для экономии ресурсов, однако платили за это малым выбором ОС,  неизменяемым ядром, отсутствием свопа, и некоторыми другими проблемами, особенно в бесплатном варианте – OpenVZ. Теперь же Xen явно догнал даже коммерческую версию Virtuzzo Containers которая стоит бешеных денег.

А если результат одинаковый, зачем платить больше? :)

Yum update на Virtuozzo ноде.

января 20, 2010 | Комментарии отключены

На серверах где установлена система виртуализации Virtuozzo апгрейд ядра происходит через специальную утилиту vzup2date, т.к. используется не стандартное из дистрибутива, а модифицированное ядро vzkernel. Однако остальной системный софт обновлять нужно всё же средствами ОС. Для того, чтобы при апдейте ядро vzkernel не затёрлось стандартным, в /etc/yum/swsoft-excludes добавлены исключения, которые нельзя апгрейдить. Помимо ядра там исключены такие пакеты, как tar, rsync, dpkg и др., Virtuzzo использует их модифицированные версии для архивирования, миграции и других действий.

В моём случае на ноде было установлено 32-битное ядро vzkernel-PAE для возможности использовать всю доступную память без переустановки ноды на 64-битную версию. Кроме того лицензионная политика swsoft различает цены на лицензии для 32-битных и 64-битных систем.

При подоспевших апдейтах Centos я с удивлением обнаружил, что yum update всё равно пытается установить kernel-PAE, несмотря на исключения.   И только после добавления этого пакета в swsoft-excludes апгрейд прошёл без сюрпризов.

Именно поэтому даже текущие апгрейды системы на важных серверах нельзя доверять автоматике, а нужно обязательно смотреть самому что оно там хочет проапгрейдить.  Конечно, ничего фатального от установки стандартного kernel-PAE бы не произошло мгновенно, но если не заметить это до ребута, можно внезапно устроить лишний незапланированный даунтайм для клиентов.

Создание темплейта для Virtuozzo Containers

декабря 27, 2009 | Комментарии отключены

В стандартных темплейтах для 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.

Примечания:

  • данный мануал рассчитан на Virtuozzo Containers 4.0;
  • до создания темплейта необходимо установить шаблон самой операционной системы, для которой он предназначен;
  • если у вас несколько нод, вы можете создавать темплейты на одной, а на другие только копировать готовые rpm-файлы.
© 2009-2011 BB-Admin.