Existe-t-il un moyen de hiérarchiser mes VM en fonction de l'utilisation de leurs ressources (vCPU, mémoire, etc.) dans un environnement virtualisé basé sur kvm/qemu afin de pouvoir allouer plus de cpu/mémoire à certaines VM qui en ont le plus besoin par rapport à d'autres VM moins prioritaires.
Disons que dans mon environnement en nuage, j'ai principalement des hôtes Ubuntu 16 OS qui hébergent quelques VM invitées de développement et de production. Dans certains cas, lorsqu'il y a une pénurie de ressources dans l'hôte et que j'ai besoin que les VM de production reçoivent plus de ressources que les VM de développement afin qu'elles aient une meilleure priorité que les VM de développement. Je veux donc donner plus de vcpu ou de mémoire aux VM prioritaires que les autres, ce qui devrait être fait au niveau de l'hôte ou de la machine hôte devrait décider de l'allocation des ressources dans de tels cas. L'hôte devrait avoir la décision d'augmenter ou de diminuer la priorité des différents types de VMs - qui sont prod ou development.
J'ai essayé les options de la ligne de commande virsh mais pour modifier le vcpucount, la VM doit être redémarrée, ce qui n'est pas dans mes possibilités actuelles. linux-kvm-comment-ajouter-remove-vcpu-guest-on-fly.html/
J'essaie avec la commande nice/renice de linux d'augmenter ou de diminuer la valeur de nice, qui à son tour modifie la priorité du processus de l'hyperviseur (comme qemu-system-x86) pour la VM - mais je ne suis pas sûr que cela fonctionnera vraiment ou non dans des cas réels puisque nice/renice est juste une indication pour l'ordonnanceur du noyau, pas nécessairement une action qui peut être ignorée par l'ordonnanceur lui-même.
Ma question est similaire à celle postée ici Comprendre l'algorithme d'ordonnancement des processeurs KVM
Veuillez me faire savoir s'il existe un utilitaire de ligne de commande linux ou un outil disponible pour obtenir le résultat souhaité.
Merci pour vos réponses et vos conseils.
meilleures salutations, Sanjay