実際のハードウェア上のQXL仮想グラフィックスカード

SPICE RedHatデスクトップ仮想化のスパイスを消化し続けます。 この注では、SPICEサーバーはVNCサーバーの代替としてのみ検討されます;また、 Fedora 17オペレーティングシステムおよびUbuntu 12.04 Precise Pangolinファミリーのオペレーティングシステム( LinuxMintなど)でのチューニングの実験も検討します。



QXL vs. Vnc



QXL仮想グラフィックスカードは、もともとKVMエミュレータで使用するために開発され、SPICEプロトコルによるグラフィックス出力を改善しました。 最近、仮想QXLビデオカードを実際の機器で使用して、VNCサーバーの代わりとして、 Xサーバーの制御下でSPICEプロトコルを介してネットワーク経由でサーバー画面にリモートアクセスを提供できます。



VNCサーバーを起動するには、ローカルで実行する必要があり、動作するためにビデオカードが必要なXサーバーが必要です。 VNCサーバーとは異なり、SPICEサーバーはQXL仮想ビデオカードドライバーに統合されているため、実際のビデオカードなしでXサーバーを起動できます。



ビデオカードを使用せずにコンピューターで作業すると、構成と使用のコストを削減するだけでなく、Vt-dおよびIOMMUテクノロジを使用して、インストールされているすべてのPCIビデオカードを仮想マシンに転送できます。



QXL仮想グラフィックスカードには、使用を決定する際に考慮しなければならない制限がいくつかあります。

  1. 画像出力の作業は、グラフィックプロセッサとビデオカードメモリから中央処理装置とコンピュータRAMに転送され、パフォーマンスに影響を与えます。 ただし、コンピュータープロセッサに複数のコアと十分な量のRAMがある場合、コンピューティングリソースの消費の増加はそれほど顕著ではありません。
  2. ビデオカードからコンピュータへのグラフィックス出力の処理に関する計算の転送により、パフォーマンスが低下するだけでなく、一部の機能にもアクセスできなくなります。 例:ハードウェアレンダリングによる3Dグラフィックアクセラレーション、オーバーレイなどによるビデオアクセラレーションのサポート。 など
  3. Xサーバーが起動するまでダウンロードをデバッグできない。 ロード段階でエラーが発生した場合のデバッグは、SSHまたはコンソール出力を使用してビデオカードをシリアルポートに接続することで実行されます。
  4. VNCサーバーとは異なり、SPICEサーバーにはバグがあり、その本質はQXLの起動の結果としてXKBが落ちるということです。このため、*コマンドを使用して起動するたびにレイアウトを初期化する必要があります。



    setxkbmap -option grp:switch,grp:alt_shift_toggle,grp_led:scroll us,ru
          
          





  5. 仮想マシンとは異なり、実際のコンピューターにはハイパーバイザーを操作するための仮想チャネルがありません。その結果、クリップボードとUSBデバイスの転送を使用できなくなります。
  6. QXLビデオカードをインストールした後、Xサーバーは実際のビデオカードを使用しません。


したがって、仮想QXLビデオカードを使用すると、作業中のコンピューターに直接アクセスするには不便ですが、仮想化ノードなどのサーバーで使用できます。 ただし、必要に応じて、作業コンピューターを仮想化し、必要なUSB機器をリモートで転送して、リモートアクセスを確保できることに注意してください。



インストールとセットアップ



例として、Ubuntu 12.04およびFedora 17を実行している仮想マシン上でSPICEサーバーを介したリモートアクセスのセットアップに関する実験を行い、セットアップ後にビデオカードを削除します。 仮想マシンの実験に成功したら、実際のハードウェアに移行できます。



実験を開始する前に、Ubuntu 12.04ファミリーのGNU / Linuxオペレーティングシステムを実行しているコンピューターで、次に(Ubuntu) repo.umvirt.orgリポジトリに接続します。

 sudo -i #  root cd /etc/apt/sources.list.d #       wget -q -O- http://repo.umvirt.org/umvirt.key | sudo apt-key add - #   wget http://repo.umvirt.org/umvirt_precise.list #        Ubuntu 12.04 apt-get update #   
      
      





重要:現在、リポジトリにはamd64プラットフォーム専用のパッケージが含まれています!



Fedora17(以降Fedora)を実行しているコンピューターでは、リポジトリに接続する必要はありません。 他のバージョンとディストリビューションはテストされていません。



QXLビデオカードの使用を開始するには、次のものが必要です。

  1. QXLドライバー(少なくともバージョン0.0.17)とSPICEサーバーをインストールします

    Fedora:

     yum -y install xorg-x11-server-Xspice
          
          





    Ubuntu:

     apt-get install xserver-xorg-video-qxl xserver-xspice
          
          





  2. リモートコンソールアクセス用のSSHをインストールして構成します。

    Fedora:

     yum -y install openssh-server service sshd start # sshd chkconfig --level 345 sshd on #  sshd system-config-firewall # firewall  -
          
          





    Ubuntu:

     apt-get install openssh-server
          
          





    SSH接続が機能する場合は、次の手順に進みます。

  3. /etc/X11/xorg.confファイルのXサーバー設定で、QXLビデオカードとSPICEサーバー設定の使用を明示的に指定します

     Section "Device" Identifier "XSPICE" Driver "spiceqxl" # Enable regular port. Either this or SpiceTlsPort, or one of XSPICE_PORT or # XSPICE_TLS_PORT environment variables must be specified # Defaults to 5900. Option "SpicePort" "5900" # Do not request any password from client Option "SpiceDisableTicketing" "0" # Set password client will be required to produce. Option "SpicePassword" "password" EndSection Section "InputDevice" Identifier "XSPICE POINTER" Driver "xspice pointer" EndSection Section "InputDevice" Identifier "XSPICE KEYBOARD" Driver "xspice keyboard" EndSection Section "Monitor" Identifier "Configured Monitor" EndSection Section "Screen" Identifier "XSPICE Screen" Monitor "Configured Monitor" Device "XSPICE" DefaultDepth 24 EndSection Section "ServerLayout" Identifier "XSPICE Example" Screen "XSPICE Screen" InputDevice "XSPICE KEYBOARD" InputDevice "XSPICE POINTER" EndSection # Prevent udev from loading vmmouse in a vm and crashing. Section "ServerFlags" Option "AutoAddDevices" "False" EndSection
          
          





    ファイルが存在しない場合は、作成する必要があります。 ovazhaの場合、SSHとクリップボードを介して、上記のコードをファイルに貼り付けることができます。

  4. クライアントのマシンに必要なパッケージをインストールします

    Fedora:

     yum -y install spice-gtk-tools spice-client
          
          





    Ubuntu:

     apt-get install spice-client spice-client-gtk
          
          





  5. クライアントをSPICEサーバーに接続します 。 たとえば、192.168.122.10にあるSPICEサーバーにアクセスするには、次のコマンドを実行します。

     spicec -h 192.168.122.10 -p 5900 -w password
          
          





    または

     spicy
          
          







SPICEサーバーがビデオカードなしでXサーバーを起動できることを証明するために、FedoraおよびMint 13 Maya(Ubuntu 12.04ファミリー)のスクリーンショットと、lspciコマンドを使用した確認用のPCIデバイスのリストを提供します。

  1. Fedora 17

  2. ミント13マヤ



*レイアウトの読み込みを自動化する方法をここに示します。



All Articles