Citrix Hypervisor

製品の技術概要

Citrix Hypervisorは、業界で高く評価されている、費用対効果の高いデスクトップ、サーバー、およびクラウド仮想化インフラストラクチャのプラットフォームです。Citrix Hypervisorでは、あらゆる規模またはタイプの組織が、今日のデータセンター要件に合わせてコンピューティングリソースを集約して仮想ワークロードに変換できます。シームレスな方法でワークロードをクラウドに移行することができます。

Citrix Hypervisorの主な機能は次のとおりです:

  • 物理サーバー上に複数の仮想マシン(VM)を集約できます。
  • 管理すべきディスクイメージの数を削減できます。
  • 既存のネットワークおよびストレージインフラストラクチャを容易に統合できます。
  • 実行中の仮想マシンをCitrix Hypervisorホスト間でライブマイグレーションすることで、ダウンタイムなしで保守作業を行えます。
  • 高可用性機能を使用して、障害発生時に、そのサーバー上の仮想マシンをほかのサーバー上で再起動するためのポリシーを設定できます。
  • 幅広い仮想インフラストラクチャに対応する、汎用性の高い仮想マシンイメージを作成できます。

仮想化とハイパーバイザー

仮想化、つまりハードウェア仮想化は、単一の物理コンピューター上で複数の仮想マシンを個別に実行する方法です。これらの仮想マシン上で実行されるソフトウェアは、基になるハードウェアリソースから分離されます。これによって最新の強力なサーバーで利用可能な物理リソースが最大限に活用されるため、サーバーの展開に必要な総所有コスト(TCO)を削減することができます。

ハイパーバイザーはソフトウェアの基本的な抽象化レイヤーで、CPUスケジューリングなどの下位レベルタスクや仮想マシンのメモリ分離などを行います。ハイパーバイザーは、ハードウェアの抽象化レイヤーを仮想マシンに提供し、ネットワーク、外部ストレージデバイス、ビデオなどの処理は行いません。

主要コンポーネント

ここでは、Citrix Hypervisorのしくみの概要を説明します。Citrix Hypervisorの主要コンポーネントについては、次の図を参照してください:

アーキテクチャとコンポーネント

ハードウェア

ハードウェアレイヤーには、CPU、メモリ、ネットワーク、およびディスクドライブなどの物理サーバーコンポーネントが含まれます。

サポートされているすべてのゲストOSを実行するには、Intel VTまたはAMD-Vをサポートする、64ビットx86ベースのCPUが1つまたは複数必要です。Citrix Hypervisorのホストシステム要件について詳しくは、「システム要件」を参照してください。 Citrix Hypervisorの認定済みのハードウェアおよびシステムをすべて示す一覧については、ハードウェア互換性リスト(HCL)を参照してください。

Xenハイパーバイザー

Xen Projectハイパーバイザーは、オープンソースのタイプ1またはベアメタルハイパーバイザーです。Xenハイパーバイザーを使用すると、単一のオペレーティングシステムまたは異なるオペレーティングシステムの複数のインスタンスを、単一のコンピュータ(ホスト)上で並行して実行できます。Xenハイパーバイザーは、サーバー仮想化、IaaS(Infrastructure as a Service)、デスクトップ仮想化、セキュリティアプリケーション、埋め込み、およびハードウェアアプライアンスなど、さまざまな商用アプリケーションとオープンソースアプリケーションの基礎として使用されています。

Citrix Hypervisorは、Xen Projectハイパーバイザーをベースに、Citrixが提供する機能やサポートが追加されています。Citrix Hypervisor 8.2では、Xenハイパーバイザーのバージョン4.13.4が使用されています。

コントロールドメイン

コントロールドメインは、「Domain0」または「dom0」とも呼ばれ、Citrix Hypervisorの管理ツールスタック(「XAPI」とも呼ばれます)を実行するセキュアな特権Linux仮想マシンです。このLinux仮想マシンは、CentOS 7.5ディストリビューションに基づいています。コントロールドメインは、Citrix Hypervisorの管理機能を提供するほか、ネットワークやストレージなどのための物理デバイスドライバーも実行します。コントロールドメインは、ハイパーバイザーと通信して、ゲスト仮想マシンを起動または停止するよう指示できます。

ツールスタック

ツールスタック(「XAPI」とも呼ばれます)は、仮想マシンのライフサイクル操作、ホストおよび仮想マシンのネットワーク、仮想マシンストレージ、およびユーザー認証を制御するソフトウェアスタックです。また、Citrix Hypervisorリソースプールを管理することもできます。 XAPIにより提供される管理APIについてはドキュメントが公開されており、このインターフェイスは仮想マシンやリソースプールを管理するためのすべてのツールで使用されます。詳しくは、https://developer.cloud.com/citrixworkspace/citrix-hypervisor/docs/overviewを参照してください。

ゲストドメイン(VM)

ゲストドメインは、dom0のリソースを要求する、ユーザーが作成した仮想マシンです。サポートされているディストリビューションの詳細な一覧については、「サポートされるゲストオペレーティングシステム、仮想メモリ、および仮想ディスクのサイズ制限」を参照してください。

完全な仮想化

完全な仮想化(「ハードウェア支援による仮想化」とも呼ばれます)では、ホストCPUの仮想化拡張機能を使用してゲストを仮想化します。完全に仮想化されたゲストでは、カーネルのサポートが不要になります。このようなゲストはハードウェア仮想マシン(HVM)と呼ばれます。HVMには、メモリと特権操作のためにIntel VTまたはAMD-Vのハードウェア拡張機能が必要です。Citrix Hypervisorは、Quick Emulator(QEMU)を使用して、BIOS、IDEディスクコントローラー、VGAグラフィックアダプター、USBコントローラー、ネットワークアダプターなどのPCハードウェアをエミュレートします。ディスクやネットワークへのアクセスなど、ハードウェアが重要となる操作のパフォーマンスを向上させるために、HVMゲストにはCitrix Hypervisorツールがインストールされています。詳しくは、「ハードウェア仮想マシン上の準仮想化」を参照してください。

通常、HVMは、カーネルを変更して仮想化が認識されるようにすることが不可能な、Microsoft Windowsなどのオペレーティングシステムを仮想化する場合に使用します。

ハードウェア仮想マシン上の準仮想化 (PV on HVM)

ハードウェア仮想マシン上の準仮想化(PV on HVM)には、準仮想化と完全なハードウェア仮想化が混在しており、特別に最適化された準仮想化ドライバーを使用して、HVMゲストのパフォーマンスを向上させることを主な目的とします。このモードでは、最新プロセッサのx86仮想コンテナ技術により良好なパフォーマンスが得られます。ただし、これらのゲストでのネットワークアクセスおよびストレージアクセスは、カーネルに組み込まれたドライバによりPVモードで行われます。

Citrix HypervisorのPV on HVMモードでは、WindowsおよびLinuxのディストリビューションを使用できます。PV on HVMを使用するサポート対象ディストリビューションの一覧については、「ゲストオペレーティングシステムのサポート」を参照してください。

XenServer VM Tools

XenServer VM Toolsには従来型デバイスエミュレーションのようなオーバーヘッドがなく、高パフォーマンスのI/Oサービスが提供されます。

  • Windows向けXenServer VM Tools(旧称Citrix VM Tools)は、I/Oドライバー(準仮想化ドライバーまたはPVドライバーともいいます)と管理エージェントで構成されています。

    I/Oドライバーにはフロントエンドストレージ、ネットワークドライバー、および低レベル管理インターフェイスが含まれています。準仮想化ドライバーは、エミュレートされたドライバーに置き換わり、仮想マシンとCitrix Hypervisorソフトウェア間の高速トランスポートを提供します。

    管理エージェント(ゲストエージェントともいいます)は、高レベルの仮想マシン管理機能を備えており、すべての機能をXenCenterに提供します(Windows仮想マシンの場合)。

    仮想マシンが完全にサポートされる構成にするには、各Windows仮想マシンにWindows向けXenServer VM Toolsをインストールする必要があります。仮想マシンは、Windows向けXenServer VM Toolsがなくても機能しますが、I/Oドライバー(PVドライバー)がインストールされていないと、パフォーマンスが大幅に低下します。

  • Linux向けCitrix VM Toolsには、仮想マシンに関する追加情報をホストに提供するゲストエージェントが含まれています。動的メモリ制御(DMC:Dynamic Memory Control)を有効にするには、Linux仮想マシンごとにゲストエージェントをインストールします。

注:

Red Hat Enterprise Linux 8、Red Hat Enterprise Linux 9、Rocky Linux 9、またはCentOS Stream 9 VMでは、Dynamic Memory Control(DMC)機能を使用できません。これらのオペレーティングシステムは、Xenハイパーバイザーによるメモリバルーニングをサポートしていないためです。

詳しくは、「XenServer VM Tools」を参照してください。

主な概念

リソースプール

Citrix Hypervisorでは、リソースプールを使用することで、複数のサーバーとそれらの共有ストレージを単一のエンティティとして管理できます。リソースプールを使用すると、仮想マシンを別のCitrix Hypervisorホストに移動して実行できるほか、すべてのサーバーがネットワークとストレージの共通フレームワークを共有できるようになります。1つのプールには、互換性のあるハードウェアを持ち、同じバージョンのCitrix Hypervisorソフトウェア(適用されたパッチも含む)を実行するサーバーを最大で64台まで追加できます。詳しくは、「ホストとリソースプール」を参照してください。

リソースプールの概要

Citrix Hypervisorのリソースプールには、XAPIによって実装されるプライマリ/セカンダリアーキテクチャが採用されています。XAPIコールは、プールマスター(プライマリ)からプールメンバー(セカンダリ)に転送されます。プールメンバーはプールマスターに対してDBリモートプロシージャコール(RPC)を行います。プールマスターは、プール内のリソースの統合とロックを行い、すべての制御操作を処理します。メンバーホストは、HTTPとXMLRPCを使用してマスターと通信しますが、(同じチャネルを介して)ディスクのミラーリング(ストレージの移行)を使用して相互に通信することができます

ストレージリポジトリ

Citrix Hypervisorのストレージターゲットは、ストレージリポジトリ(SR)と呼ばれます。ストレージリポジトリには、仮想ディスクの内容を含む仮想ディスクイメージ(VDI)が格納されます。 ローカル接続のSATA、SCSI、NVMe、およびSASドライブ、そしてリモート接続のiSCSI、NFS、SAS、SMBおよびファイバチャネルに対するサポートが組み込まれているため、目的に応じたさまざまなストレージリポジトリをホストで使用できます。ストレージリポジトリとVDIの抽象化によって、シンプロビジョニング、VDIスナップショット、高速複製などの高度なストレージ機能を、サポートされているストレージターゲット上で提供できるようになります。

ストレージリポジトリの概要

各Citrix Hypervisorホストでは、複数の異なる種類のストレージリポジトリを同時に使用することができます。これらのストレージリポジトリは、ホスト間で共有したり、特定のホスト専用にしたりできます。共有ストレージは、定義済みのリソースプール内の複数のホスト間でプール(共有)されます。共有されたストレージリポジトリは、プールの各ホストとネットワークで接続されている必要があります。リソースプールでは、すべてのホストが少なくとも1つの共有ストレージリポジトリを使用している必要があります。共有ストレージを複数のプール間で共有することはできません。

ストレージリポジトリの操作方法について詳しくは、「ストレージの構成」を参照してください。

ネットワーク

アーキテクチャレベルでは、ネットワークエンティティを表す3つの種類のサーバー側ソフトウェアオブジェクトがあります。以下のオブジェクトを使用します。

  • PIF(Physical Interface)は、dom0内で使用されるソフトウェアオブジェクトであり、ホスト上の物理インターフェイスを表します。PIFオブジェクトは、名前と説明、UUID、対応するNICのパラメーター、および接続先のネットワークとサーバーという属性を持ちます。
  • VIF(Virtual Interface)は、dom0内で使用されるソフトウェアオブジェクトであり、仮想マシン上の仮想インターフェイスを表します。VIFオブジェクトは、名前と説明、UUID、および接続先のネットワークと仮想マシンという属性を持ちます。
  • ネットワークは、ネットワークホスト上のネットワークトラフィックをルーティングするために使用されるホストの仮想イーサネットスイッチです。ネットワークオブジェクトは、名前と説明、UUID、および接続先のVIFとPIFの集合という属性を持ちます。

ネットワークの概要

Citrix Hypervisor管理APIでは、以下の操作が可能になります:

  • ネットワークオプションの設定
  • 管理操作に使用するNICの制御
  • VLANやNICボンディングなどの高度なネットワーク機能の作成

Citrix Hypervisorでネットワークを管理する方法について詳しくは、「ネットワーク」を参照してください。

関連アドオンおよびアプリケーション

Xenハイパーバイザーはコアレベルで動作しますが、Citrix Hypervisorでは、アドオンに関連した、ハイパーバイザーに依存しないアプリケーションとサービスが提供されるため、仮想化機能が充実しています。

アドオンとアプリケーションの概要

  • XenCenter

    仮想マシン管理用のWindows GUIクライアント。管理APIに基づいて実装されます。XenCenterは、複数のCitrix Hypervisorホスト、 リソースプール、およびこれらに関連付けられた仮想インフラストラクチャ全体を管理するための、快適な操作性をユーザーに提供します。

  • ワークロードバランス(WLB)

    ワークロードバランスは、リソースプール内の最適なサーバーに仮想マシンを移行することでプールのワークロードを分散させるための機能で、ワークロードバランス仮想アプライアンスにより提供されます。詳しくは、「ワークロードバランス」(/ja-jp/citrix-hypervisor/wlb.html)を参照してください。

  • Citrixライセンスサーバー

    特定のサーバーのライセンスを要求するためにXenCenterが接続するLinuxベースのアプライアンス。

  • Citrix Hypervisor Conversion Manager(XCM)

    既存のVMware仮想マシンを同等のネットワークおよびストレージ接続を備えたCitrix Hypervisor仮想マシンに変換できる仮想アプライアンス。詳しくは、「Conversion Manager」を参照してください。

  • Citrix Provisioning

    Provisioning Services。共通イメージからのPXEブートをサポートします。Citrix Virtual DesktopsおよびCitrix Virtual Appsで広く使用されています。詳しくは、「プロビジョニング」を参照してください。

  • Citrix Virtual Desktops

    Windowsデスクトップに特化した仮想デスクトップインフラストラクチャ(VDI)製品。Citrix Virtual Desktopsでは、XAPIを使用して、プール内に複数のホストが含まれる構成のCitrix Hypervisorを管理します。詳しくは、「Citrix Virtual Apps and Desktops」を参照してください。

  • OpenStack/CloudStack

    パブリック/プライベートクラウドを構築するためのオープンソースソフトウェア。管理APIを使用してXenServerを制御します。詳しくは、https://www.openstack.org/またはhttps://cloudstack.apache.org/を参照してください。

製品の技術概要