captaindusky
Goto Top

Zugriff auf VM

Guten Morgen,

ich möchte mir hier mittels KVM auf Ubuntu-Server-Basis so ein paar Server fertig machen. Ich verzweifel aber gerade schon daran, überhaupt auf eine VM zuzugreifen.

Folgendes habe ich bisher gemacht:
Ubuntu Server 18.04.1 als Wirt installiert
apt install qemu-kvm libvirt-bin virtinst

unter /etc/libvirt/qemu eine .xml erzeugt:

<domain type='kvm'>  
  <name>SERV01</name>
  <uuid>b98985df-e37a-4c80-b911-683eacb4c675</uuid>
  <memory unit='KiB'>8388608</memory>  
  <currentMemory unit='KiB'>8388608</currentMemory>  
  <vcpu placement='static'>1</vcpu>  
  <os>
    <type arch='x86_64' machine='pc-i440fx-bionic'>hvm</type>  
    <boot dev='hd'/>  
  </os>
  <features>
    <acpi/>
    <apic/>
  </features>
  <cpu mode='custom' match='exact' check='partial'>  
    <model fallback='allow'>Skylake-Server-IBRS</model>  
  </cpu>
  <clock offset='utc'>  
    <timer name='rtc' tickpolicy='catchup'/>  
    <timer name='pit' tickpolicy='delay'/>  
    <timer name='hpet' present='no'/>  
  </clock>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>destroy</on_crash>
  <pm>
    <suspend-to-mem enabled='no'/>  
    <suspend-to-disk enabled='no'/>  
  </pm>
  <devices>
    <emulator>/usr/bin/kvm-spice</emulator>
    <disk type='file' device='disk'>  
      <driver name='qemu' type='raw'/>  
      <source file='/home/virtimg/hdd01.img'/>  
      <target dev='vda' bus='virtio'/>  
      <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>  
    </disk>
    <disk type='file' device='cdrom'>  
      <driver name='qemu' type='raw'/>  
      <target dev='hda' bus='ide'/>  
      <readonly/>
      <address type='drive' controller='0' bus='0' target='0' unit='0'/>  
    </disk>
    <controller type='usb' index='0' model='ich9-ehci1'>  
      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x7'/>  
    </controller>
    <controller type='usb' index='0' model='ich9-uhci1'>  
      <master startport='0'/>  
      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0' multifunction='on'/>  
    </controller>
    <controller type='usb' index='0' model='ich9-uhci2'>  
      <master startport='2'/>  
      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x1'/>  
    </controller>
    <controller type='usb' index='0' model='ich9-uhci3'>  
      <master startport='4'/>  
      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x2'/>  
    </controller>
    <controller type='pci' index='0' model='pci-root'/>  
    <controller type='ide' index='0'>  
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>  
    </controller>
    <interface type='network'>  
      <mac address='52:54:00:2a:30:86'/>  
      <source network='default'/>  
      <model type='virtio'/>  
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>  
    </interface>
    <serial type='pty'>  
      <target type='isa-serial' port='0'>  
        <model name='isa-serial'/>  
      </target>
    </serial>
    <console type='pty'>  
      <target type='serial' port='0'/>  
    </console>
    <input type='tablet' bus='usb'>  
      <address type='usb' bus='0' port='1'/>  
    </input>
    <input type='mouse' bus='ps2'/>  
    <input type='keyboard' bus='ps2'/>  
    <graphics type='vnc' port='-1' autoport='yes'>  
      <listen type='address'/>  
    </graphics>
    <video>
      <model type='cirrus' vram='16384' heads='1' primary='yes'/>  
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>  
    </video>
    <memballoon model='virtio'>  
      <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>  
    </memballoon>
  </devices>
</domain>

unter virsh dann per define hinzugefügt und gestartet.

Und ab hier weiß ich nicht mehr weiter. Wie greife ich denn nun auf diese virtuelle Maschine zu, damit ich meine Installationsroutine durchlaufen lassen kann?

Ich greife per PuTTY auf den Wirt zu. Ein `virsh console SERV01` bringt auch nur ein
Connected to domain SERV01
Escape character is ^]
Und das war's dann.

Wenn ich mit virt-install arbeite, geht es nur so weit:

virt-install --connect qemu:///system --hvm --name SERV01 --ram 8192 --file /home/virtimg/hdd01.img --file-size 256 --cdrom /home/ubuntu-18.04.1-server-amd64.iso --vnc --os-type linux --os-variant ubuntu18.04 --accelerate
WARNING  Graphics requested but DISPLAY is not set. Not running virt-viewer.
WARNING  No console to launch for the guest, defaulting to --wait -1

Starting install...
Domain installation still in progress. Waiting for installation to complete.

Ein Portscan auf den Server zeigt mir nur den SSH 22 an, was also der --vnc Schalter bewirken soll, ist mir hier einfach schleierhaft.
Wo habe ich gerade meine Denkblockade? Alle reden davon, KVM wäre so einfach face-wink

Ich hoffe, jemand gibt mir den entscheidenen Anstoß. Gestern schon den ganzen Tag damit verbracht, unzählige Seiten durch. Die meisten zeigen was von einem virt-viewer, aber natürlich mit Ubuntu-Oberfläche, nicht Windows.

Gruß

Marco

Content-Key: 397420

Url: https://administrator.de/contentid/397420

Printed on: April 16, 2024 at 18:04 o'clock

Mitglied: 129580
Solution 129580 Jan 08, 2019 updated at 09:44:58 (UTC)
Goto Top
Hallo,

du greifst ganz normal via VNC auf die Kiste zu.
Den VNC Port erfährst du durch den Befehl: virsh dumpxml <vm>

Standardgemäß ist der Zugang nicht Passwot geschützt. Allerdings ist der Listener auf Localhost gesetzt.
Entweder ändern oder via SSH Port Forwarding zugreifen.

Alle reden davon, KVM wäre so einfach

Isses auch. Allerdings darf man sich nicht durch die vielen Tools verwirren lassen. face-wink
Ich persönlich würde dir zur libvirt API raten. Ist am einfachsten und du kannst damit so ziemlich jeden Hypervisor steuern.
Ansonsten gibt es auch für KVM eine GUI. Siehe beispielsweise Proxmox.

Viele Grüße,
Exception.
Member: CaptainDusky
CaptainDusky Jan 08, 2019 at 16:42:11 (UTC)
Goto Top
Hallo noch mal,

super. Das hat mich heute richtig weiter gebracht. Noch bisschen mit bridging rumgeschlagen, aber jetzt habe ich die ersten 2 Server aufgesetzt.
SSH Port Forwarding war mir wieder zu viel, ich habe mich für die VNC-Variante entschieden, also in der qemu.conf das 'Listen 0.0.0.0' auskommentiert. Brauche ich ja nur für die Installationsroutine, danach geht's eh mit SSH weiter.

Vielen Dank

Gruß
Marco