Modifier la quantité de cœurs Ram et CPU dans KVM

13

Comment puis-je modifier la quantité de cœurs Ram et CPU pour une machine virtuelle KVM déjà créée? Merci

Zim3r
la source
4
EN exécution ou avec redémarrage? Ce serait vraiment bien de connaître BTW.
Andrew Smith
+1 - Il serait également utile de préciser si ce serait dans virt-manager (comme référencé dans la question précédente) ou à partir de la ligne de commande.
rnxrx
Merci, je pense qu'il est plus facile de changer cela au redémarrage et oui j'ai créé des machines virtuelles dans virt-manager mais la ligne de commande est ok.
Zim3r
vous ne pouvez pas modifier le nombre de cœurs ou la quantité de RAM sur un noyau en cours d'exécution.
Michael Martinez

Réponses:

13

Vous pouvez éditer sa ligne XMLde commande avec:

virsh edit name_vhost

Ensuite, il vous suffit de rechercher la <memory>balise et de la modifier

Gardez à l'esprit que l'allocation de mémoire est en kilo-octets, donc pour allouer 512 Mo de mémoire, utilisez 512 * 1024 ou 524288.

âme noire
la source
Vraiment merci, puis-je augmenter les cœurs de processeur avec cette méthode?
Zim3r
1
Vous devriez vérifier cela sur semanticlab.net/index.php/… ;)
blacksoul
Est-ce qu'il y a un autre moyen ? en plus de ce qui s'explique sur semanticlab.net
Zim3r
-1 car j'obtiens simplement: "erreur: commande inconnue: nom_vhost". Notez que j'utilise le nom de mon hôte au lieu de cette chaîne littérale. J'aime la réponse d'Ahmed en tout cas, plus complète.
Mike S
@MikeS: Cela aurait dû l'être virsh edit name_vhost. J'ai corrigé la réponse.
pause jusqu'à nouvel ordre.
16

Pour une configuration hors ligne:

Pour augmenter le nombre de CPU:

virsh setvcpus <vm_name> <vcpu_count> --config

Si vous obtenez une erreur indiquant que vous avez dépassé le nombre maximal, procédez d'abord:

virsh setvcpus <vm_name> <vcpu_count> --config --maximum

Répétez ensuite ce qui précède:

virsh setvcpus <vm_name> <vcpu_count> --config

Pour augmenter la taille de la mémoire:

virsh setmaxmem <vm_name> <memsize> --config
virsh setmem <vm_name> <memsize> --config

Pour la configuration en ligne:

Vous pouvez définir le vCPU et la mémoire pendant que la machine virtuelle fonctionne avec --currentau lieu de --config, mais les nouveaux numéros doivent être dans les valeurs maximales déjà définies. Vous ne pouvez pas définir ces nombres maximum pendant que la machine virtuelle est en cours d'exécution. Vous devrez arrêter la VM avec virsh shutdown <vm_name>, utiliser la commande ci-dessus et redémarrer la VM avec virsh start <vm_name>.

Ahmed
la source
7

Vous pouvez modifier les paramètres de la machine virtuelle dans virt-managerou dans cli en modifiant le XML dansvirsh edit VMNAME

Dyasny
la source
1

Pour augmenter la quantité maximale de mémoire pouvant être allouée à la machine virtuelle, vous devez augmenter la limite de mémoire maximale, éteindre la machine virtuelle, augmenter la mémoire allouée, démarrer la machine virtuelle. Il y a un guide étape par étape ici:

http://earlruby.org/2014/05/increase-a-vms-available-memory-with-virsh/

Pour obtenir plus de VCPU, vous devez modifier le fichier XML virsh et redémarrer la machine virtuelle. Il y a un guide étape par étape pour le faire ici:

http://earlruby.org/2014/05/increase-a-vms-vcpu-count-with-virsh/

Earl Ruby
la source