Я работаю с хостом Xen, который кем-то установлен XenServer от Citrix. Он уже установил много гостей CentOS 5.2 на хост. Интересно, как проверить этих гостей, чтобы узнать, что они типа PV или HVM?
Я работаю с хостом Xen, который кем-то установлен XenServer от Citrix. Он уже установил много гостей CentOS 5.2 на хост. Интересно, как проверить этих гостей, чтобы узнать, что они типа PV или HVM?
Ответы:
Небольшое замечание: на самом деле есть три режима, а не два, когда дело доходит до используемых драйверов:
Для гостевого / DomU Xen вы можете сделать очень простой uname
и lsmod
с помощью grep перечислить используемые модули:
uname -a
lsmod | grep xen
Если в uname -a
списке указано ядро со строкой «xen», то у вас есть модифицированное ядро, и, скорее всего, это гость PV, и вы увидите вывод lsmod
команды для его подтверждения. Если у вас есть вывод от grep, lsmod
но нет признаков модифицированного ядра, то вы PV-HVM. Без каких-либо признаков, это прямой HVM.
Примечание: Как правило, вы можете сделать больше с виртуальными машинами, на которых установлены инструменты PV, что может быть довольно очевидным указателем, однако вы можете притворяться, что инструменты PV позволяют приостанавливать / возобновлять и т. Д., Поэтому вы не можете полагаться на это в целом. ,
Существует лучшая альтернатива анализу uname -a
выходных данных из гостевого домена. Лучше проверить профиль виртуальной машины в самом гипервизоре.
С помощью текущего стека инструментов XenLight для автономных установок Xen этого можно достичь, выполнив xl list --long
команду:
# xl list
Name ID Mem VCPUs State Time(s)
My-Virtual-Machine 42 1024 1 -b---- 9001.0
# xl list -l 42
or
# xl list --long My-Virtual-Machine
[
{
"domid": 6,
"config": {
"c_info": {
"name": "My-Virtual-Machine",
"uuid": "12345678-abcd-1234-abcd-12345678abcd",
"type": "pv",
...
},
...
}
}
]
Обратите внимание на type
элемент в c_info
разделе - если он равен "pv"
, это означает паравиртуальный.
В более старой автономной установке Xen с использованием традиционного xm
набора инструментов управления все было примерно так:
# xm list --long My-Virtual-Machine
(domain
(domid 42)
(name My-Virtual-Machine)
(image
(linux
(kernel ...)
...
)
)
...
)
Обратите внимание на (linux)
элемент в (image)
разделе - он соответствует builder
директиве конфигурации, где «linux» означает «паравиртуальный» (а не собственно ядро), а «hvm» означает «полная виртуализация».
С XenServer или XCP прибора можно использовать xe vm-list params=all
команду или что - то так.
Может быть (или был) какой-то способ получить эту информацию из пакета инструментов libvirt , но мне он неизвестен.
Обратите внимание, что, начиная с Xen 4.5, паравиртуальный режим на x86-64 имеет два вида:
Чтобы проверить, работает ли хост с включенным PVH, можно использовать xl info
(хотя этот метод не лучше проверки grub.cfg ):
# xl info | grep xen_commandline
xen_commandline : pvh=1 loglvl=all guest_loglvl=all console=com1,vga
^^^^^
Чтобы проверить, работает ли конкретный гость в режиме PVH ( pvh=1
в файле конфигурации), снова обратитесь к xl list -l
:
"c_info":{
"name": "My-Virtual-Machine",
"type": "pv",
"pvh": "True",
...
},
Однако, с точки зрения администрации, ПВХ не должен отличаться от ПВ.
xm
команды, но xl
которая имеет другой вывод. Любая идея, как получить информацию о 4.4.1 XEN. Спасибо.
xl
, но при этом не упоминают xen в имени ядра или модулях ядра.