Project

General

Profile

Tâche #31706

Scénario #32042: Validation des scénario 'cadoles' restants sur "14-16"

Valider le scénario Sauvegarde/restauration des Images et VM Hapy 2.8.0+

Added by Joël Cuissinat over 3 years ago. Updated over 2 years ago.

Status:
Fermé
Priority:
Normal
Assigned To:
Start date:
04/26/2021
Due date:
04/26/2021
% Done:

100%

Remaining (hours):
0.0

Related issues

Related to EOLE OpenNebula - Scénario #31591: Sauvegarde/restauration des Images et VM Hapy 2.8.0+ Terminé (Sprint) 02/01/2021 02/19/2021
Related to EOLE OpenNebula - Scénario #32861: hapy automatisation: dependance manquante 'ruby-rsync' Terminé (Sprint) 06/28/2021 08/27/2021

History

#1 Updated by Daniel Dehennin about 3 years ago

  • Status changed from Nouveau to En cours

#2 Updated by Daniel Dehennin about 3 years ago

  • Assigned To set to Daniel Dehennin

#3 Updated by Daniel Dehennin about 3 years ago

Le script de sauvegarde ne semble pas fonctionner correctement :

root@grichka:~# onebck 
Traceback (most recent call last):
    1: from /usr/bin/onebck:30:in `<main>'
/usr/bin/onebck:30:in `require_relative': cannot load such file -- /usr/lib/one/backup (LoadError)

#4 Updated by Daniel Dehennin about 3 years ago

Je viens de faire un test qui est allé jusqu’au bout :

root@grichka:~# time onebck 
/mnt/sauvegardes
Saving unused (if needed) and non persistent images

real    118m43,675s
user    8m13,074s
sys    5m7,580s

Lors de la sauvegarde d’une VM, celle-ci n’est pas suspendue/arrêtée, j’ai fait un autre test avec qemu-guest-agent et c’est la même chose.

Il y a donc toujours des écritures sur les disques pendant la sauvegarde ce qui peut engendrer des sauvegardes invalides (à minima un fsck).

/mnt/sauvegardes/
└── [4.0K]  one
    └── [4.0K]  datastores
        ├── [4.0K]  0
        ├── [4.0K]  1
        ├── [4.0K]  100
        │   ├── [4.0K]  8
        │   │   ├── [1.9K]  deployment.0
        │   │   └── [  60]  disk.0 -> /var/lib/one/datastores/101/ce93f817cbbacfb33901156a39ea2fbd
        │   └── [4.0K]  9
        │       ├── [1.8K]  deployment.0
        │       ├── [  60]  disk.0 -> /var/lib/one/datastores/101/79d42822d54e341ecd542f60e511f8e9
        │       └── [  60]  disk.1 -> /var/lib/one/datastores/101/0d8067e2788695d02d139670cf03f8b0
        ├── [4.0K]  101
        │   ├── [ 63G]  0d8067e2788695d02d139670cf03f8b0
        │   ├── [193K]  1cc415bbd8d5faa18fec1aebd76e1ace
        │   ├── [ 22G]  79d42822d54e341ecd542f60e511f8e9
        │   ├── [4.3G]  9aaae78209c0ada7d1226e04603c2484
        │   └── [7.8G]  ce93f817cbbacfb33901156a39ea2fbd
        └── [4.0K]  102
            ├── [1.5G]  4701303683d94e4f7abaafd05de3e814
            └── [1.4G]  850babac1e90781d39003b6d19ba5e7f

9 directories, 12 files
/var/lib/one/datastores/
├── [4.0K]  0
├── [4.0K]  1
├── [4.0K]  100
│   ├── [4.0K]  8
│   │   ├── [1.9K]  deployment.0
│   │   └── [  60]  disk.0 -> /var/lib/one/datastores/101/ce93f817cbbacfb33901156a39ea2fbd
│   └── [4.0K]  9
│       ├── [1.8K]  deployment.0
│       ├── [  60]  disk.0 -> /var/lib/one/datastores/101/79d42822d54e341ecd542f60e511f8e9
│       └── [  60]  disk.1 -> /var/lib/one/datastores/101/0d8067e2788695d02d139670cf03f8b0
├── [4.0K]  101
│   ├── [ 63G]  0d8067e2788695d02d139670cf03f8b0
│   ├── [193K]  1cc415bbd8d5faa18fec1aebd76e1ace
│   ├── [ 22G]  79d42822d54e341ecd542f60e511f8e9
│   ├── [4.3G]  9aaae78209c0ada7d1226e04603c2484
│   └── [7.8G]  ce93f817cbbacfb33901156a39ea2fbd
├── [4.0K]  102
│   ├── [1.5G]  4701303683d94e4f7abaafd05de3e814
│   └── [1.4G]  850babac1e90781d39003b6d19ba5e7f
└── [4.0K]  2

8 directories, 12 files

La sauvegarde du Scribe avec 2 disques (40Go et 500Go)

  • disque 0 : 22Go réels sur 40Go
    • Sauvegarde du disque prend presque 20 minutes (temps entre HOTPLUS_SAVEAS et RUNNING)
      ==> /var/log/one/9.log <==
      Mon Mar 15 13:28:01 2021 [Z0][VM][I]: New LCM state is HOTPLUG_SAVEAS
      Mon Mar 15 13:47:40 2021 [Z0][VM][I]: New LCM state is RUNNING
      
    • La copie du disque dans /mnt/sauvegardes/ et la vérification de sa somme de contrôle prend environ 7 minutes (temps entre le RUNNING et le HOTPLUG_SAVEAS suivant)
      ==> /var/log/one/9.log <==
      Mon Mar 15 13:28:01 2021 [Z0][VM][I]: New LCM state is HOTPLUG_SAVEAS
      Mon Mar 15 13:47:40 2021 [Z0][VM][I]: New LCM state is RUNNING
      Mon Mar 15 13:54:15 2021 [Z0][VM][I]: New LCM state is HOTPLUG_SAVEAS
      
  • disque 1: 63Go réels sur 500Go
    • Sauvegarde du disque prend plus d’une heure (temps entre HOTPLUS_SAVEAS et RUNNING)
      ==> /var/log/one/9.log <==
      Mon Mar 15 13:54:15 2021 [Z0][VM][I]: New LCM state is HOTPLUG_SAVEAS
      Mon Mar 15 15:01:52 2021 [Z0][VM][I]: New LCM state is RUNNING
      
    • La copie du disque dans /mnt/sauvegardes/ et la vérification de sa somme de contrôle prend environ 22 minutes (temps entre le retour du RUNNING du scribe et le HOTPLUG_SAVEAS de l’Amon)
      ==> /var/log/one/9.log <==
      Mon Mar 15 13:54:15 2021 [Z0][VM][I]: New LCM state is HOTPLUG_SAVEAS
      Mon Mar 15 15:01:52 2021 [Z0][VM][I]: New LCM state is RUNNING
      
      ==> /var/log/one/8.log <==
      Mon Mar 15 15:22:44 2021 [Z0][VM][I]: New LCM state is HOTPLUG_SAVEAS
      

La sauvegarde de l’Amon avec 1 disque de 40Go

  • disque 0 : 7,9Go réels sur 40Go
    • Sauvegarde du disque prend presque 1 minutes (temps entre HOTPLUS_SAVEAS et RUNNING)
      ==> /var/log/one/8.log <==
      Mon Mar 15 15:22:44 2021 [Z0][VM][I]: New LCM state is HOTPLUG_SAVEAS
      Mon Mar 15 15:23:56 2021 [Z0][VM][I]: New LCM state is RUNNING
      
    • La copie du disque dans /mnt/sauvegardes/ et la vérification de sa somme de contrôle prend un peu plus d’une minutes (temps évaluer avec une une commande en console)

#5 Updated by Daniel Dehennin about 3 years ago

Test restauration

root@grichka:~# time onerst 
Restoring vm 8 from /mnt/sauvegardes/one/datastores/100/8
ERROR on /mnt/sauvegardes/one/datastores/101/ce93f817cbbacfb33901156a39ea2fbd recovery from VM 8
Restoring vm 9 from /mnt/sauvegardes/one/datastores/100/9

real    29m12,782s
user    6m56,977s
sys    4m31,546s

C’est possible d’avoir un peu plus de log ?

#6 Updated by Daniel Dehennin about 3 years ago

#7 Updated by Daniel Dehennin about 3 years ago

  • Related to Scénario #31591: Sauvegarde/restauration des Images et VM Hapy 2.8.0+ added

#8 Updated by Daniel Dehennin about 3 years ago

#9 Updated by Gilles Grandgérard about 3 years ago

  • Parent task changed from #31590 to #32042

#10 Updated by Daniel Dehennin about 3 years ago

La restauration ne fonctionne pas :

root@grichka:~# onerst 
Restoring vm 13 from /mnt/sauvegardes/one/datastores/100/13
No such file or directory @ rb_sysopen - 
/usr/lib/ruby/2.7.0/digest.rb:50:in `initialize'
/usr/lib/ruby/2.7.0/digest.rb:50:in `open'
/usr/lib/ruby/2.7.0/digest.rb:50:in `file'
/usr/lib/ruby/2.7.0/digest.rb:35:in `file'
/usr/lib/ruby/vendor_ruby/one/restore/vm.rb:88:in `block in restore'
/usr/lib/ruby/2.7.0/find.rb:49:in `block (2 levels) in find'
/usr/lib/ruby/2.7.0/find.rb:48:in `catch'
/usr/lib/ruby/2.7.0/find.rb:48:in `block in find'
/usr/lib/ruby/2.7.0/find.rb:43:in `each'
/usr/lib/ruby/2.7.0/find.rb:43:in `find'
/usr/lib/ruby/vendor_ruby/one/restore/vm.rb:66:in `each'
/usr/lib/ruby/vendor_ruby/one/restore/vm.rb:66:in `restore'
/usr/bin/onerst:174:in `block in <main>'
/usr/bin/onerst:173:in `each'
/usr/bin/onerst:173:in `<main>'

Je ne sais pas quel fichier ou répertoire est inexistant :

root@grichka:~# tree /mnt/sauvegardes/
/mnt/sauvegardes/
└── one
    └── datastores
        ├── 100
        │   ├── 13
        │   │   ├── deployment.0
        │   │   ├── deployment.1
        │   │   ├── deployment.2
        │   │   ├── deployment.4
        │   │   └── disk.0 -> /var/lib/one/datastores/101/9ce24e3291173b1279c215dc5c6b54f4
        │   └── 15
        │       ├── deployment.0
        │       ├── deployment.1
        │       ├── disk.0 -> /var/lib/one/datastores/101/89ed174cb8414f4541b288c36e125b29
        │       └── disk.1 -> /var/lib/one/datastores/101/985c71665912fd38adbaf0df2658c048
        ├── 101
        │   ├── 166ffcaec74f17415b5da88a3504ee88
        │   ├── 1ace31780bd079aa83633b2b147c0931
        │   ├── 1cc415bbd8d5faa18fec1aebd76e1ace
        │   ├── 8f02fad731fbb15ada43db29c0ca3f99
        │   ├── b1802c325af402821c0b012e163c2412
        │   └── d60f417b0faa4d5bb666899fe573eeb9
        └── 102
            ├── 4701303683d94e4f7abaafd05de3e814
            └── 850babac1e90781d39003b6d19ba5e7f

7 directories, 17 files

#11 Updated by Philippe Caseiro about 3 years ago

J'ai relancé onerst avec du debug il manquait un fichier de disque "/mnt/sauvegardes/one/datastores/101/89ed174cb8414f4541b288c36e125b29" ce fichier n'avait pas été sauvegardé...

J'ai donc relancé le processus backup/restauration de 0 sur Grichka avec du debug et je n'ai pas d'erreur. A mon avis lors d'un test précédent la sauvegarde à été coupée.

Pour moi tout est fonctionnel avec le dernier paquet.

#12 Updated by Daniel Dehennin almost 3 years ago

  • Status changed from En cours to Résolu
  • % Done changed from 0 to 100

Sur grichka Hâpy 2.8.1 :

  • sauvegarde d’un amon et d’un scribe en mode persistant OK (après avoir installé ruby-rsync qui manque en dépendance)
  • restauration des VMs, les diagnoses sont OK après la restauration (la restauration n’utilise pas rsync en revanche).
oneadmin@grichka:~$ time onerst
Restoring vm 13 from /mnt/sauvegardes/one/datastores/100/13
Restoring vm 15 from /mnt/sauvegardes/one/datastores/100/15

real    70m1,275s
user    16m33,001s
sys     6m18,995s

#13 Updated by Joël Cuissinat almost 3 years ago

  • Related to Scénario #32861: hapy automatisation: dependance manquante 'ruby-rsync' added

#14 Updated by Joël Cuissinat over 2 years ago

  • Status changed from Résolu to Fermé
  • Remaining (hours) set to 0.0

Also available in: Atom PDF