[SYS] Modification des ressources à chaud de VM Xen
|
03-11-2014, 11h50
(Modification du message : 03-11-2014, 11h58 par Junky.)
Message : #1
|
|
Junky
Snorky Master Messages : 228 Sujets : 35 Points: 204 Inscription : Mar 2013 |
[SYS] Modification des ressources à chaud de VM Xen
Bonjour,
Je vais vous expliquer dans ce tout petit topic (Oui nous sommes lundi matin et j'ai pas non plus envie d'écrire un livre ) comment modifier à chaud les ressources d'une VM sous Xen. Il se peut certaines fois que sur un instant T votre machine demande plus de ressources (CPU, RAM, Espace Disque etc...) Il faut pourvoir réagir assez rapidement. Un DD plein entrainera de gros problèmes par exemple ou un manque de CPU/RAM pourra faire forcer/lagguer votre VM. Heureusement l'outil 'xl' existe. Il est bien entendu nécessaire de réaliser les commandes qui vont suivre en 'root'. En comme toujours on fait TRES attention et on relit bien ses commandes avant d'exercer une pression sur la touche ENTER. Je garde mon vocabulaire habituel cad: dom0 => Physique domU => VM Rajouter/Enlever de la RAM: Il est possible de rajouter et/ou d'enlever de la mémoire. Code : xl mem-set dmoU SIZE{G,M} Rien de compliquer n'est-ce pas. Il faut mettre la taille de la mémoire voulu. Cad si un domU possède 5G de RAM et que vous désirez en avoir 10G, il faudra faire: Code : xl mem-set The_Game 10G Tout simplement. Un 'xl list' vous permettra de voir la mémoire de vos domU. Limitations: Sur les noyaux squeeze (2.6.32) il n'est pas possible d'augmenter la mémoire au-delà de ce que la VM avait au boot. Sur les noyaux wheezy (3.2) il est possible d'augmenter la mémoire jusqu'au paramètre maxmem spécifié dans la configuration Xen. Attention, environ 2% de "maxmem" sera utilisé par la noyau pour les tables de pages, ne pas spécifier un "maxmem" trop grand par rapport à la mémoire disponible. Il n'y a pas de minimum pour diminuer la quantité de mémoire, mais la VM peut crasher si on tente de lui enlever toute la mémoire. Ajouter de la mémoire est instantané, en retirer peut prendre un peu de temps (le noyau du DOMU reprend la mémoire progressivement, mécanisme appelé "baloon"). Ajouter un/des CPU(s): Ajouter des CPUs à chaud se fait en deux étapes : Sur le DOM0, utiliser : Code : xl vcpu-set domU NBCPU Sur le DOMU, pour chaque CPU ajouté, trouver son id (les ids commencent à 0, si on passe de 2 à 4 CPUs, ce sont les CPUs d'id 2 et 3 qu'on ajoute), puis lancer : Code : echo 1 > /sys/devices/system/cpu/cpu<id>/online Enlever des CPUs: Supprimer des CPUs à chaud se fait tout simplement avec un : Code : xl vcpu-set <VM> <NCPUS> Limitations: Il n'est pas possible de mettre 0 CPU à une VM (sans blague !). Il n'est pas possible de mettre plus de CPUs que le paramètre maxvcpus du fichier de configuration de la VM. Extension/Diminution disque: Extension: Pour augmenter la taille d'une partition sur une VM, il faut : Sur le DOM0, trouver le logical volume associé, vérifier la disponibilité d'espace disque sur le(s) physical volume (voir RAIDetLVM). Puis l'agrandir avec un : Code : lvextend /dev/<vg>/<lv> -L +<size> Sur le DOMU, il faut lancer dans un screen (en ajustant éventuellement xvda2 vers le nom de la partition pour la VM) : Code : resize2fs /dev/xvda2 Diminution: Il est théoriquement possible de diminuer la taille en faisant l'opération inverse : resize2fs (avec une taille) puis un lvreduce. Cette opération est cependant très fortement déconseillée car le risque de perte de données en cas de fausse manipulation est très élevé. Limitations: La modification de taille d'une partition à chaud ne fonctionne qu'avec le noyau 3.2 des Wheezy. L'opération resize2fs peut prendre du temps, et impactera négativement les performances disques pendant son déroulement, à prendre en compte lors de la planification de l'opération. Et ne pas oublier de la lancer dans un screen. Voilà finalement rien de super compliqué n'est-ce pas? N'hésitez pas a poser des questions. Si vous en avez ofc. Junky, Pour la sécurité, sous linux, le principal soucis est l'interface chaise/clavier
|
|
05-11-2014, 12h18
(Modification du message : 05-11-2014, 14h06 par otherflow.)
Message : #2
|
|
otherflow
Newbie Messages : 20 Sujets : 2 Points: 18 Inscription : Aug 2014 |
RE: [SYS] Modification des ressources à chaud de VM Xen
Sympa !
C'est pratique de connaître comment allouer des ressources à chaud à des VMs dans le besoin Merci. otherflow |
|
05-11-2014, 12h26
Message : #3
|
|
Junky
Snorky Master Messages : 228 Sujets : 35 Points: 204 Inscription : Mar 2013 |
RE: [SYS] Modification des ressources à chaud de VM Xen
En effet. Ca peut sauver sur un instant T (grosse charge machine) ou alors si ton client demande plus d'espaces ou autre, ca permet de le faire en mode "indolore". Il ne verra pas le changement car aucun restart de machine est nécessaire.
Junky, Pour la sécurité, sous linux, le principal soucis est l'interface chaise/clavier
|
|
13-11-2014, 19h56
Message : #4
|
|
Banni Messages : 5 Sujets : 0 Points: 0 Inscription : Nov 2014 |
RE: [SYS] Modification des ressources à chaud de VM Xen
décidément tu as beaucoup de compétences sous xen
|
|
13-11-2014, 20h36
Message : #5
|
|
Junky
Snorky Master Messages : 228 Sujets : 35 Points: 204 Inscription : Mar 2013 |
RE: [SYS] Modification des ressources à chaud de VM Xen
On peut dire que c'est 80% de mon taf.
Merci (pour les deux posts ). Junky, Pour la sécurité, sous linux, le principal soucis est l'interface chaise/clavier
|
|
14-11-2014, 10h34
Message : #6
|
|
Banni Messages : 5 Sujets : 0 Points: 0 Inscription : Nov 2014 |
RE: [SYS] Modification des ressources à chaud de VM Xen
ah oui, tout s'explique !
|
|
« Sujet précédent | Sujet suivant »
|
Sujets apparemment similaires… | |||||
Sujet | Auteur | Réponses | Affichages | Dernier message | |
Clonage P2V à chaud Linux -> .vdi | thxer | 0 | 793 |
22-12-2014, 10h54 Dernier message: thxer |
|
[LVM] resize DD d'une VM a chaud | Junky | 3 | 1,456 |
27-05-2014, 18h42 Dernier message: gruik |
|
[Xen] Cloner vm a chaud. | Junky | 4 | 1,807 |
18-01-2014, 14h51 Dernier message: 0pc0deFR |
Utilisateur(s) parcourant ce sujet : 6 visiteur(s)