Windows

From A-Eskwiki
Jump to: navigation, search

Inleiding

Nieuwe workstations in het A–Eskwadraatcomputerpark ondersteunen "hardwarevirtualisatie" m.b.v. KVM. Deze functionaliteit wordt ingezet om op deze workstations een virtuele Windowsinstallatie aan te bieden. Deze is bereikbaar met een programma dat automatisch de huidige host gebruikt, of als deze niet beschikbaar is een lijst geeft van beschikbare:

$ raam

Je kunt ook direct connecten met:

$ rdesktop {hostname}-win

Configuratie

Synchroniseren

Alle KVM-images worden lokaal opgeslagen in QCOW2-formaat op /mnt/vm-images. Als onderdeel van het ws-update-proces worden deze images bijgewerkt vanaf een centrale lokatie. De default image is helemaal clean, heeft een default hostname en is niet gejoined aan het Samba Domain.

Bij het ws-update process wordt er een qcow2-schil om de image heen gelegd om daarin de domain-join uit te voeren. Bij het opstarten van het image wordt er automatisch een script gestart in "c:\" dat de hostname goed instelt (gevolgd door een reboot) en vervolgens automatisch het Samba Domain joint.

Vanaf dit punt kan de image voor standaard gebruik gestart worden (gebeurt normaal bij het booten met een init.d script). Bij het normaal starten van windows wordt er gebruik gemaakt van de "-snapshot" optie, zodat alle wijziging tijdelijke na een reboot weer ongedaan gemaakt worden.

Wijzigingen doorvoeren

Om wijzigingen door te voeren in het template Windows image, dien je de WindowsXP-template.qcow2 handmatig te starten.

Wanneer alle wijzigingen aangebracht zijn aan de image is het handig om de image te defragmenteren en met ccleaner te wipen met zero's (vanuit windows zelf). Hierna kan windows worden afgesloten en kan de image opnieuw gecompressed worden:

$ kvm-img convert -c -O qcow2 /mnt/vm-images/WindowsXP/WindowsXP-template.qcow2 /mnt/vm-images/WindowsXP/WindowsXP-template.qcow2.new

Deze image is dan te testen door deze te kopieren:

$ cp /mnt/vm-images/WindowsXP/WindowsXP-template.qcow2.new /mnt/vm-images/WindowsXP/WindowsXP-template.qcow2

Daarna dient de gejoinde schil gemaakt te worden met:

$ ws-vmjoin

Zodra dit gedaan is is het mogelijk om deze image te starten voor normaal gebruik. Houd er rekening mee dat een ws-update deze image zal vervangen wanneer deze ongelijk is aan degene op de server.

Om de image op de server te plaatsen dient de server rw gemount te worden:

$ mount -o remount,rw /srv/vm-images

Vervolgens kan de image erheen gekopieerd worden:

$ cp /mnt/vm-image/WindowsXP/WindowsXP-template.qcow2.new /srv/vm-images/WindowsXP/WindowsXP-template.qcow2

Hierna zal iedere workstation deze image binnenhalen en gaan gebruiken tijdens de ws-update.

Bij het handmatig starten is het belangrijk dat je het MAC-adres "AE:00:00:00:00:02" gebruikt. Op deze manier herkent de image dat het als template start, en wordt er niet geprobeerd om het Samba Domain te joinen. Een voorbeeld om kvm te starten:

$ kvm -vnc :2 \
    -drive file=/srv/vm-images/WindowsXP/WindowsXP-template.qcow2,if=virtio,boot=on \
    -m 1024 \
    -net nic,model=virtio,macaddr=AE:00:00:00:00:02 -net tap \
    -usbdevice tablet \
    -cpu host -smp 2 \
    -localtime \
    -monitor stdio \
    -vga std

Nu kun je een vncviewer :2 starten om in te loggen op de image.

Gebruik

CD-ROM (ISO) mounten

Als je de monitor/stdio van de Windowsinstallatie ziet, dan kun je de volgende commando's gebruiken om ISO images in te laden:

$ eject -f ide1-cd0
$ change ide1-cd0 "/scratch/mijn image.iso"

In sommige gevallen zal QEMU een wijziging van een image niet doorhebben en koppig het oude image blijven gebruiken. In dit geval kun je het beste in "This Computer" onder Windows met de rechtermuisknop op de CD-ROM speler klikken, en kiezen voor "eject". Nu kun je met de "QEMU monitor" het juiste image koppelen met het "change ..."-commando.