Fedora 32
Sponsored Link

KVM : Configure SPICE Server
2020/05/07
 
Configure Desktop Virtualization SPICE ( Simple Protocol for Independent Computing Environment ). It's possible to connect to virtual machines from remote client computer.
[1] Install SPICE Server if it's not installed yet. (generally it's already installed with KVM for dependency)
[root@dlp ~]#
dnf -y install spice-server

[2] Edit existing virtual machine's configration and start virtual machine with SPICE like follows.
The example on this site shows to create a virtual machine without graphics, so it's OK to change settings like follows, but if you created virtual machine with graphics, Remove [<graphics>***] and [ <video>***] sections in configration file.
By the way, if you'd like to use VNC instead of SPICE, replace [graphics type='spice' ***] to [graphics type='vnc' ***].
# edit configration of [fedora32]

[root@dlp ~]#
virsh edit fedora32
<domain type='kvm'>
  <name>fedora32</name>
  <uuid>fe715996-848c-4224-b0fb-773da1143ab6</uuid>
  <metadata>
    <libosinfo:libosinfo xmlns:libosinfo="http://libosinfo.org/xmlns/libvirt/domain/1.0">
      <libosinfo:os id="http://fedoraproject.org/fedora/31"/>
    </libosinfo:libosinfo>
  </metadata>
  .....
  .....
    # add like follows
    # set any password for [passwd=***] section
    # specify a uniq number for [slot='0x**']
    <graphics type='spice' port='5900' autoport='no' listen='0.0.0.0' passwd='password'>
      <listen type='address' address='0.0.0.0'/>
    </graphics>
    <sound model='ac97'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x09' function='0x0'/>
    </sound>
    <video>
      <model type='qxl' ram='65536' vram='32768' heads='1'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x10' function='0x0'/>
    </video>
    <memballoon model='virtio'>
      <address type='pci' domain='0x0000' bus='0x05' slot='0x00' function='0x0'/>
    </memballoon>
    <rng model='virtio'>
      <backend model='random'>/dev/urandom</backend>
      <address type='pci' domain='0x0000' bus='0x06' slot='0x00' function='0x0'/>
    </rng>
  </devices>
</domain>

Domain fedora32 XML configuration edited.

[root@dlp ~]#
virsh start fedora32

Domain fedora32 started
[3] If Firewalld is running, allow ports you use for SPICE.
[root@dlp ~]#
firewall-cmd --add-port=5900-5910/tcp --permanent

[root@dlp ~]#
firewall-cmd --reload

[4]
[5] By the way, if you'd like to enable SPICE on initial creating of virtual machine, specify like follows. Then, it's possible to install Systems with SPICE that requires GUI Installation like Windows without installing Desktop Environment on KVM Host computer. If you'd like to use VNC, replace [spice] word to [vnc].
[root@dlp ~]#
virt-install \
--name Win2k19 \
--ram 6144 \
--disk path=/var/kvm/images/Win2k19.img,size=100 \
--vcpus=4 \
--os-type windows \
--os-variant=win2k19 \
--network bridge=br0 \
--graphics spice,listen=0.0.0.0,password=password,keymap=ja \
--video qxl \
--cdrom /tmp/Win2019_JA-JP.ISO
Matched Content