Je travaille avec un hôte Xen sur lequel XenServer de Citrix est installé par quelqu'un. Il a déjà installé un grand nombre d'invités CentOS 5.2 sur l'hôte. Je me demande comment vérifier ces invités pour savoir s'ils sont de type PV ou HVM?
Je travaille avec un hôte Xen sur lequel XenServer de Citrix est installé par quelqu'un. Il a déjà installé un grand nombre d'invités CentOS 5.2 sur l'hôte. Je me demande comment vérifier ces invités pour savoir s'ils sont de type PV ou HVM?
Réponses:
Une note rapide, il existe en fait 3 modes, pas deux en ce qui concerne les pilotes utilisés:
Pour un invité / DomU Xen, vous pouvez faire un très basique uname
et lsmod
avec un grep pour lister les modules utilisés:
uname -a
lsmod | grep xen
Si uname -a
répertorie un noyau contenant la chaîne "xen", alors vous avez un noyau modifié et il s'agit probablement d'un invité PV, et vous verrez la sortie de la lsmod
commande pour le confirmer. Si vous avez une sortie de grep sur lsmod
mais aucun signe d'un noyau modifié, vous êtes PV-HVM. Sans aucun signe non plus, c'est un HVM droit.
Remarque: En général, vous pouvez faire plus avec les machines virtuelles sur lesquelles les outils PV sont installés, ce qui peut être un pointeur assez évident, mais vous pouvez simuler la présence des outils PV pour autoriser la suspension / la reprise, etc., vous ne pouvez donc pas vous fier à cela en général .
Il existe une meilleure alternative à l'analyse de la uname -a
sortie de l'intérieur du domaine invité. Vous devriez plutôt vérifier le profil VM dans l'hyperviseur lui-même.
Avec la boîte à outils XenLight actuelle pour les installations Xen autonomes, cela pourrait être réalisé en exécutant la xl list --long
commande:
# 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",
...
},
...
}
}
]
Notez l' type
élément dans la c_info
section - s'il est égal "pv"
, cela signifie paravirtuel.
Avec une ancienne installation autonome de Xen utilisant une xm
pile d'outils de gestion traditionnelle , les choses étaient similaires:
# xm list --long My-Virtual-Machine
(domain
(domid 42)
(name My-Virtual-Machine)
(image
(linux
(kernel ...)
...
)
)
...
)
Notez l' (linux)
élément dans la (image)
section - il correspond à la builder
directive de configuration, où «linux» signifie «paravirtuel» (plutôt que le noyau réel), tandis que «hvm» signifie «virtualisation complète».
Avec XenServer ou XCP , vous pouvez utiliser la xe vm-list params=all
commande ou quelque chose de similaire.
Il peut y avoir (ou il y a eu) un moyen d'obtenir ces informations de la bibliothèque d'outils libvirt , mais à ma connaissance.
Notez que, à partir de Xen 4.5, le mode paravirtuel sur x86-64 a deux variantes:
Pour vérifier si l'hôte fonctionne avec PVH activé, on peut utiliser xl info
(bien que cette méthode ne soit pas meilleure que l'inspection de grub.cfg ):
# xl info | grep xen_commandline
xen_commandline : pvh=1 loglvl=all guest_loglvl=all console=com1,vga
^^^^^
Pour vérifier si un invité particulier s'exécute en mode PVH ( pvh=1
dans le fichier de configuration), consultez à nouveau xl list -l
:
"c_info":{
"name": "My-Virtual-Machine",
"type": "pv",
"pvh": "True",
...
},
Cependant, du point de vue de l'administration, le PVH ne devrait pas être différent du PV.
xm
commande mais xl
qui a une sortie différente. Toute idée comment obtenir les informations sur 4.4.1 XEN. Merci.
xl
, et pourtant je n'ai aucune mention de xen dans le nom du noyau ou les modules du noyau.