GNU/Linux >> Tutoriels Linux >  >> Cent OS

Comprendre la politique de migration du cluster RHV

Dans RHV 4.3.6, il existe trois politiques de migration :Temps d'arrêt minimal , Suspendre la charge de travail si nécessaire et migration post-copie . Cet article les expliquera en détail.

La migration de VM en direct implique principalement le transfert de l'état du processeur, de la mémoire et des E/S de la VM de l'hôte KVM source vers l'hôte KVM de destination. En ce qui concerne "Temps d'arrêt minimal" et "Suspendre la charge de travail si nécessaire", l'hôte KVM source marquera toutes les pages de mémoire de la VM comme RAM sale et transférera l'état de la mémoire de la VM à l'hôte KVM de destination de manière itérative. Le transfert est effectué en direct avec la machine virtuelle toujours en cours d'exécution sur l'hôte source. Lors de la première itération, l'hôte source transfère toute la mémoire de la VM vers la destination, seules les pages modifiées seront transférées lors des itérations suivantes. Le KVM de destination dispose de la dernière version de toutes les pages de mémoire de la VM et la VM redémarre sur l'hôte KVM de destination.

Temps d'arrêt minimal

Une stratégie qui permet à la machine virtuelle de migrer dans des situations typiques. La machine virtuelle ne devrait pas subir de temps d'arrêt significatif. Si la migration de VM ne converge pas pendant une longue période, la migration sera abandonnée. Le mécanisme de hook de l'agent invité est activé.

À partir de Engine-config MigrationPolicies, vous pouvez obtenir :

– Le nombre maximum de migrations en parallèle :2
– La limite maximale de blocage est de 6. S'il est toujours bloqué après le blocage de 6, la migration sera abandonnée. Il a ci-dessous des temps d'arrêt en millisecondes :

  • temps d'arrêt initial (initialItems) :100
  • bloquer 1 itération, définir le temps d'arrêt sur 150
  • bloquer 2 itérations, définir le temps d'arrêt sur 200
  • bloquer 3 itérations, définir le temps d'arrêt sur 300 
  • bloquer 4 itérations, définir le temps d'arrêt sur 400 
  • bloquer 6 itérations, définir le temps d'arrêt sur 500
  • si toujours bloqué, abandonnez
MigrationPolicies-Minimal downtime:
[{"id":{"uuid":"80554327-0569-496b-bdeb-fcbbf52b827b"},"maxMigrations":2,"autoConvergence":true,"migrationCompression":false,"enableGuestEvents":true,"name":"Minimal downtime","description":"A policy that lets the VM migrate in typical situations. The VM should not experience any significant downtime. If the VM migration is not converging for a long time, the migration will be aborted. The guest agent hook mechanism is enabled.","config":{"convergenceItems":[{"stallingLimit":1,"convergenceItem":{"action":"setDowntime","params":["150"]}},{"stallingLimit":2,"convergenceItem":{"action":"setDowntime","params":["200"]}},{"stallingLimit":3,"convergenceItem":{"action":"setDowntime","params":["300"]}},{"stallingLimit":4,"convergenceItem":{"action":"setDowntime","params":["400"]}},{"stallingLimit":6,"convergenceItem":{"action":"setDowntime","params":["500"]}}],"initialItems":[{"action":"setDowntime","params":["100"]}],"lastItems":[{"action":"abort","params":[]}]}}

Suspendre la charge de travail si nécessaire

Une stratégie qui permet à la machine virtuelle de migrer dans la plupart des situations, y compris les machines virtuelles exécutant de lourdes charges de travail. En revanche, la VM peut subir un temps d'arrêt plus important. La migration peut toujours être abandonnée pour les charges de travail extrêmes. Le mécanisme de hook de l'agent invité est activé.

Il est très similaire au "Temps d'indisponibilité minimal", sauf que le nombre maximal de migrations est de 1 et qu'il existe une planification supplémentaire entre le blocage de 6 et l'abandon.

À partir de Engine-config MigrationPolicies, vous pouvez obtenir :

– Le nombre maximum de migrations en parallèle :1
– La limite de blocage maximale est de 6. Si ce temps d'arrêt très élevé de 5 secondes n'aide pas, la migration sera abandonnée.

  • temps d'arrêt initial (initialItems) :100
  • bloquer 1 itération, définir le temps d'arrêt sur 150
  • bloquer 2 itérations, définir le temps d'arrêt sur 200
  • bloquer 3 itérations, définir le temps d'arrêt sur 300 
  • bloquer 4 itérations, définir le temps d'arrêt sur 400 
  • bloquer 6 itérations, définir le temps d'arrêt sur 500
  • si toujours en panne, réglez le temps d'arrêt sur 5 000
  • si toujours bloqué, abandonnez
MigrationPolicies-Suspend workload if needed:
{"id":{"uuid":"80554327-0569-496b-bdeb-fcbbf52b827c"},"maxMigrations":1,"autoConvergence":true,"migrationCompression":true,"enableGuestEvents":true,"name":"Suspend workload if needed","description":"A policy that lets the VM migrate in most situations, including VMs running heavy workloads. On the other hand, the VM may experience a more significant downtime. The migration may still be aborted for extreme workloads. The guest agent hook mechanism is enabled.","config":{"convergenceItems":[{"stallingLimit":1,"convergenceItem":{"action":"setDowntime","params":["150"]}},{"stallingLimit":2,"convergenceItem":{"action":"setDowntime","params":["200"]}},{"stallingLimit":3,"convergenceItem":{"action":"setDowntime","params":["300"]}},{"stallingLimit":4,"convergenceItem":{"action":"setDowntime","params":["400"]}},{"stallingLimit":6,"convergenceItem":{"action":"setDowntime","params":["500"]}}],"initialItems":[{"action":"setDowntime","params":["100"]}],"lastItems":[{"action":"setDowntime","params":["5000"]},{"action":"abort","params":[]}]}}

Migration post-copie

La machine virtuelle ne devrait pas subir de temps d'arrêt significatif. Si la migration de VM ne converge pas pendant une longue période, la migration passera en post-copie. Le mécanisme de hook de l'agent invité est activé.

Dans la migration de VM post-copie, la VM est suspendue dès le début de la migration. Son état CPU est transféré vers l'hôte de destination, tandis que son état mémoire réside toujours sur l'hôte source. La migration de VM ne basculera vers l'exécution sur l'hôte cible qu'une fois que toute la RAM aura été transférée. Par rapport à « Temps d'arrêt minimal » et « Suspendre la charge de travail si nécessaire », la post-copie est plus conviviale pour la bande passante du réseau car la post-copie transfère chaque page de machine virtuelle sur le réseau une seule fois, elle fournit un temps de migration total inférieur à celui des applications intensives en écriture dans « Minimal ». temps d'arrêt » et « Suspendre la charge de travail si nécessaire ». Cependant, s'il y a une interruption du réseau en mode post-copie, il sera également impossible de récupérer, ce qui signifie que la machine virtuelle peut être perdue si une panne de réseau se produit pendant la migration.

À partir de Engine-config MigrationPolicies, vous pouvez obtenir :

– Les migrations max en parallèle :1
– La limite de décrochage max est de 2.

  • temps d'arrêt initial (initialItems) :100
  • bloquer 1 itération, définir le temps d'arrêt sur 150
  • bloquer 2 itérations, définir le temps d'arrêt sur 200
  • si toujours bloqué, abandonnez
MigrationPolicies-Post-copy migration:
{"id":{"uuid":"a7aeedb2-8d66-4e51-bb22-32595027ce71"},"maxMigrations":2,"autoConvergence":true,"migrationCompression":false,"enableGuestEvents":true,"name":"Post-copy migration","description":"The VM should not experience any significant downtime. If the VM migration is not converging for a long time, the migration will be switched to post-copy. The guest agent hook mechanism is enabled.","config":{"convergenceItems":[{"stallingLimit":1,"convergenceItem":{"action":"setDowntime","params":["150"]}},{"stallingLimit":2,"convergenceItem":{"action":"setDowntime","params":["200"]}}],"initialItems":[{"action":"setDowntime","params":["100"]}],"lastItems":[{"action":"postcopy","params":[]},{"action":"abort","params":[]}]}}]


Cent OS
  1. CentOS 8 vers AlmaLinux 8 :un guide de migration étape par étape

  2. Comprendre les fichiers de zone DNS

  3. Comprendre la prison chroot

  4. Comprendre les booléens SELinux

  5. Comprendre le démon DM-multipath (multipathd)

Comprendre les techniques de modélisation de données NoSQL

Comment désactiver SELinux sur CentOS 7

Déploiement continu sans temps d'arrêt

comprendre la sortie de la commande "yum history"

Comprendre le multipath Linux (dm-multipath)

Comprendre la gestion de l'alimentation dans RedHat Virtualization (RHV)