Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

20.16.12. 图形帧缓冲

图形设备允许与客户端虚拟机操作系统进行图形化交互。客户机虚拟机通常具有帧缓冲器或配置为允许与管理员交互的文本控制台。
要指定图形帧缓冲设备配置设置,请使用管理工具对域 XML 进行以下更改:

图 20.56. 图形框架


  ...
  <devices>
    <graphics type='sdl' display=':0.0'/>
    <graphics type='vnc' port='5904'>
      <listen type='address' address='192.0.2.1'/>
    </graphics>
    <graphics type='rdp' autoport='yes' multiUser='yes' />
    <graphics type='desktop' fullscreen='yes'/>
    <graphics type='spice'>
      <listen type='network' network='rednet'/>
    </graphics>
  </devices>
  ...
图形元素具有强制 类型 属性,它取 sdlvncrdpdesktop 的值,如下所示:

表 20.20. 图形帧缓冲元素

参数描述
sdl这将在主机物理机器桌面上显示一个窗口,它可使用 3 个可选参数:显示要使用的 display 属性、身份验证标识符的 xauth 属性以及可选的 全屏 属性接受值 yesno
vnc启动 VNC 服务器。port 属性指定 TCP 端口号(使用 -1 作为旧语法,表示它应该被自动分配)。autoport 属性是指示要使用的 TCP 端口自动分配的新首选语法。listen 属性是服务器要侦听的 IP 地址。passwd 属性以明文格式提供 VNC 密码。keymap 属性指定要使用的 keymap。可能会设置密码有效期的限制,给出了 时间戳 passwdValidTo='2010-04-09T15:51:00' 假定在 UTC 中。连接 的属性允许在密码更改期间控制连接的客户端。VNC 接受 仅保留 值,请注意,所有管理程序可能都不支持它。QEMU 支持在 unix 域套接字路径中侦听的 socket 属性,而不使用 listen/port。
spice启动 SPICE 服务器。port 属性指定 TCP 端口号(使用 -1 作为旧语法,表示它应该被自动分配),而 tlsPort 则提供了一个替代的安全端口号。autoport 属性是指示两个端口号的自动分配的新首选语法。listen 属性是服务器要侦听的 IP 地址。passwd 属性以明文中提供 SPICE 密码。keymap 属性指定要使用的 keymap。可能会设置密码有效期的限制,给出了 时间戳 passwdValidTo='2010-04-09T15:51:00' 假定在 UTC 中。连接 的属性允许在密码更改期间控制连接的客户端。SPICE 接受了保持客户端连接、断开与客户端断开连接并且无法更改密码。请注意,它并不被所有虚拟机监控程序支持。defaultMode 属性设置默认频道安全策略,有效的值 为安全不安全和 默认值(如果可能,这比较 安全,但没有安全的路径,则不会出错)。
当 SPICE 同时配置了正常和 TLS 保护的 TCP 端口时,可能需要限制可在每个端口上运行哪些频道。这可以通过在主图形元素中添加一个或多个 频道 元素 来实现。有效的频道名称包括 显示输入光标回放记录智能卡、和 usbredir
要指定 SPICE 配置设置,使用 mangement 工具对域 XML 进行以下更改:

图 20.57. SPICE 配置


  <graphics type='spice' port='-1' tlsPort='-1' autoport='yes'>
    <channel name='main' mode='secure'/>
    <channel name='record' mode='insecure'/>
    <image compression='auto_glz'/>
    <streaming mode='filter'/>
    <clipboard copypaste='no'/>
    <mouse mode='client'/>
  </graphics>
SPICE 支持音频、镜像和流处理的变量压缩设置。这些设置可通过以下所有元素中的压缩方式来访问:用于设置 映像 压缩(接受 auto_glz、auto_lz、fast、gz、Llz、Lz、off)、jpeg for JPEG 压缩镜像通过 wan(接受自动、始终为接受)和 playback 配置 wan 镜像压缩(接受,始终为行)。
streaming 模式由 streaming 元素设置,将其 mode 属性设为 过滤器 之一,即全部 或关闭
此外,复制和粘贴功能(使用 SPICE 代理)由 剪贴板 元素进行设置。它默认是启用的,可以通过将 copypaste 属性设置为 no 来禁用。
鼠标模式由 鼠标 元素设置,将其 模式 属性设置为其中一个 服务器或客户端 。如果没有指定模式,则将使用 qemu 默认(客户端 模式)。
其他元素包括:

表 20.21. 其他图形帧缓冲元素

参数描述
rdp启动 RDP 服务器。port 属性指定 TCP 端口号(使用 -1 作为旧语法,表示它应该被自动分配)。autoport 属性是指示要使用的 TCP 端口自动分配的新首选语法。replaceUser 属性是一个布尔值,决定是否允许多个同时连接到虚拟机。当一个新客户端以单一连接模式连接时,无论是否必须丢弃现有连接,并且 VRDP 服务器都需要建立新的连接。
desktop这个值目前为 VirtualBox 域保留。它在主机物理机器桌面上显示一个窗口,类似于"sdl",但使用 VirtualBox 查看器。正如"sdl"一样,它接受可选的属性显示和全屏。
listen可在图形、listen 属性、名为 listen 的独立子元素(称为 listen )中的用于为 图形 类型 vnc 和 spice 设置监听套接字的地址信息(请参阅上面的示例)。侦听 以下属性:
  • Type - 设置为地址或网络。这告知此监听元素是指定要直接使用的地址,或通过命名网络(然后用来确定要侦听的相应地址)。
  • address - 此属性将包含 IP 地址或主机名(通过 DNS 查询解析为 IP 地址)以侦听。在运行域的"实时" XML 中,此属性将设置为用于侦听的 IP 地址,即使 type='network'
  • Network - 如果 type='network',network 属性将在 libvirt 的已配置网络列表中包含网络的名称。将检查指定的网络配置来确定适当的侦听地址。例如,如果网络在其配置中有 IPv4 地址(例如,如果网络具有转发类型路由、nat 或 no forward type(隔离),则会使用网络配置中列出的第一个 IPv4 地址。如果网络描述主机物理机器桥接,将使用与该网桥设备关联的第一个 IPv4 地址,如果网络描述其中一个"直接"(macvtap)模式,则将使用第一个转发 dev 的第一个 IPv4 地址。