Согласно моему ответу на этот вопрос-ответ под заголовком: [11478] Может ли VirtualBox работать под Xen Dom0? [11479] ответ здесь - нет, вы не можете запускать VM-технологии, подобные этой, поверх XEN или Proxmox/OpenVZ. Скорее всего, вы можете запускать OpenVZ внутри ВМ внутри VirtualBox.
Но я предполагаю, что вы задаете свой вопрос в основном вокруг желания разрешить Jenkins доступ к большему количеству архитектур.
KVM
Что мы делаем там, где я работаю, так это настраиваем несколько KVM экземпляров Linux (не важно какой дистрибутив) и вдобавок к этому запускаем много ВМ. Вы можете сделать то же самое. Это было бы идентично использованию Vagrant + VirtualBox, так что я не уверен, поможет ли это.
* 1 gigabyte is 1,000,000,000 bytes.
Альтернатива?
Если вы действительно не хотите запускать это на физическом аппаратном обеспечении, то 2 технологии, которые могут позволить вам сделать это, это [11480]Docker[11481] и [11482]LXC[11483]. Они похожи на Proxmox и OpenVZ, но позволяют гораздо более детальный контроль. Вы все еще не будете запускать VirtualBox и внутри них, но, возможно, Вы сможете представить себе решение, в котором Вы могли бы использовать эти 2 технологии вместо них.
excerpt LXC
LXC - это интерфейс пользовательского пространства для функций локализации ядра Linux. Благодаря мощному API и простым инструментам, он позволяет пользователям Linux легко создавать и управлять контейнерами системы или приложений.
Features
Current LXC использует следующие возможности ядра, чтобы содержать процессы:
Контрольные группы (cgroups)
Таким образом, LXC часто рассматривается как нечто среднее между chroot на стероидах и полнофункциональной виртуальной машиной. Целью LXC является создание среды, максимально приближенной к стандартной установке Linux, но без необходимости в отдельном ядре.
excerpt Docker
Docker - это движок с открытым исходным кодом, который автоматизирует развертывание любого приложения в виде легкого, портативного, самодостаточного контейнера, который будет работать практически в любом месте.
Контейнеры Docker могут инкапсулировать любую полезную нагрузку, и будут последовательно работать практически на любом сервере и между ним. Тот же самый контейнер, который разработчик строит и тестирует на ноутбуке, будет работать в масштабе, на производстве*, на виртуальных машинах, пустых серверах, кластерах OpenStack, публичных экземплярах или комбинациях вышеперечисленного.
Часто используемые примеры использования Docker включают:
Автоматизация упаковки и развертывания приложений
du -sm */ | sort -k1,1n | awk '$1 > 500 { sub(/$/, "M", $1); print $0 }'
Создание легковесных частных PAAS сред
Автоматизированное тестирование и непрерывная интеграция/развертывание
выписка
Vagabond - это инструмент, интегрированный с Chef для создания локальных узлов легко и, что самое главное, быстро. Он использует Linux-контейнеры вместо переполненных VM, что означает, что все происходит быстрее. Намного быстрее.
Vagabond собирается для Chef. Инструментарий внутри Vagabond ориентирован на Chef. После того, как первоначальная разработка замедлится, специфика Chef будет втянута в плагин.
Также согласно сайту, он утверждает, что имеет поддержку Kitchen 1.0.
Vagabond предоставляет тестовую поддержку kitchen 1.0. Он будет сопоставлять коробки, определенные внутри платформ, с доступными шаблонами платформ (в меру своих возможностей). Нет необходимости раскручивать бродячие ВМ или использовать другой инструмент. Направьте бродягу на кулинарную книгу, и пусть она обрабатывает детали.
Я делаю ставку на программу, которую вы пытаетесь запустить, требуется более новая версия GLIBC, чем тока, установленная в вашей системе. К сожалению, потому что это Glibc, нет способа получить более новую версию, не имея доступа к корню и не затрагивая всю систему. Проверьте вышеупомянутое место программы, убедитесь, что он поддерживается на RHEL 6.
Итак, вам нужно знать две вещи:
Примечание. Я менее знаком с yum, чем с apt -get
Возможно, нужная вам версия библиотеки недоступна для вашего дистрибутива. В этом случае получить библиотеку будет сложнее, и вам может потребоваться собрать ее из исходного кода.
Если он доступен...
Вы видели инструкции, указывающие на apt -get. Это Debian штука (, включая Ubuntu и Mint ). Yum — аналогичный инструмент для родственников Redhat (, включая Fedora и Centos ). Yum используется для установки «RPM», где apt -get устанавливает DPKG.
Начните с:
Вы можете поместить библиотеку в любой каталог, который вам нравится, а затем использовать переменную окруженияLD_LIBRARY_PATH
для ссылки на этот каталог.
Тут загвоздка! Насколько мне известно, нет способа добавить к пути к библиотеке по умолчанию, можно только полностью заменить его. В отличие от PATH
, LD_LIBRARY_PATH
не устанавливается по умолчанию. Поэтому, чтобы установить его, вам понадобится каждый каталог библиотеки, который вам нужен:
export LD_LIBRARY_PATH=/home/me/my-libs:/lib:/usr/lib:... and the rest
Если вы не знаете, какие каталоги lib вам нужны, вы можете проанализировать свою программу с помощью ldd
, прежде чем устанавливать переменную среды. Например:
ldd /bin/bash
linux-vdso.so.1 (0x00007fff55394000)
libtinfo.so.6 => /lib/x86_64-linux-gnu/libtinfo.so.6 (0x00007fb13c31f000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fb13c319000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fb13c12f000)
/lib64/ld-linux-x86-64.so.2 (0x00007fb13c480000)
Показывает, что bash должен быть включен /lib:/lib64
.