機械翻訳について

第7章 仮想マシンの理解

Oracle VMの目的は、仮想マシンの実行が可能なインフラストラクチャを提供し、管理、構成、メンテナンスを容易にすることです。 この章では、サポートされる様々なタイプの仮想マシン、仮想マシンがOracle VM環境内でどのように動作するか、仮想マシンをどのように作成、移動および移行できるか、仮想マシンのリソースのプロビジョニング方法について説明します。

ドメインゲストおよび仮想マシンは、ほぼ同じ意味に使用されていますが、若干の違いがあります。 ドメインは、構成可能な一連のリソースで、メモリー、仮想CPU、仮想マシンを実行するネットワーク・デバイスおよびディスク・デバイスを含みます。 ドメインには、仮想リソースが提供され、他のドメインおよびホスト・サーバー自体とは独立して起動、停止および再起動することができます。 ゲストは、ドメイン内で実行される仮想化されたオペレーティング・システムです。 ゲスト・オペレーティング・システムは、準仮想化ハードウェア仮想化、または準仮想化ドライバを使用したハードウェア仮想化がなされています。 これらの様々な仮想化モードの詳細は、7.1項「仮想化モードまたはドメイン・タイプとは」を参照してください。

同じOracle VM Serverで複数のゲストを実行できます。 仮想マシンは、ゲスト・オペレーティング・システムとそれに関連するアプリケーション・ソフトウェアです。 説明を簡単にするため、ドメイン、ゲストおよび仮想マシンを含むものとして仮想マシンという用語を使用します。 これらは同義語であり、ほぼ同じ意味に使用されます。

仮想マシンにインストールされているオペレーティング・システムはゲスト・オペレーティング・システムと呼ばれます。 Oracle VMでは、Linux、Oracle Solaris、Microsoft Windows(tm)などの様々なゲスト・オペレーティング・システムがサポートされています。 サポートされているゲスト・オペレーティング・システムのリストについては、『Oracle VMリリース・ノート』を参照してください。 ゲスト・オペレーティング・システムのインストールの詳細は、7.2項「仮想マシンにゲストOSがどのようにインストールされるか」を参照してください。

Oracle VM Managerを使用して、次のものを使用した仮想マシンを作成できます。

  • リポジトリのISOファイル(ハードウェア仮想化のみ)

  • NFS、HTTPまたはFTPサーバー上のマウント済ISOファイル(準仮想化のみ)

  • 仮想マシン・テンプレート(テンプレートのクローニングによる)

  • 既存の仮想マシン(仮想マシンのクローニングによる)

  • 仮想アプライアンス。

仮想マシンでは、準仮想化ゲスト用のマウント済ISOファイルを除く、これらのインストール・リソースの大部分が、Oracle VM Managerによって管理される記憶域リポジトリに存在する必要があります。 これらのリソースがリポジトリ内にどのように格納されるかの詳細は、7.3項「仮想マシン・リソースが格納される場所」を参照してください。

ネットワーク接続を必要とする仮想マシン、またはオペレーティング・システムのインストールを実行するためのネットワーク接続を必要とする準仮想化マシンを作成する場合は、Oracle VM Serverで定義したネットワークにブリッジできる仮想ネットワーク・インタフェースを生成する必要があります。 仮想マシンのネットワークのプロビジョニングの詳細は、7.4項「仮想マシンに使用可能なネットワーク」を参照してください。

構成が同一の複数の仮想マシンが必要な場合は、仮想マシンまたはテンプレートのクローニングを考慮することもできます。 このプロセスの詳細は、7.6項「クローニングの仕組み」を参照してください。 同様に、サーバーまたはサーバー・プール間で仮想マシンの移動(このプロセスは移行とも呼ばれます)が必要になる場合もあります(詳細は、7.7項「仮想マシンをどのように移動または移行できるか」を参照してください)。

Oracle VMでは、Oracle VM Managerとゲスト・オペレーティング・システム間でメッセージの送信を可能にするメッセージング機能が提供されます。 これにより、仮想マシンが起動される構成アクションの自動化、仮想マシンの内部状態の情報の取得、Oracle VM環境内の変更に基づいた仮想マシン内のイベントのトリガーが可能になります。 このメッセージング機能の詳細は、7.10項「仮想マシンへのメッセージの送信」を参照してください。

一般に、ソフトウェア・ライセンスの要件により、CPU固定を使用して、仮想マシンがハード・パーティショニングされる必要が生じる場合もあります。 この機能では、仮想マシンを特定の物理CPUに固定して、代替のシステムで実行されないようにできます。 これは高度な機能であり、詳細は、7.16項「仮想マシンCPUのハード・パーティショニングの設定」を参照してください。

7.1 仮想化モードまたはドメイン・タイプとは

仮想マシンは、準仮想化(PVM)またはハードウェア仮想化(HVM)の2つの主要なモードのいずれかで実行されます。 準仮想化モードでは、ゲスト・オペレーティング・システムのカーネルが、仮想環境を認識するように再コンパイルされます。 これによって、ほとんどのメモリー、ディスクおよびネットワーク・アクセスが最大のパフォーマンスで最適化されるため、ほぼネイティブの速度で準仮想化ゲストを実行できます。

ハードウェア仮想化サポートを利用できる(Intel® VTまたはAMD-V™)ときは、そのゲスト・オペレーティング・システムを修正せずに実行できます。 このハードウェア仮想化マシンは、Oracle VM Serverで詳細に監視され、他のゲストまたはdom0との分離に違反する命令が実行されるとトラップされます。 現在の実装では、特定のタイプのゲストとアクセス・タイプにおいてパフォーマンスが低下する場合がありますが、ハードウェアの仮想化によって様々なMicrosoft Windowsオペレーティング・システムとレガシー・オペレーティング・システムを修正せずに実行できます。

3つ目の仮想化モードは、準仮想化ドライバを使用したハードウェア仮想化マシン(PVHVM)です。 このモードはハードウェア仮想化マシンと同様ですが、仮想マシンのパフォーマンスを向上させるために、ゲストのオペレーティング・システムに追加の準仮想化ドライバがインストールされています。

仮想マシンを作成する場合は、次の表のように、仮想マシンの仮想化モード、またはドメインタイプを選択する必要があります。

表7.1 ドメイン・タイプ

ドメイン・タイプ

説明

ハードウェア仮想化マシン(HVM)

ハードウェア仮想化または完全仮想化。 HVMゲスト(ベア・メタルに似ており、インストールISOファイルまたはネットワーク・インストール・サーバーを使用してインストールする必要があります)。

HVMゲストを作成するには、Oracle VM Serverのインストール先サーバーのBIOSで、ハードウェア仮想化を有効にする必要がある場合があります。

準仮想化ドライバを使用したハードウェア仮想化(PVHVM)

HVMと同様ですが、仮想マシンのパフォーマンスを向上させる追加の準仮想化ドライバが含まれます。 準仮想化ドライバの使用の詳細は、「準仮想化ゲストへの変換または準仮想化ドライバのインストール」を参照してください。 このドメイン・タイプは、許容可能なパフォーマンス・レベルでのMicrosoft Windowsゲスト・オペレーティング・システムの実行に使用され、Oracle LinuxおよびOracle Solarisゲスト・オペレーティング・システムの実行にも使用できます。

準仮想化(PVM)

PVMゲストを作成する場合は、仮想マシンの作成元となる、マウントされたISOファイルの場所を指定する必要があります。 準仮想化メソッドを使用して仮想マシンを作成する前に、NFS共有、あるいはHTTPまたはFTPサーバーにISOファイルをマウントします。 マウントされたISOファイルの場所は、作成プロセス中に指定します。

マウントされたISOファイルの作成の詳細は、7.2項「仮想マシンにゲストOSがどのようにインストールされるか」を参照してください。

Oracle Linux 7およびRedHat Enterprise Linux 7の両方でのカーネル制限により、これらのオペレーティング・システムをPVMゲストとして実行することはできません。 そうしようとすると、Oracle VM Manager内から例外が生成され、実行できません。

Oracle VM Server for SPARC (OVM/SPARC)

SPARCプラットフォームでの仮想化は、x86環境内で実行される仮想化と大きく異なるため、Oracle VMでは、個別の仮想化モードを特に区別して、SPARCハイパーバイザが使用されるように指定します。 Oracle VM Server for SPARCで構成されるサーバー・プールで実行する仮想マシンを作成する場合、このモードは構成中に使用されます。


ノート

PVHVMまたはPVMを作成する場合は、すべてのディスク(それらを使用するように仮想マシンが構成されている)が準仮想化デバイスであることを確認する必要があります。 個別仮想ディスクを適切に構成するステップの説明と説明は、Oracle VM管理者ガイド「準仮想化ゲスト・ディスク・デバイスが認識されない」を参照してください。

準仮想化ゲストへの変換または準仮想化ドライバのインストール

パフォーマンスを最適化するために、ハードウェア仮想化マシン準仮想化ドライバをインストールできます。 準仮想化ドライバは最適化され、仮想マシンのオペレーティング・システムのパフォーマンスを向上させます。 これらのドライバによって、Oracle VM Serverホスト上でオペレーティング・システムのI/O操作のスループットが高くなります。

ハードウェア仮想化マシンの作成では、ゲスト・オペレーティング・システムにハードウェア用の準仮想化ドライバをインストールする必要がある場合があります。

Oracle Solaris 10およびOracle Solaris 11オペレーティング・システムはハードウェア仮想マシン(HVM)として実行されますが、基礎となるハードウェア・プラットフォーム上にHVMサポート(Intel® VTまたはAMD-V™)が必要です。 デフォルトでは、Oracle Solaris 10またはOracle Solaris 11オペレーティング・システムには、必要な準仮想化ドライバがオペレーティング・システムの一部としてすでにインストールされています。

HVMゲストは継続して使用できますが、準仮想化I/Oドライバが利用されます。 詳細は、My Oracle Support WebサイトのOracle Supportドキュメント757719.1 (ゲスト仮想化モード(HVM、PVMおよびPVHVM)の比較。 構成、モード、検証およびPVHVMへの変換)を参照してください。

https://support.oracle.com/epmos/faces/DocumentDisplay?id=757719.1.

現在の世代のサーバーで最適なパフォーマンスを得るには、HVMまたはPVHVMゲスト・タイプを使用することをお薦めします。 PVMからHVMまたはPVHVMへの変換に関する情報は、「Oracle Support文書757719.1」にあります。

Microsoft Windowsオペレーティング・システムの準仮想化ドライバ(Oracle VM Paravirtual Drivers for Microsoft Windows)をインストールするには、『Oracle VM Paravirtual Drivers for Microsoft Windows』を参照してください。

7.2 仮想マシンにゲストOSがどのようにインストールされるか

仮想マシンには、テンプレート、仮想アプライアンス、ISOファイル、マウント済ISOファイルなど、なんらかの形式のインストール・メディアが必要です。 ドメイン・タイプによって、必要なインストール・ソース・ファイルが若干異なります。 表7.2「仮想マシンのインストール・ソース」に、HVMゲストおよびPVMゲストで使用可能なインストール・ソースをリストします。

表7.2 仮想マシンのインストール・ソース

インストール・ソース

HVM

PVM

テンプレート(クローン)

はい

はい

リポジトリのISOファイル

はい

いいえ

NFS、HTTPまたはFTPサーバー上のマウント済ISOファイル

いいえ

はい

仮想アプライアンス

はい

はい


ISOファイルからHVMゲストを作成するときに、仮想マシンのデプロイ先Oracle VM Serverに示されている記憶域リポジトリに事前にロードされているISOファイルを指定する必要があります。 ISOは、仮想CDROMデバイスとして仮想マシンのBIOS内に構成されます。 起動時、仮想マシンは、通常の物理システムのように仮想CDROMから起動できます。 これらのファイルがリポジトリにどのように格納されるかの詳細は、7.3項「仮想マシンが格納される場所」を参照してください。

ハードウェア仮想化マシンと異なり、準仮想化マシンにはBIOSがなく、カーネルを直接ロードする必要があります。 したがって、仮想マシンでは、起動時にブート可能なカーネルに直接アクセスできる必要があります。 すべてのデプロイメントでネットワークがどのように構成されているかを予測することはできないため、Oracle VM Managerを使用してこのプロセスを管理することはできません。 仮想マシン・ネットワークは、VLANまたは複数のネットワークを使用して管理ネットワークから頻繁に分離されるため、ループバック・マウントされたISOをOracle VM Serverで仮想マシンに直接提示することはできません。 これは、PVMゲストをISOファイルからインストールするには、仮想マシン・ネットワーク上の仮想マシンにアクセス可能なNFS、HTTPまたはFTPサーバーにISOを最初にマウントする必要があります。 ゲストの作成中、マウントされたインストール・メディアにURIを提供するネットワーク・ブート・パスを指定します。 PVMのインストール媒体のベースラインに環境を設定する方法の例は、Oracle VM管理者ガイド「PVMゲスト・インストール用のISOファイルのプロビジョニング」で提供されています

一般的には、仮想マシンは、テンプレートまたは仮想アプライアンスのいずれかを使用してデプロイされます。 テンプレートは、基本的に単一の既存の仮想マシンのクローンです。 このように、事前インストールおよび事前構成済の仮想マシンを迅速にデプロイするために、これらを再利用および配布できます。 仮想アプライアンスはテンプレートに似ていますが、仮想アプライアンスには、複数の仮想マシンを含めることが可能で、汎用のオープン仮想化フォーマットで提供されています。

仮想マシン・テンプレートの使用の詳細は、4.8項「仮想マシン・テンプレートがどのように管理されるか」を参照してください。 仮想アプライアンスの使用の詳細は、4.7項「仮想アプライアンスがどのように管理されるか」を参照してください。 ISOファイルの使用の詳細は、4.9項「ISOファイル(CD/DVDイメージ)がどのように管理されるか」を参照してください。

7.3 仮想マシン・リソースが格納される場所

記憶域リポジトリは仮想マシン・リソースを格納するために使用され、これにより、これらのリソースを各Oracle VM Serverにコピーすることなく、サーバー・プールOracle VM Serverで使用できるようにすることができます。 リポジトリに使用可能な基礎となる記憶域のタイプは、3.9項「仮想マシン・リソースが配置される場所」を参照してください。 記憶域リポジトリおよびそれらのコンテンツの管理方法の詳細は、第4章「リポジトリの理解」を参照してください。

7.4 仮想マシンに使用可能なネットワーク

VNICとは、仮想マシンによってネットワーク・インタフェースとして使用される仮想ネットワーク・インタフェース・カードのことです。 VNICには、MACアドレスが割り当てられます。 各MACアドレスは、仮想マシンで使用される単一の仮想NICに対応します。 VNICは、仮想マシンの作成または編集時に作成できます。 単一の仮想マシンに使用可能なVNICの数に実際に制限はありません。 各VNICは仮想マシンに属する必要があり、独立して存在することはできません。 この要件は、バージョン3.3.1のOracle VMで実装されていました。 以前のバージョンでは、仮想マシンから独立してVNICを作成して、必要に応じてそれらを割り当てることができました。 このアプローチは、混乱を招くことが多く、管理も困難でした。

VNICは、ホストするOracle VM Serverで作成されるネットワーク・ブリッジに自動的に関連付けられます。 サーバー・プール全体で実行されているすべての仮想マシン、またはすべての仮想マシンとパブリック・ネットワーク(インターネットなど)でしか、同じOracle VM Server上で仮想マシンが相互にやり取りできないようにネットワークを構成できます。

MACアドレスはネットワーク上で一意である必要があるため、Oracle VM Managerは、事前定義済の範囲から、各VNICに割り当てるMACアドレスを動的に割り当てます。 Oracle VM Managerは、2つのVNICが同じMACアドレスを持つことができないように試行します。 VNICに割り当てるためにOracle VM Managerが使用するMACアドレスの範囲を変更できます。 この詳細は、『Oracle VM Managerユーザーズ・ガイド』仮想NICに関する項を参照してください。

仮想マシンが一時停止状態の場合は、仮想マシンに使用可能なVNICの数を変更することができないため、注意してください。 一時停止した仮想マシンのVNICを追加または削除しようとすると、例外が発生するか、Oracle VM Managerによってエラーが返されます。

仮想マシンのネットワーク構成は、ゲスト・オペレーティング・システムにあるツールを使用して可能です。 DHCP構成が必要な場合は、同様に、仮想マシン・ネットワークに接続されるネットワークでDHCPサーバーを構成する必要があります。 この理由から、セキュリティが向上する利点にとともに、特に仮想マシン・ネットワークの機能で、完全なネットワーク分離を実現するのに役立つ場合があります。 これは、VLAN、または個別の物理ネットワーク・ポートまたはボンドを使用して可能です。

様々なネットワーク構成およびネットワーク分離の詳細は、第5章「ネットワークの理解」を参照してください。

7.5 仮想マシンがどのように作成されるか

新しい仮想マシンを作成する前に、次のリソースが使用可能なことを確認します。

テンプレートを使用した仮想マシンの作成方法、ISOファイル、物理ディスクまたは仮想ディスクからの仮想マシンの作成の詳細は、『Oracle VM Managerユーザーズ・ガイド』仮想マシンの作成に関する項を参照してください。

仮想マシンにアクセスするには、「Servers and VMs」タブを選択して、ナビゲーション・ツリーで、仮想マシンが作成されているサーバー・プールを選択し、管理ペインの「Perspective」ドロップダウン・リストで「Virtual Machines」を選択します。 操作を行う仮想マシンを表から選択します。 構成情報の詳細を参照するには、表で仮想マシンを開きます。

7.6 クローニングの仕組み

仮想マシンまたはテンプレートをクローニングすると、元の仮想マシンまたはテンプレートに基づいて複数の仮想マシンまたはテンプレートを作成できます。 クローニングには、単純なクローンと高度なクローンの2つの方法があります。

仮想マシンの単純なクローンの構成は、元の仮想マシンと同じです。 仮想マシンの単純なクローンが、元の仮想マシンと正確に同じ構成にならない場合もあります。 たとえば、仮想マシンに仮想CD-ROMデバイスがある場合に、仮想マシンの単純なクローンを作成しても、ISOファイルが添付されている場合は、仮想CD-ROMデバイスはクローニングされません。

仮想マシンの高度なクローンでは、元の仮想マシンの構成と異なるため、クローン・カスタマイザを使用する必要があります。 たとえば、クローン・カスタマイザを使用して、メモリー、仮想CPU数、ネットワーク設定などを変更し、異なるサーバー・プールまたはリポジトリにデプロイできます。

図7.1「仮想マシンまたはテンプレートのクローニング」は、仮想マシンまたはテンプレートのクローン作成処理を表します。

図7.1 仮想マシンまたはテンプレートのクローニング
この図は、仮想マシンまたはテンプレートのクローン作成処理を示しています。

仮想ディスク、ネットワーク、メモリーなどのクローン・パラメータを変更するには、クローン・カスタマイザを作成し、そのクローン・カスタマイザを使用してクローニングを実行してください。 クローン・カスタマイザを作成して、ネットワーク、仮想ディスク、ISOリソースなどのクローン・パラメータを設定できます。 クローン・カスタマイザは、仮想マシンまたはテンプレートを移動する際にも使用できます。 クローニング中に使用するクローン・カスタマイザをどのように作成できるかの例は、『Oracle VM Managerユーザーズ・ガイド』クローン・カスタマイザの管理に関する項を参照してください。

コールド・クローンは、停止した仮想マシンから作成されるクローンです。 コールド・クローンでは、安全で一貫性のある状態の仮想ディスクを持つ仮想マシンのクローンが実行されます。 これは、元の仮想マシンから仮想マシンまたはテンプレートを作成する場合に役立ちます。

ホット・クローンは、実行中の仮想マシンから作成されます。 ホット・クローンはOCFS2ベースのファイル・システムでのみ使用できるため、ソース・リポジトリおよびターゲット・リポジトリにはiSCSIベースまたはファイバ・チャネル・ベースの記憶域のいずれかを使用する必要があります。 さらに、Oracle VM Managerでは、仮想ディスクのクローン・タイプがシン・クローンの場合にのみ、仮想マシンのホット・クローンを作成できます。

ノート

ホット・クローンでは一貫性のないディスク状態のクローンが作成され、その使用は、たとえば常に稼働することが要求され停止できない仮想マシンにおける仮想マシンのスナップショットまたはバックアップとしての使用に限定する必要があります。 ホット・クローニングされた仮想マシンを使用する場合、最初にfsckなどのディスク修復ユーティリティを使用して任意の仮想ディスクを修復する必要があります。 Oracleデータベースを実行している仮想マシンには、ホット・クローニングを使用しないでください。 かわりに、rmanユーティリティなどのOracle Databaseのバックアップ計画を使用する必要があります。

シン・クローンでは、必要な仮想マシンのファイルをコピーするのみで、空のディスク領域は無視するため、クローニング・プロセスでさらに多くの処理をすばやく完了できます。 このプロセスでは、OCFS2ファイル・システム内で再フリンク機能を使用して、迅速なクローニング方法が可能です。 その結果、シン・クローニングは、同じOCFS2ベースのリポジトリに対するクローニングを行う場合、および記憶域リポジトリに使用される記憶域が汎用的でない場合(Sun 7000またはNetApp Storage Connectプラグインなど)にのみ使用できます。 シン・クローニングは、最も速くて最も効率的なクローニング方法です。

ノート

汎用の記憶域では物理ディスクのシン・プロビジョニングはサポートされていません。

クローニングは、他の2つのファイル・コピー方法(スパース・コピーおよび非スパース・コピー)を使用して実行することもできます。 これらの2つのクローニング方法は、異なるリポジトリに対してクローニングを行う場合および記憶域リポジトリに使用される記憶域で汎用的なStorage Connectプラグインが使用される場合に使用できます。 これらのクローニング方法はシン・クローニングより低速ですが、より用途が広いです。

スパース・コピーでは、指定されたディスク領域全体ではなく、実際に使用されているディスク領域の量のみを使用します。 このプロセスでは、使用中のブロックのみをコピーし、ディスク上の未使用のブロックは無視します。 これにより、非スパース・コピーよりも迅速になり、ディスク領域の最初の使用が効率化しますが、このプロセスはシン・クローニングほど高速ではありません。 スパース・コピーでは、必要なすべてのディスク領域を即座に割り当てないため、ディスク・サイズがリポジトリ・サイズを最終的に超える(仮想マシンが実行されており、同じリポジトリ内で実行中のすべての仮想マシンでI/Oエラー発生する原因となる)可能性に対して計画しておくことが重要です。 したがって、スパース・コピーを使用する場合は、ホストされているすべての仮想マシンのディスク領域の要件に対応できるように、リポジトリ・サイズが十分にあることを確認してください。

ノート

制御ドメインがOracle Solaris 11.2以上を実行している場合、スパース・コピーはSPARC環境でのみ使用できます。

非スパース・コピーでは、ブロック・レベルのディスクのコピーが実行されるため、未使用のブロックでもクローニングされます。 これは、ディスク・ブロックの使用の有無に関係なく、仮想マシンのクローニング時に仮想マシン・ディスクが完全に割り当てられることを意味します。 このタイプのクローンの利点では、仮想マシンに必要なディスク領域の量を常に確認できることで、そこにホストすることにより、リポジトリに使用可能なディスク領域を超えることがないことです。

7.7 仮想マシンをどのように移動または移行できるか

Oracle VM内での仮想マシンの移動と移行は、次のように個別の操作です。

移動

仮想マシンの構成と仮想ディスクが存在するリポジトリの変更です。

仮想マシンは、停止した場合にのみ移動できます。

移行

使用可能なOracle VM Serverとサーバー・プールに関して、仮想マシンが実行される場所の変更です。

仮想マシンは、実行中はまたは停止している場合に移行できます。 仮想マシンが実行中の場合、移行はライブ・マイグレーションと呼ばれます。 仮想マシンがローカル記憶域のローカル・リポジトリにホストされている場合は、実行中の場合にのみ移行できます。 ライブ・マイグレーションは、ターゲットのOracle VM Serverが同じリリース番号以上の場合にのみサポートされます。 x86プラットフォームで実行されている仮想マシンの場合、仮想マシンが実行されているOracle VM Serverよりも前のメジャー・リリース番号Oracle VM Serverに仮想マシンをライブ・マイグレーションしようとすると、ルール例外が生成されます。

エクスポート中

Oracle VM Exporter Applianceを使用して仮想マシンをOracle Cloud Infrastructureにエクスポートします。

エクスポートできるのは、サーバー・プール内の停止している仮想マシンまたは未割当ての仮想マシンのみです。

仮想マシンの移動

移動先の仮想マシンを作成する場合に、移動元の仮想マシンがテンプレートとして使用されるため、多くの点で、移動はクローニング・プロセスと似ています。 移動先の仮想マシンの作成が完了すると、移動元の仮想マシンは削除されます。

この理由から、仮想マシンを移動するには、クローン・カスタマイザを使用する必要があります。 移動プロセス中は、クローン・カスタマイザを次の目的で使用できます。

  • 仮想マシン・ディスクと仮想マシン構成ファイルの場所を別の記憶域リポジトリに変更する。

ネットワーク情報は、仮想マシンの移動時には変更されないため、ネットワーク間でVNICを移動することはできません。 クローン・カスタマイザで行ったネットワークの変更はすべて、仮想マシンの移動時には無視されます。 これにより、構成ファイルおよび記憶域を異なるリポジトリに移動する際に、仮想マシンを元の状態で保存できます。

共有仮想ディスクまたはアタッチされている仮想CD-ROMデバイスを共有している仮想マシンを移動する場合、これらのオブジェクトのデータは、リポジトリ間で移動されるのではなく、実際にコピーされることを理解することも重要です。 これは、オブジェクトが共有可能な場合、移動中でない別の仮想マシンが、そのオブジェクトを必要としている可能性があるかどうかを判断できないためです。 したがって、アタッチされたISOまたは共有仮想ディスクが仮想マシンにあり、移動操作を実行する際、これらのオブジェクトが使用されないことがわかっている場合は、ソース・リポジトリから手動で削除することもできます。

ローカルリポジトリ間の仮想マシンの移動。仮想マシンで仮想ディスクが使用されている場合、Oracle VM Managerでは、その仮想マシンをローカル・リポジトリ間で直接移動できません。 「仮想マシンの移行」で説明されているように、ライブ・マイグレーションを実行することで、仮想マシンが実行中でも、仮想マシンをローカル・リポジトリ間で効果的に移動できます。 ただし、仮想マシンが停止している場合は、その仮想マシンと仮想ディスクを移動元のOracle VM Serverから共有リポジトリに移動する必要があります。 これにより、仮想マシンと仮想ディスクを共有リポジトリから、移動先のOracle VM Serverのローカル・リポジトリに移動できます。

たとえば、2つのOracle VM Server (サーバーAとサーバーB)で構成されるサーバー・プールが環境内にあるとします。 両方のサーバーは、相互にローカルのディスクにホストされているリポジトリを使用します。 サーバーAは、サーバーBにローカルのリポジトリにはアクセスできません。 一方、サーバーBは、サーバーAにローカルのリポジトリにはアクセスできません。

サーバーAでは、仮想ディスクを使用する仮想マシン、または仮想マシンにディスクとして提示される記憶域のファイルがあります。 サーバーAのリポジトリからサーバーBのリポジトリに仮想マシンを移動するには、サーバーAとサーバーBの両方がアクセスできる中間の共有リポジトリを使用する必要があります。

関連情報 

仮想マシンの移行

ライブ・マイグレーションは、同じサーバー・プール内のOracle VM Server間でのみ実行できます。 仮想マシンの仮想ディスクが共有記憶域に存在する場合、サーバー・プール内の各Oracle VM Serverは仮想ディスクにアクセスできます。 その結果、仮想ディスクを別のリポジトリに変更する必要はないため、このシナリオでの仮想マシンのライブ・マイグレーションは簡単になります。

ただし、ローカル記憶域を使用するOracle VM Server間のライブ・マイグレーションを実行するには、移行元のサーバーのローカル・リポジトリから移行先のサーバーのローカル・リポジトリに仮想ディスクを移行する必要もあります。 ローカル記憶域は各Oracle VM Serverに固有のため、仮想ディスクを移行することなく、仮想マシンをOracle VM Server間で移行することはできません。

仮想マシンの記憶域の移行が含まれるライブ・マイグレーションには、次の制限が適用されます。

  • 仮想マシンが実行されているOracle VM Serverは、x86プラットフォームにホストされている必要があります。 Oracle VM Agentは、ライブ・マイグレーション・プロセス用にOCFS2ファイル・システムに組み込まれている機能を使用します。 ライブ・マイグレーションはOCFS2ファイル・システムに依存しているため、この機能はSPARCベースのシステムでは使用できません。

  • 移行を完了するには、ターゲット・リポジトリがすでに存在しており、ターゲットOracle VM Serverにローカルで、空きディスク領域がある必要があります。

  • 仮想マシンの移行元となるソース・リポジトリには、操作を正常に完了するための十分なディスク領域が必要です。 これは、通常は仮想マシンで必要なディスク領域の少なくとも2倍のサイズに一致します。 たとえば、仮想マシンとその仮想ディスクで50 GBのディスク領域を使用している場合、ソース・リポジトリ・ファイル・システムでは、少なくとも100 GBの空きディスク領域が必要です。

ライブ・マイグレーション用のOracle VM Managerのルール

Oracle VMリリース3.4.2では、ライブ・マイグレーションの失敗と、それによる仮想マシン環境への問題を防止するために、次のルールが適用されていました。

Oracle VM Managerでは、xen-4.3.0-55.el6.22.18より前のXenバージョンのOracle VM Serverのインスタンスとの間で、仮想マシンのライブ・マイグレーションを実行することはできません。 このルールはどのゲストOSにも適用されます。

ヒント

Xenバージョンを確認するには、Oracle VM Serverで次のコマンドを実行します。

# rpm -qa | grep "xen" 

Oracle VM Managerでは、特定の場合にライブ・マイグレーションを防止するルールに加えて、操作により、サーバー・プール内の仮想マシンでリソースが使用できなくなる可能性のあるライブ・マイグレーションを防止するための複数の保護手段が用意されています。 たとえば、ローカルにホストされているISOが仮想マシンで使用されている場合、ライブ・マイグレーションが失敗することがあります。 同様に、ローカルにホストされている仮想ディスクが、同じOracle VM Server上の2つ以上の仮想マシンで共有されている場合は、他の仮想マシンに影響を与えることなく、ローカルにホストされている仮想ディスクを移行することはできないため、これらの仮想マシンのライブ・マイグレーションも失敗します。 ライブ・マイグレーションが失敗する場合、ターゲット・リポジトリが自動的にクリーンされます。

Oracle VM Server間での仮想マシンの移行中、Oracle VM Managerでは、仮想マシンで使用されているLUNが実際に使用できることを確認するために、ターゲットOracle VM Serverのテストも実行します。 これには、パスが存在することのチェックと、パスが実際に稼働していることのチェックも含まれます。

記憶域を使用したライブ・マイグレーション用に選択されたターゲットOracle VM Serverが移行中に使用できなくなった場合は、ロールバック・プロセスが試行され、移行前の状態に環境を戻します。 ロールバック全体のプロセス中にターゲットOracle VM Serverがオフラインの状態の場合は、環境を適切に戻すのに手動によるステップが必要になることがありますが、これらのステップが実行されていない場合でも、環境は正常に機能します。 このロールバック処理については、Oracle VM管理者ガイド「失敗したローカル仮想マシンの移行からの回復」セクションで詳細に説明しています。

仮想マシンの移行の追加の考慮事項

複数の仮想マシンの移行。1つ以上の仮想マシンを一度に移行できます。 複数の仮想マシンを移行する場合、移行は同時にではなく順次行われるため、すべての移行が完了するまで、1つの移行が実行されてから次の移行が実行されます。 サーバー・プール間での移行は許可されますが、最初に仮想マシンを停止する必要があります。 仮想マシンは、サーバー(「Unassigned Virtual Machines」)から移行する前に、「stopped」状態である必要もあります。 仮想マシンを別のサーバー・プールに移行する際、仮想マシンは起動するまで特定のOracle VM Serverにデプロイされず、仮想マシンの配置計画は、Oracle VM Serverロールおよび、分散リソース・スケジューラ(DRS)分散電源管理(DPM)などの移行先サーバー・プールのポリシーによって異なります。 Oracle VM Serverロールの詳細は6.2項「サーバー・ロールとは」を、サーバー・プールのポリシーの詳細は6.12項「サーバー・プールのポリシーとは」を参照してください。

インバウンド・マイグレーション・ロック。Oracle VM Serverで新しい仮想マシンを許可しないように、インバウンド・マイグレーション・ロック機能を設定している場合は、仮想マシンを移行したり、サーバーに新しい仮想マシンを作成しないように、設定した自動マイグレーション・ポリシーが制限されます。 インバウンド・マイグレーション・ロック機能の使用の詳細は、7.12項「仮想マシンをどのように保護できるか」を参照してください。

CPU互換性。ライブ・マイグレーションを実行するには、移行元コンピュータと移行先コンピュータのCPUファミリおよび型番に互換性がある必要があります。 これは、たとえば、仮想マシンをx86ベースのサーバー・プールからSPARCベースのサーバー・プールに、またはその逆方向に移行できないことを意味します。 同様に、サーバーのCPUファミリまたは型番が異なる場合、同じx86サーバー・プール内でライブ・マイグレーションを実行することはできません。 CPUの互換性の詳細は、6.14項「サーバー・プロセッサの互換性グループとは」を参照してください。

仮想マシンのエクスポート

Oracle VMに付属するダウンロード可能なソフトウェアであるOracle VM Exporter Applianceを使用して、Oracle VM ManagerからOracle Cloud Infrastructureに仮想マシンをエクスポートできます。 インストールする各Oracle VMエクスポータ・アプライアンスを使用して、最大4つの仮想マシンを同時にエクスポートできます。 追加の仮想マシンのエクスポートは、4つのアクティブなエクスポートのいずれかが終了するまでキューに入れられます。

ノート

4つの仮想マシンを同時にエクスポートして他の仮想マシンをキューに入れることはできますが、アカウントに基づいてOracle Cloud Infrastructureから制限がある場合があります。

Oracle VM Exporter Applianceを使用する場合は、次の点に注意してください:

  • 仮想マシンは複数回エクスポートできます。

  • エクスポート・プロセスはすべてのOracle VM Managerジョブと同様に追跡されますが、中断した場合、またはエラーのために停止した場合は再開できます。

  • Oracle Cloud Infrastructureには、アクティブなOracle VMアカウントとアクティブなテナンシおよびアクティブなユーザー・アカウントが必要です。

Oracle VM Exporter Applianceの詳細は、次を参照してください:

7.8 VM状態とは

Oracle VM Managerでは、各仮想マシンの様々な実行状態を定期的に追跡します。 Oracle VM Manager WebインタフェースまたはOracle VM Managerコマンドライン・インタフェース内では、任意の時点で仮想マシンの実行状態をチェックできます。 Oracle VM Manager内の仮想マシンに適用される実行状態は6種類あります。 次のリストでは、各実行状態と、それぞれに適用されるシナリオについて説明します。

仮想マシンの状態
  • STARTING:

    • 仮想マシンは、vmStart操作またはvmRestart操作(再起動するように再起動アクションが設定されている場合)の後に、STARTING状態に設定されます。

  • RUNNING:

    • 仮想マシンがホストされる、Oracle VM Server上のOracle VM Agentから、仮想マシンが再起動された旨の通知がOracle VM Managerに送信されると、仮想マシンはRUNNING状態に設定されます。 Oracle VM Agentは、ドメイン自体が実行中かどうかを検出するだけで、ゲスト・オペレーティング・システムが実行中かどうかはレポートしません。

    • 検出プロセス中に、仮想マシンがOracle VM Serverで実行中であることが検出されると、その状態はRUNNINGに設定されます。

  • STOPPING:

    • 仮想マシンの停止、再起動、一時停止を試行すると、状態は即座にSTOPPING状態になります。

  • STOPPED:

    • 仮想マシンが停止されたことがOracle VM ServerからOracle VM Managerに通知されると、仮想マシンの状態はSTOPPEDに設定されます。 これは、Oracle VM Managerを介して開始された停止または強制終了のアクション、または仮想マシン自体によって開始された停止による可能性があります。

    • この状態は、前に他の状態であった仮想マシンが、検出中に実行中でないと検出された場合にも発生する可能性があります。

    • 仮想マシンの起動操作が失敗すると、仮想マシンの状態はSTARTINGからSTOPPEDに変更されます。

    • 仮想マシンが実行中のOracle VM Serverにアクセスできず、STOPPED状態に移行すると、同じOracle VM Server上でアクティブのすべての仮想マシンもSTOPPEDに設定され、OFFLINEイベントのマークが付きます。 Oracle VM Serverが使用不可になった場合、これらの仮想マシンがこの状態に移行するのに、最大1分かかります。 Oracle VM Managerは、仮想マシンをホストするOracle VM Serverと通信して操作を実行できないため、この移行中に仮想マシンで操作を実行しようとすると、失敗する場合があります。

  • SUSPENDED:

    • 一時停止操作が正常に完了すると、仮想マシンの状態はSUSPENDEDに設定されます。

    • この状態は、検出中に仮想マシンが一時停止の状態であると検出された場合にも発生する可能性があります。 これは、仮想マシンが停止しており、一時停止ファイルが含まれている場合にも該当するとみなされます。

  • TEMPLATE:

    • この状態は、起動できない仮想マシンのタイプを表します。 この状態の仮想マシンは、他のどの実行状態にも移行できません。

仮想マシンで実行可能なアクションは、これらの状態によって異なります。 したがって、仮想マシンの状態と、仮想マシンで実行可能なアクションの関係に関して、次のルールが適用されます。

仮想マシンの状態とアクションの関係
  • START: 仮想マシンがSTOPPED状態の場合にのみ実行できます。

  • RESTART: 仮想マシンがRUNNING状態の場合にのみ実行できます。

  • STOP: 仮想マシンがRUNNING状態の場合にのみ実行できます。

  • KILL: 仮想マシンの現在の状態に関係なく実行され、強制的にSTOPPED状態にします。 このアクションは、ホストするOracle VM Serverのドメインを最適な方法で破棄します。 HAが有効の場合は、HAフラグもクリアされ、仮想マシンは再起動されません。

  • SUSPEND: 仮想マシンがRUNNING状態の場合にのみ実行できます。

  • RESUME: 仮想マシンがSUSPENDED状態の場合にのみ実行できます。

  • MIGRATE: 仮想マシンがRUNNING状態の場合にのみ実行できます。

7.9 仮想マシン・パラメータの編集

Oracle VM内の仮想マシンを起動するのに使用するパラメータをOracle VM Managerを使用して編集できます。 一般的な変更には、キー・マップ、マウス・デバイス・タイプ、メモリーまたはCPU割当ての更新、ヒュージ・ページ・サポートの有効化などがあります。 これらのパラメータは、仮想マシンを初期化するために、ハイパーバイザによって使用されるランタイム・パラメータであることを理解することが重要です。 つまり、これらのパラメータを変更しても、実行中の仮想マシンにはすぐに適用されません。 変更を適用するには、仮想マシンを停止してから、再起動する必要があり、これにより、ハイパーバイザは仮想マシンの構成を強制的に再ロードします。 単純な再起動では、ハイパーバイザは仮想マシンの構成を再ロードしないため、このイベントでは同じ結果にはなりません。

7.10 仮想マシンへのメッセージの送信

仮想マシンへのメッセージの送信は、仮想マシン・テンプレートの開発や起動などの特定の状況で役立つ場合があります。 メッセージは仮想マシンのオペレーティング・システムに渡され、オペレーティング・システムまたはテンプレートが認識する任意のキー/値ペアとなります。 たとえば、DHCPを使用するように仮想マシン・テンプレートを設定するために、仮想マシンに次のキー/値ペアを送信できます。

com.oracle.linux.network.device.0       eth0
com.oracle.linux.network.onboot.0       yes
com.oracle.linux.network.bootproto.0    dhcp
com.oracle.linux.root-password          password
ノート

com.oracle.linux.root-passwordはパラメータとして常に必須であり、すべてのメッセージで最終パラメータとして送信する必要があります。

認識されないメッセージはすべてオペレーティング・システムにより破棄されて無視されます。 パスワードなどの機密情報のメッセージを非表示にすることができるので、ユーザー・インタフェースには機密情報のかわりに一連のアスタリスクが表示されます。

必要に応じてメッセージのログを保存できます。 この機能は、仮想マシンへメッセージを送信するテンプレートまたはアプリケーションの開発者にとって特に役立ちます。 メッセージ・ログはOracle VM Managerによって格納され、ログ・ファイルまたはデータベース問合せを介して使用することはできません。 これらのメッセージにアクセスできるようにするには、Oracle VM WebサービスAPIを使用します。 メッセージのロギングが選択されている場合、メッセージは1024バイトに制限され、ロギングが選択されていない場合は8192バイトに制限されます。 キーは256バイトに制限されます。

仮想マシンに送信される各メッセージは、それぞれ独自のジョブ内に格納されます。 複数のメッセージを複数の仮想マシンに送信する場合は、各メッセージがそれぞれ独自のジョブを持つため、10個のメッセージを100台の仮想マシンに送信すると1000個のジョブが作成されます。

仮想マシンにメッセージを送信するには、最初に仮想マシンにOracle VM Guest Additionsをインストールする必要があります。 Oracle VMゲスト追加のインストールの詳細は、「Oracle VM管理者ガイド」「Oracle VMゲスト追加機能のインストールと使用」を参照してください。 仮想マシンへのメッセージの送信の詳細は、『Oracle VM Managerユーザーズ・ガイド』VMメッセージの送信に関する項を参照してください。

7.11 仮想マシン・コンソールへのアクセス

コンソールを使用して仮想マシンに接続できます。 コンソールは、Oracle VMのリモート制御システムで、仮想マシンとの連携および直接の対話を可能にします。

Oracle VM Managerには、x86ベースのサーバー・プール内の仮想マシンに接続するために使用するVNCコンソール(SPARCベースのサーバー・プールではサポートされません)と、SPARCベースのサーバー・プールに一般に使用され、仮想マシンのターミナル・コンソールに接続するために使用するシリアル・コンソールの2種類の仮想マシン・コンソールがあります。

ノート

ゲストがシリアル・コンソールをサポートしている場合は、シリアル・コンソールを使用してx86ベースのサーバー・プール内にあるLinuxゲスト仮想マシンに接続することは可能ですが、このコンソールは読取り専用モードになるため、シリアル・コンソールを使用して仮想マシンと対話することはできません。 さらに、この機能を有効にするには、ゲスト仮想マシン内で追加の構成が必要になります。 したがって、シリアル・コンソールの使用は、SPARCベースのサーバー・プール内で実行される仮想マシンに制限し、VNCコンソールを使用して、かわりにx86ベースのサーバー・プール内で実行される仮想マシンにアクセスするようにしてください。

コンソール機能は、Oracle VM ManagerインストールISOで使用可能な特定のRPM内に含まれます。

このパッケージには、様々なOracle Linuxオペレーティング・システム用のバージョンがあります。 たとえば、Oracle Linux 6のパッケージはovmcore-console-x.y-z.el6.noarch.rpmです。

インストールはOracle VM Managerインストーラによって自動的に処理されるため、これらのパッケージをOracle VM Managerホストにインストールする必要はありません。 これらのパッケージがOracle VM Managerの前のインストールからすでにインストールされているい場合、インストールまたはアップグレード・プロセス中に自動的にアップグレードされる可能性があります。 Oracle VM Managerがアンインストールされると、これらのパッケージはアンインストールの一部として削除されます。

仮想マシン・コンソールにアクセスするクライアント・システムに追加のソフトウェアをインストールしたり、実行する必要はありません。

7.11.1 x86用のVNCコンソール

VNCコンソールは、noVNC VNCクライアントの上部で開発され、Oracle VM Managerホスト上で実行されます。 noVNCクライアントは、HTML5 WebSocketsおよびCanvasを使用してレンダリングされるWebベースのVNCクライアントです。 このソフトウェアの詳細は、http://kanaka.github.io/noVNC/を参照してください。

これらのコンソール・サービスを使用するには、WebブラウザがHTML5 CanvasおよびWebSocketsエレメントを完全にサポートしている必要があります。 『Oracle VM Managerユーザーズ・ガイド』Webブラウザの要件に提示している、サポートされているWebブラウザのリストでは、Oracle VM Managerに含まれる仮想マシン・コンソールの使用に必要なサポートも提供する、すべてのブラウザが記載されています。

VNCコンソールを使用するために、追加のソフトウェアをOracle VM Serverまたは仮想マシンにインストールする必要はありません。

Oracle VM Managerでは、セキュア・トンネルを使用して、ネットワーク全体で仮想マシン・コンソール(リモート接続ユーティリティ)のデータを保護します。 Oracle VM Managerは、VNCクライアントとは直接通信しないで、ポート69xx (xxは接続先のゲストに基づいています)のSSH暗号化トンネルを介して接続します。

Oracle VM ManagerとOracle VM Serverの間のファイアウォールは、ポート10000以上が開いていることが必要になり、Oracle VM Serverの仮想マシンごとに1つのポートが必要です。 たとえば、Oracle VM Serverに100の仮想マシンがある場合、Oracle VM ServerとOracle VM Managerの間のファイアウォール上でポート10000から10099 (100ポート)を開く必要があります。

VNCクライアントの使用および構成の詳細は、コンソールの起動に関する項を参照してください。

7.11.2 Oracle VM Serverのx86およびSPARC用のシリアル・コンソール

SPARCベースのサーバー・プール内の仮想マシンへは、標準のVNCコンソールを使用して接続できません。 かわりにシリアル・コンソールを使用します。 シリアル・コンソールを使用して、x86ベースのサーバー・プールで実行中の仮想マシンに接続することもできますが、この場合は、コンソールは読取り専用で非対話型です。

シリアル・コンソールでは、HTML5 WebSocketsおよびCanvaを使用した.Telnet型の接続に使用可能なWebベースのターミナル・エミュレータである、jsTermターミナル・エミュレータを使用します。

これらのコンソール・サービスを使用するには、WebブラウザがHTML5 CanvasおよびWebSocketsエレメントを完全にサポートしている必要があります。 『Oracle VM Managerユーザーズ・ガイド』Webブラウザの要件に提示している、サポートされているWebブラウザのリストでは、Oracle VM Managerに含まれる仮想マシン・コンソールの使用に必要なサポートも提供する、すべてのブラウザが記載されています。

シリアル・コンソールを使用するために、追加のソフトウェアをOracle VM Serverまたは仮想マシンにインストールする必要はありません。

Oracle VM ManagerとOracle VM Serverの間のファイアウォールは、ポート7900以上が開いていることが必要になり、Oracle VM Serverの仮想マシンごとに1つのポートが必要です。 たとえば、Oracle VM Serverに100の仮想マシンがある場合、Oracle VM ServerとOracle VM Managerの間のファイアウォール上でポート7900から7999 (100ポート)を開く必要があります。

SPARCベースのサーバー・プール内の仮想マシンに接続するためにシリアル・コンソールを使用する方法の詳細は、シリアル・コンソールの起動に関する項を参照してください。

7.12 仮想マシンをどのように保護できるか

新しい仮想マシンをOracle VM Serverに作成するか、Oracle VM Serverに移行できるようにすることで、Oracle VM Server上のリソースを保護できます。 これにより、Oracle VM Serverのリソースが、サーバーで実行中の仮想マシンで使用できることを確認できます。 これは、インバウンド・マイグレーション・ロック機能を使用して、Oracle VM Serverに設定できます。

この機能では、サーバー・プールのポリシーとアンチアフィニティ・グループ、これらの他の機能またはポリシー(仮想マシンがOracle VM Serverに移行される可能性があります)よりも優先されます。 ただし、サーバーにHAを構成している場合、この機能は、フェイルオーバーの発生時にインバウンド・マイグレーションからサーバーを保護しません。

この機能では、追加の仮想マシンをOracle VM Serverで実行できるようにするかどうかを設定できますが、Oracle VM Serverで実行される仮想マシンが別のOracle VM Serverに移行されないようにすることはできません。

インバウンド・マイグレーション・ロック機能の詳細は、『Oracle VM Managerユーザーズ・ガイド』サーバーの編集に関する項を参照してください。

7.13 仮想CPUはどのように仮想マシンに割り当てられていますか?

仮想マシンを作成または編集する場合は、仮想マシンに割り当てるプロセッサ(仮想CPUとも呼ばれます)の数に2つの異なる値を指定できるオプションがあります。 これらは次を表します。

  • 実行中の仮想マシンに使用できる仮想CPUの最大数(maxvcpu)

  • 実行時に仮想マシンで使用している必要がある仮想CPUの実際の数(vcpu)

任意の時点で仮想マシンが実際に使用できる仮想CPUの数は、Oracle VM Manager内で実行中の仮想マシンのプロセッサの数(vcpu)を変更することで、必要に応じて、ハイパーバイザによって動的に割り当てられます。 この値は、Oracle VM Manager内ですでに指定したプロセッサの最大数(maxvcpu)を超えることはありません。

仮想マシンで使用可能な仮想CPUの最大数(maxvcpu)を変更する場合は、この値の変更後に仮想マシンを再起動する必要があります。 仮想CPUの最大数(maxvcpu)は、『Oracle VMリリース・ノート』で説明されている値を超えることはできません。

仮想CPUの割当てに関連する、ゲスト仮想マシンの起動動作は、ゲストで構成されている仮想化のモードによって異なります。 仮想化のモードの詳細は、7.1項「仮想化モードまたはドメイン・タイプとは」を参照してください。 たとえば、準仮想化仮想マシン(PVM)の場合、Oracle VM Managerで指定したプロセッサの最大数(max_vcpu)と同じ数の仮想CPUでゲスト仮想マシンが起動し、実行時には、構成したプロセッサの数(vcpu)で仮想マシンが動作します。 これらの2つの値の間の違いが大きいと、指定した数の仮想CPU (vcpu)でゲスト仮想マシンが実際に実行するまで時間がかかる場合があります。 これに対し、ハードウェア仮想化仮想マシン(HVM)は、構成で指定した仮想CPUの正確な数(vcpu)で起動します。

指定した数の仮想CPUで仮想マシンが実行している場合、この値は、必要に応じてOracle VM Managerで増減可能で、実行中のゲスト・オペレーティングシステムで使用可能なプロセッサ・コアの数も自動的に調整されます。

Oracle VMでは、ホスト・サーバーの物理CPUの過剰サブスクリプションが許可されます。 つまり、すべての仮想マシンに割り当てられた仮想CPUの総数が物理CPUの数を超えることがあります。 CPUオーバー・サブスクリプションを使用してVM密度とサーバー・リソース使用率を向上させることができ、これによりコンピューティングの総コストが削減されます。 特にコンピューティング集約型ではないワークロードの場合、十分なCPU容量がある限り、VMのパフォーマンスに悪影響はありません: アイドル状態のVMによって消費されなかったCPUリソースは、他のVMによって使用される可能性があります。 VMがサービス目標を達成するのに十分な処理能力を持つように、CPU割り当てと優先順位付けを監視するのは管理者の作業です。

ノート

仮想マシンの構成、管理、ヘルス・モニタリングの詳細については、Oracle VM Managerユーザー・ガイドの次のセクションを参照してください:

x86用のOracle VM Serverのパフォーマンス最適化の目標とテクニックの詳細については、Oracle Technology Networkのx86パフォーマンスのためのOracle VM Serverの最適化を参照してください: http://www.oracle.com/technetwork/server-storage/vm/ovm-performance-2995164.pdf.

7.14 仮想マシン内での仮想コンポーネントのホット変更の制限

仮想マシンの実行中、仮想コンポーネントの数の変更は、仮想マシン自体のカーネルとオペレーティング・システムによって制限されます。 これらの機能のゲスト・カーネル・サポートは、Oracle VM Managerの管理対象外ですが、次のガイドラインが内部テスト・データに基づきます。

Oracle Linux

Oracle Linuxを実行しているゲストの場合、仮想CPUをホット追加およびホット削除できるかどうかは、ゲストにインストールされているカーネル・バージョンに完全に依存しています。 仮想CPUのホット追加とホット削除を完全にサポートするためのカーネルの最小バージョンはUEK2 QU5 v2.6.39-400.211.1です。 サポートされているOracle Linuxのすべてのバージョンでは、仮想ディスクのホット追加とホット削除に対応しています。 Oracle Linuxを実行しているゲストのRAMのホット追加とホット・アップグル・サポートは、PVM (Oracle VM 3.4.1以降)とPVHVM (Oracle VM 3.4.2以降)で使用できます。 仮想マシンのインタフェース・カードのホット追加も可能です。

Oracle Solaris for SPARC

SPARCプラットフォームで実行されているすべてのバージョンのOracle Solarisでは、必要に応じて仮想CPUのホット追加とホット削除をサポートできます。 RAMやハード・ディスクなどの他のコンポーネントもホット・スワップ可能です。 仮想マシンのインタフェース・カードのホット追加も可能です。

実行中の仮想マシンでOracle VM Server for SPARCのメモリーを追加または削除した場合、このメモリーの追加または削除リクエストは部分的に実行される場合があります。 これは標準的な動作です。 詳細は、Oracle VM Server for SPARC管理ガイドメモリーの動的再構成の使用に関する項を参照してください。

ノート

http://www.oracle.com/technetwork/documentation/vm-sparc-194287.htmlにあるOracle VM Server for SPARCドキュメントにアクセスします。 参照するOracle VM Server for SPARCドキュメントのバージョンを決定するには、pkg list ldomsmanagerコマンドを実行します。

この場合、Oracle VM Managerはメモリーの追加または削除処理後にエラーを報告せずに、すべての操作が成功したことを示します。 ただし、仮想マシンに実際に割り当てられるメモリー量は、Oracle VM Managerによって示される量とは異なる場合があります。 仮想マシンを停止して再起動すると、正しいメモリー量がリストアされます。

Oracle Solaris for x86

x86プラットフォームでOracle Solarisを実行しているゲストには、同じ機能がなく、仮想CPUおよびRAMのホット追加とホット削除の機能はサポートされていません。 ただし、Solaris 11の時点では、ホット・スワップ可能ハード・ディスクには対応しています。 仮想マシンのインタフェース・カードのホット追加も可能です。 x86プラットフォームでOracle Solarisを実行している仮想マシンでは、このプラットフォームで使用されるドライバ・タイプにより、仮想CD-ROMデバイスのホット削除には対応していません。

Microsoft Windows

Microsoft Windowsを実行しているゲストは、仮想CPUまたはメモリーをホット追加するオプションをサポートできません。 ホット・スワップ可能な仮想ディスクおよび仮想ネットワーク・インタフェースをホット追加する機能は、Oracle VM Paravirtual Drivers for Microsoft Windowsがインストールされているかぎりサポートされます。

7.15 仮想マシンでヒュージページ機能がどのように有効化されるか

ページングとは、実行中のプロセスで使用するためのメモリーの連続ブロックをシステムでCPUが割り当てるプロセスです。 これらのページは、オペレーティング・システムによって追跡されるため、プロセスは割当て済のメモリーの正しいブロックにアクセスします。 通常、これらのブロックのサイズは4 KBに設定されます。 これは、プロセスで1 GBのメモリーが使用されると、262144ページ(1 GB/4 KB)のエントリが作成され、プロセスによって連続して参照されることを意味します。

最新のCPUアーキテクチャでは、CPUまたはオペレーティング・システムで必要なページ参照の数を軽減できるように、より大きいページをサポートしています。 Linuxシステムでは、これらはヒュージページと呼ばれており、Windowsシステムでは、ラージ・ページと呼ばれています。 これらの用語は同義です。

デフォルトでは、ヒュージページは、新しい仮想マシンが作成されると、ハードウェア仮想化仮想マシン(HVMおよびPVHVM)に使用できます。

準仮想化仮想マシン(PVM)の場合は、ヒュージページのサポートが有効になるように特定のパラメータを設定して、Xenハイパーバイザで仮想マシンを起動する必要があります。 Oracle VM Managerでは、仮想マシンの作成または編集時に、準仮想化仮想マシンでヒュージページのサポートを有効にするオプションが用意されています。 ただし、ヒュージページ機能は、Oracle VM Release 3.4.1の時点では、PVMゲストで非推奨になっています。 Oracle VM Manager WebインタフェースまたはOracle VM Managerコマンドライン・インタフェースでPVM仮想マシンを作成または編集する場合は、ヒュージページを有効にしないでください。 この機能は、今後のリリースのOracle VMで削除される予定です。

この機能はXenハイパーバイザではなく、仮想マシン自体によって処理されるため、Oracle VM Manager内でHVMまたはPVHVMに対してヒュージページのサポートを有効にしようとしないでください。

PVMゲストに対してヒュージページを有効にしている場合は、準仮想化ドライバ(PVHVM)を使用して、仮想マシンのドメイン・タイプを準仮想化(PVM)からハードウェア仮想化に変更することをお薦めします。 仮想マシンのドメイン・タイプを変更できない場合は、ヒュージページ設定を無効にしてから、仮想マシンを再起動してください。

ヒュージページを仮想マシンでサポートするには、仮想マシンのオペレーティング・システムに応じて、ヒュージページを仮想マシン内部で有効にする必要が生じる場合があります。 たとえば、Linuxでは、これはLinux起動コマンドライン・フラグballoon_hugepagesを仮想マシン内で指定することで実行されます。

SPARCアーキテクチャで実行される仮想マシンの場合、ヒュージページはラージ・ページと呼ばれ、デフォルトで常に有効になっています。 ヒュージページのサポートを有効化または無効化するためのOracle VM Manager設定は、Oracle VM Server for SPARCで実行される仮想マシンには適用されません。

高可用性(HA)は、ヒュージページのルールよりも優先されます。 たとえば、2台のサーバーを実行しているサーバー・プールがあるとします。 サーバーAで実行している仮想マシンでヒュージページを有効にします。 サーバーBで実行している仮想マシンでは、ヒュージページを有効にしません。 また、両方のサーバーのすべての仮想マシンでHAを有効にします。 サーバーAまたはサーバーBのいずれかが実行を停止すると、仮想マシンは、まだ実行中のサーバーに移行されます。 この移行は、ヒュージページの設定が異なる仮想マシンが同じサーバーで実行されないようにするルールに関係なく、行われます。

このオプションの詳細は、『Oracle VM Managerユーザーズ・ガイド』仮想マシンの作成に関する項を参照してください。

7.16 仮想マシンCPUのハード・パーティショニングの設定

Oracle VMでは、CPU固定とも呼ばれる、ハード・パーティショニングの高度な機能が提供されています。 ハード・パーティショニングとは、仮想マシンのCPUを物理CPU (x86上)にバインドし、指定したコア以外の他の物理コア上で仮想マシンが動作するのを防ぐものです。 これは、Oracle VMはCPUごとにライセンスが供与されるために、Oracle CPUライセンスの目的で行われます。

CPU固定は、Oracle VM Managerでは構成できず、Oracle VMユーティリティでしか設定できません。 詳細は、Oracle VM管理者ガイド「Oracle VM仮想マシン制御(ovm_vmcontrol)」を参照してください。

ハード・パーティショニングについては、Oracle Technology Networkで入手可能な独自のテクニカル・ペーパーで説明しています。 このテクニカル・ペーパーでは、Oracle VMユーティリティを使用したハード・パーティショニングの設定について説明します。 ハード・パーティショニング技術文書のタイトルはOracle VM Server for x86でのハード・パーティショニングで、次の場所にあります:

http://www.oracle.com/technetwork/server-storage/vm/ovm-hardpart-168217.pdf

警告

CPUが固定された仮想マシンの別のOracle VM Serverへのライブ・マイグレーションは、ライセンス条件では認められていません。 そのため、CPU固定されたゲストを含むサーバー・プールでは、DRSおよびDPMポリシーを有効化することはできません。

ノート

Oracle VM ServerでNUMA (不均一メモリー・アクセス)がサポートされている場合は、システムがNUMAモードで正常に動作していることを確認してください。 クラスタ化の設定では、CPUは、ローカル以外のメモリーおよび共有メモリーよりも高速にローカル・メモリーにアクセスできます。 NUMAの性能の利点を十分に活用するには、仮想VCPUをOracle VM Serverの同じ物理CPUに固定してください。 NUMAの詳細は、サーバー・ハードウェアのドキュメントを参照してください。

Oracleのハード・パーティショニングの特別なライセンス・ポリシーの詳細は、Oracle Technology Networkで、次の場所にあるパーティショニングに関する説明のPDFドキュメントを参照してください。

http://www.oracle.com/us/corporate/pricing/specialty-topics/index.html

7.17 仮想マシンがどのようにバックアップされるか

仮想マシンのバックアップは、Oracle VMでは直接処理されません。 ただし、Oracle VM内ですでに提供されている機能を活用できる、仮想マシンのバックアップのアプローチは複数あります。 最も一般的な仮想マシンのバックアップは、仮想マシンをクローニングすることで行われます。 これによりデータ整合性が向上するため、最適な結果を得るには、コールド・クローン(仮想マシンが停止中)として実行するようにしてください。 クローニングの詳細は、7.6項「クローニングの仕組み」を参照してください。

仮想マシンを停止してから、サーバー・プールに使用されるリポジトリに格納される仮想マシン・ファイルのバックアップを作成することも同様に可能です。

仮想マシンのバックアップ計画に関するより包括的な説明については、「仮想マシンのバックアップ」Oracle VM管理者ガイドを参照してください。