AlmaLinux 9
Sponsored Link

KVM : Set VNC connection2023/02/28

 
Set VNC connection to connect to virtual machines with VNC.
[1] Edit existing virtual machine's configration and start virtual machine with VNC like follows.
The example on this site shows to create a virtual machine without graphics, so it's OK to change settings like follows, however, if you created virtual machine with graphics, Remove [<graphics>***] and [<video>***] sections in configration file.
# edit configration of VM

[root@dlp ~]#
virsh edit almalinux9
<domain type='kvm'>
  <name>almalinux9</name>
  <uuid>45c3c7d3-dd5a-4f58-9cb8-be69e4f831be</uuid>
  <metadata>
    <libosinfo:libosinfo xmlns:libosinfo="http://libosinfo.org/xmlns/libvirt/domm
ain/1.0">
      <libosinfo:os id="http://almalinux.org/almalinux/9"/>
    </libosinfo:libosinfo>
  </metadata>
  .....
  .....
    # add like follows
    # set any password for [passwd=***] section for VNC connection
    # specify an uniq number for [slot='0x**']
    <graphics type='vnc' port='5900' autoport='no' listen='0.0.0.0' passwd='password'>
      <listen type='address' address='0.0.0.0'/>
    </graphics>
    <video>
      <model type='vga' 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='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 almalinux9 XML configuration edited.

[root@dlp ~]#
virsh start almalinux9

Domain almalinux9 started
[2] If Firewalld is running, allow ports you use for VNC.
[root@dlp ~]#
firewall-cmd --add-port=5900-5999/tcp

[root@dlp ~]#
firewall-cmd --runtime-to-permanent

[3]
That's OK. Refer to the next section to connect to virtual machines from VNC client.
[4] By the way, if you'd like to enable VNC on initial creating of virtual machine, specify like follows.
Then, it's possible to install Guest OS with VNC that requires GUI installation like Windows without installing Desktop Environment on KVM Host computer.
[root@dlp ~]#
virt-install \
--name Win2k22 \
--ram 6144 \
--disk path=/var/kvm/images/Win2k22.img,size=100 \
--vcpus 4 \
--os-variant win2k22 \
--network bridge=br0 \
--graphics vnc,listen=0.0.0.0,password=password,keymap=ja \
--video vga \
--cdrom /home/Win2022_EN-US_20348.169.210806-2348.fe.iso
Matched Content