Назад | Перейти на главную страницу

Xenserver: передать параметры во время сборки виртуальной машины

На XenServer есть ли способ читать метаданные виртуальной машины (настраиваемые поля, теги, имя виртуальной машины) изнутри виртуальной машины с помощью Linux (CentOS 5.8)?

В основном то, что я хочу сделать, это:

  1. Создать новую виртуальную машину с помощью

    xe vm-install template = MYTEMPLATE new-name-label = MYVM

  2. Чтение метаданных для настройки имени хоста виртуальной машины, IP-адреса и т. Д.

В EC2 вы можете передать файл пользовательских данных, содержащий сценарий, при запуске новой виртуальной машины. Как только виртуальная машина появляется, сценарий выполняется. Подобно этому:

ec2-run-instances --key KEYPAIR --user-data-file CONFIGURE-SCRIPT ami-bf5eb9d6

Я могу передать некоторую информацию виртуальной машине, используя «Параметры загрузки ОС» внутри «ОПЦИИ ЗАГРУЗКИ»

# cat /proc/cmdline 
ro root=/dev/vg0/root console=xvc0  CUSTOMTEXT

Мне это не кажется очень элегантным и может мешать некоторым реальным параметрам загрузки Linux. Другая проблема заключается в том, что CUSTOMTEXT будет продолжать передаваться виртуальной машине при каждой загрузке.

Мне просто нужен способ передать несколько параметров один раз во время создания виртуальной машины и запустить сценарий, который будет использовать эти параметры при первой загрузке.

Любые идеи ?

ура

Густаво

После небольшого поиска в Google ответ на эту проблему - XenStore (http://wiki.xen.org/wiki/XenStore)

Чтобы получить имя виртуальной машины (domU) из Linux, запустите:

xenstore-ls /local/domain/`xenstore-read domid`

Дополнительные ссылки с полезными решениями:

http://forums.citrix.com/thread.jspa?threadID=264531

Как найти имя dom0 из размещенного domU

http://old-list-archives.xen.org/archives/html/xen-users/2010-11/msg00179.html

https://wiki.openstack.org/wiki/GuestAgentXenStoreCommunication