Openstack: Création d'une image Windows 2008 R2 avec support Virtio

Lors de l'installation de Windows 2008 R2 en kvm sur un disque virtio, il semble qu'il n'y ait aucun support pour les pilotes. Même après avoir installé les pilotes, je n'ai pas pu installer Windows sur l'image. Cela parce que Windows ne voit pas l'image comme amorçable. Alors, comment créer un server Windows 2008 R2 qui prend en charge virtio et peut être ajouté à Glance?

Modifier 1: images ajoutées Alors voici quelques images de mon problème. Ce n'est pas l'erreur 0x80300001, comme preuve, j'ai ajouté une image qui montre que Windows iso est chargé dans le CD-ROM. Aperçu

Aucun disque présent, donc le temps d'installer le pilote

Sélectionnez le pilote

Installer le pilote

entrez la description de l'image ici

entrez la description de l'image ici

Edit 2: le comportement ne semble être connu que sur Ubuntu. Dyasny l'a confirmé pour fonctionner sur Fedora.

La solution que j'ai utilisée pour contourner ce problème était la suivante:

Tout d'abord, nous devrons créer une image pour installer la machine virtuelle. Microsoft dit que 10 Go est le minimum, mais j'ai utilisé 15 Go. Rappelez-vous que ce n'est pas la taille finale de votre machine virtuelle, une fois qu'elle est introduite dans Nova Compute. Créez une image brute appelée windows.virtio:

kvm-img create -f raw windows.virtio 15G 

Ouvrez maintenant virt-manager et créez une nouvelle machine virtuelle:

  • Nommez votre machine
  • Utilisez l'image ISO et select votre image Windows 2008 R2
  • Sélectionnez Windows et Windows 2008 dans les menus déroulants
  • 2048 Mo de memory
  • 2 cpu
  • Configurez le réseau afin que vous ayez Internet

Maintenant démarrez la machine et installez simplement l'image, le disque est défini sur IDE pour le moment, mais ce n'est pas vraiment un problème.

  • Après l'installation, redémarrez, après le redémarrage, fermez-le à nouveau
  • Créer une image temporaire
  • kvm-img create -f raw dirtyhack.virtio 1G

  • Ajouter du matériel avec virt-manager:
    • Pilotes de disques
    • Espace de rangement
    • Fichier de l'image du disque (select dirtyhack.virtio)
    • définir Type de périphérique en Virtio
    • Montez l'ISO avec le pilote que vous avez reçu des projets fedora dans la station CDrom
  • Carte réseau
  • Ajoutez une nouvelle carte réseau à une interface (peu importe la connection à celle-ci)
  • Lorsque vous select la carte, modifiez la valeur par défaut de l'hyperviseur
  • Démarrez le server à nouveau
  • Dans Windows, ouvrez le gestionnaire de périphérique
    • Appuyez sur Start
    • Type de gestionnaire de périphérique
    • Dans le gestionnaire de périphériques, select le pilote iSCSI
    • Installez le pilote et parcourez le CDrom et allez dans wlh> amd64
    • Cliquez sur OK et le pilote sera installé
    • Faites de même pour la carte réseau, j'ai dû utiliser les pilotes dans le dossier Windows 7 car Windows n'a pas pu détecter ceux du dossier Wnet
  • Arrêter la machine
  • Supprimez tous les disques durs de la machine dans virt-manager
  • Ajoutez du matériel, du stockage et ajoutez votre Windows.virtio original, mais assurez-vous de configurer le Type de périphérique à l'adresse Virtio
  • Démarrez la machine
  • Félicitations, votre machine a maintenant les pilotes Virtio.

    J'ai également posté ceci sur mon blog

    Pour ceux qui arrivent ici, vous n'avez pas besoin d'effectuer le hack suggéré, il suffit de spécifier les pilotes Virtio en tant que cdrom.

    Dans qemu-system-x86, utilisez ces options.

     sudo qemu-syste-x86 -m 1024 -drive file=/path/to/file/windows_2012_r2.ISO,index=2,media=cdrom \ -drive file=win2012.raw,if=virtio,index=0, -boot d -net nic,model=virtio \ -net user,hostfwd=tcp::3389-:3389 -nographic -vnc :0 \ -drive file=/path/to/file/virtio-win-0.1-81.iso,index=3,media=cdrom 

    Openstack fournit une documentation sur ce que vous essayez d'atteindre ici: http://docs.openstack.org/diablo/openstack-compute/starter/content/Creating_a_Windows_Image-d1e1594.html

    L'astuce consiste à fournir l'image de disquette virtio-win-xxxvfd lors de la configuration, pour que Windows obtienne les pilotes