• [^] # Re: Utiliser les outils libvirt : virt-install et guestfs

    Posté par . En réponse au message Cloner une VM. Évalué à 5.

    Merci. Je vais étudier ton script car mon essai de ce soir a été infructueux malheureusement.

    Pour cloner c’est simple :

    Ma VM à cloner s’appelle "Annabelle", première chose à faire, je l’éteins : virsh shutdown Annabelle, ensuite :

    virt-clone --original Annabelle --name Micheline --file /data/VMs/Micheline.qcow2
    Ça ça marche, j’ai maintenant une VM nommée "Micheline". Youpi ! Effectivement difficile de faire plus simple, encore que j’aurais pu utiliser --auto-clone puisque l’image disque d’Annabelle est le fichier /data/VMs/Annabelle.qcow2, ça serait revenu au même, mais dans le doute j’ai préféré préciser le nom du fichier pour l’image de ma nouvelle VM.

    Et c’est maintenant que ça se complique... tout un tas de trucs doivent être différents entre les deux VM, ne serait-ce que leur adresse réseau, mais il y a aussi leurs clés d’hôtes et encore tout un tas d’info dont les trois quarts me passent au dessus de la tête je n’ai pas honte de le dire. Bon OK c’est compliqué mais l’ordinateur est là pour me faciliter la vie en simplifiant, non ?

    Donc, naïvement je me suis dit qu’un virt-sysprep -d Micheline allait faire le job, d’ailleurs voilà ce qu’il me dit :

    # virt-sysprep -d Micheline
    [ 0,0] Examining the guest ...
    [ 3,3] Performing "abrt-data" ...
    [ 3,3] Performing "bash-history" ...
    [ 3,3] Performing "blkid-tab" ...
    [ 3,3] Performing "crash-data" ...
    [ 3,3] Performing "cron-spool" ...
    [ 3,4] Performing "dhcp-client-state" ...
    [ 3,4] Performing "dhcp-server-state" ...
    [ 3,4] Performing "dovecot-data" ...
    [ 3,4] Performing "logfiles" ...
    [ 3,4] Performing "machine-id" ...
    [ 3,4] Performing "mail-spool" ...
    [ 3,4] Performing "net-hostname" ...
    [ 3,4] Performing "net-hwaddr" ...
    [ 3,4] Performing "pacct-log" ...
    [ 3,4] Performing "package-manager-cache" ...
    [ 3,4] Performing "pam-data" ...
    [ 3,4] Performing "puppet-data-log" ...
    [ 3,4] Performing "rh-subscription-manager" ...
    [ 3,4] Performing "rhn-systemid" ...
    [ 3,4] Performing "rpm-db" ...
    [ 3,4] Performing "samba-db-log" ...
    [ 3,4] Performing "script" ...
    [ 3,4] Performing "smolt-uuid" ...
    [ 3,4] Performing "ssh-hostkeys" ...
    [ 3,4] Performing "ssh-userdir" ...
    [ 3,4] Performing "sssd-db-log" ...
    [ 3,4] Performing "tmp-files" ...
    [ 3,4] Performing "udev-persistent-net" ...
    [ 3,4] Performing "utmp" ...
    [ 3,4] Performing "yum-uuid" ...
    [ 3,4] Performing "customize" ...
    [ 3,4] Setting a random seed
    [ 3,7] Performing "lvm-uuids" ...
    

    Mais... c’est super ça ! Il en a même fait plus que nécessaire... en tout cas je vois "ssh-hostkeys", il a donc dû changer les clés d’hôte de Micheline...

    Mais voilà... si je démarre Micheline elle a l’adresse d’Annabelle (qui est éteinte). Annabelle avait une IP fixe (192.168.122.200) :

    # ssh root@192.168.122.200
    @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
    @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
    Someone could be eavesdropping on you right now (man-in-the-middle attack)!
    It is also possible that a host key has just been changed.
    The fingerprint for the ECDSA key sent by the remote host is
    SHA256:uho0TtI******bzUWQxVGFVvqikrCVkXQk9ad0*****.
    Please contact your system administrator.
    Add correct host key in /root/.ssh/known_hosts to get rid of this message.
    Offending ECDSA key in /root/.ssh/known_hosts:7
     remove with:
     ssh-keygen -f "/root/.ssh/known_hosts" -R 192.168.122.200
    ECDSA host key for 192.168.122.200 has changed and you have requested strict checking.
    Host key verification failed.
    

    Si je ne raconte pas de connerie (il est bientôt minuit quand-même...) virt-sysprep m’a bien changé la clé d’hôte mais il a pas changé l’IP ?!

    Je me dis que je suis sur la bonne voie mais il y a quand même des trucs bizarres... J’éteins Micheline et rallume Annabelle :

     # virsh list |grep Annabelle
     13 Annabelle running
    

    Je peux de nouveau me connecter en SSH à l’adresse 192.168.122.200, c’est bien Annabelle, c’est la bonne clé.

    Par contre ce sont les commandes suivantes que j’ai du mal à comprendre, je ne comprends pas pourquoi je n’ai aucune info :

    # virsh domifaddr Annabelle
    Name MAC address Protocol Address
    -------------------------------------------------------------------------------

    rien ! nada, que dalle :(

    J’ai la vague impression que si Annabelle avait une lease DHCP plutôt qu’une IP fixe j’aurais moins de problème mais j’ai la flemme de tester et je tiens à mon IP fixe.

    Bon, si j’ai le temps demain, avec mes expériences foireuses de ce soir et le script d’Etienne je vais p-e m’en sortir !

    Pour filer quelques info supplémentaires, l’hôte est une Debian 9 et Annabelle est une CentOS 7