美文网首页
libvirt 域xml格式---图形设备

libvirt 域xml格式---图形设备

作者: 王鸣南曲 | 来源:发表于2018-01-02 16:31 被阅读0次

    图形设备允许与来宾操作系统进行图形交互。
    访客通常会配置帧缓冲区或文本控制台,以允许与管理员进行交互。

    ...
    <devices>
      <graphics type='sdl' display=':0.0'/>
      <graphics type='vnc' port='5904' sharePolicy='allow-exclusive'>
        <listen type='address' address='1.2.3.4'/>
      </graphics>
      <graphics type='rdp' autoport='yes' multiUser='yes' />
      <graphics type='desktop' fullscreen='yes'/>
      <graphics type='spice'>
        <listen type='network' network='rednet'/>
      </graphics>
    </devices>
    ...
    

    graphics
    graphics具有一个强制性 type 属性,它取值sdl,vnc, spice,rdp或desktop:

    • sdl
      这将在主机桌面上显示一个窗口,它可以包含3个可选参数:
      一个display显示器使用的xauth属性,一个认证标识符的属性,以及一个可选的fullscreen属性接受值 yes或no。
    1. vnc
      port属性指定TCP端口号(使用-1作为指示应自动分配的旧语法)。
      autoport属性是用于指示要使用的TCP端口的自动分配的新的首选语法。
      passwd属性以明文形式提供VNC密码。
      如果passwd属性设置为空字符串,则禁用VNC访问。
      keymap属性指定要使用的键盘映射。可以通过给出时间戳passwdValidTo ='2010-04-09T15:51:00'假定为UTC来设置密码的有效性限制。
      该connected属性允许在密码更改期间控制连接的客户端。
      -- ** -- ** --
      可选
      sharePolicy属性指定vnc服务器显示共享策略:
      1.allow-exclusive允许客户通过放弃其他连接来请求独占访问。并行连接多个客户端需要所有客户端请求共享会话(vncviewer:-Shared switch)。这是默认值。
      2.force-shared禁用独占客户端访问,每个连接都必须指定vncviewer的共享切换。
      3.ignore无条件的连接。
      -- ** -- ** --
      VNC WebSocket功能,websocket属性可以用来指定侦听的端口(-1意味着自动分配,autoport由于安全原因而不起作用)。
    2. spice
      port属性指定TCP端口号(使用-1作为指示应自动分配的旧语法),同时tlsPort给出替代的安全端口号。
      autoport 属性是用于指示所需端口号的自动分配的新的首选语法。
      passwd 属性以明文形式提供SPICE密码。
      如果 passwd属性设置为空字符串,则禁用SPICE访问。
      keymap属性指定要使用的键盘映射。可以通过给出时间戳passwdValidTo ='2010-04-09T15:51:00'假定为UTC来设置密码的有效性限制。
      连接属性允许在密码更改期间控制连接的客户端。SPICE接受保持客户端连接,断开连接客户端,和不能更改密码失败。
      defaultMode属性设置默认的信道安全策略,有效值是secure,insecure,和默认的any
      当SPICE配置正常和TLS安全的TCP端口时,可能需要限制哪些通道可以在端口上运行。 这是通过在主要<graphics>元素内添加一个或多个<channel>元素并将mode属性设置为secure或insecure来实现的。 设置mode属性将覆盖defaultMode属性设置的默认值。有效的名称包括main,display,inputs,cursor,playback,record; smartcard ; 和usbredir。
    <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'/>
      <filetransfer enable='no'/>
      <gl enable='yes' rendernode='/dev/dri/by-path/pci-0000:00:02.0-render'/>
    </graphics>
    
    1. Spice支持音频,图像和流媒体的可变压缩设置。这些设置是通过访问compression 属性中的所有下列元素:image以设置图像压缩(接受auto_glz,auto_lz,quic,glz,lz,off),jpeg用于JPEG压缩图像通过WAN(接受auto,never,always),zlib用于配置苍白图像压缩(接受auto,never,always),并playback 为启用音频流压缩(接受on或 off)。
      流模式通过设定streaming元件,设置其mode属性之一 filter,all或off。
      复制和粘贴功能(通过Spice代理)由clipboard元素设置 。它是默认启用的,可以通过设置copypaste属性来 禁用no。
      鼠标模式由mouse元素设置,将其mode属性设置 为server或之一 client。如果没有指定模式,将使用默认的qemu(客户端模式)。
      文件传输功能(通过Spice代理)使用filetransfer元素设置 。它是默认启用的,可以通过设置enable属性来 禁用no。
      Spice可能会使用OpenGL提供加速的服务器端渲染。您可以gl通过设置enable 属性来显式地启用或禁用OpenGL支持。。
      默认情况下,QEMU将选择第一个可用的GPU DRM渲染节点。您可以指定一个DRM渲染节点路径来代替。(仅限QEMU)

    2. rdp
      port属性指定TCP端口号(使用-1作为指示应自动分配的旧语法)。
      autoport属性是用于指示要使用的TCP端口的自动分配的新的首选语法。在VirtualBox驱动程序中,当虚拟机启动时,将使虚拟机管理程序从3389-3689范围内选择可用的端口。所选的端口将被反映在port 属性中。
      multiUser属性是一个布尔值,用于决定是否允许多个同时连接到虚拟机。
      replaceUser属性是一个布尔值,用于确定当新客户端以单连接模式连接时是否必须删除现有连接,并且必须由VRDP服务器建立新连接。

    3. desktop
      此值现在是为VirtualBox域保留的。它在主机桌面上显示一个窗口,类似于“sdl”,但使用VirtualBox查看器。就像“sdl”一样,它接受可选的属性display和 fullscreen。

    图形设备使用一个 <listen>来设置设备应该监听客户端的位置。它有一个type指定监听类型的强制属性 。只有vnc, spice和rdp支持<listen> 元素。可用的类型是:

    1. address
      通知图形设备使用address属性中指定的地址 ,该地址将包含IP地址或主机名(通过DNS查询将解析为IP地址)以进行侦听。
      address从1.3.5开始,为了使用配置文件中的地址, 可以省略该属性。
      为了向后兼容, 该address属性被复制为元素中的listen 属性graphics。如果两者都提供,他们必须是平等的。
    <graphics type='vnc' port='6210' autoport='no' listen='0.0.0.0'>
      <listen type='address' address='0.0.0.0'/>       #可以省略
    </graphics>
    
    1. network
      这用于network 从libvirt配置的网络列表中指定属性中的现有网络。将检查指定的网络配置以确定合适的监听地址,并将地址存储在address 属性中的实时XML中。
    <graphics type='spice' autoport='yes'>
      <listen type='address'/>
      <image compression='off'/>
    </graphics>
    
    1. socket(仅限QEMU)
      这种侦听类型告诉图形服务器在unix套接字上侦听。属性socket包含unix套接字的路径。如果省略这个属性,libvirt会为你生成这个路径。由图形类型vnc和spic支持。
      为了vnc图形向后兼容元素socket中第一个listen元素的属性被复制为socket属性graphics 。如果graphics元素包含一个socket 属性,所有listen元素都被忽略。

    2. none(仅限QEMU)
      这个监听类型没有任何其他的属性。Libvirt支持通过我们的API virDomainOpenGraphics()和virDomainOpenGraphicsFD()传递文件描述符。如果使用这个类型并且图形设备不在任何地方监听,则不允许其他监听类型。您需要使用两个API中的一个将FD传递给QEMU才能连接到此图形设备。由图形类型vnc和spic支持。

    相关文章

      网友评论

          本文标题:libvirt 域xml格式---图形设备

          本文链接:https://www.haomeiwen.com/subject/gstqnxtx.html