第2章 Oracle VMの概要
この章では、Oracle VMデプロイメントのアーキテクチャの概要について詳細に説明します。 関連するプラットフォーム、使用するテクノロジ、Oracle VMプラットフォーム全体を構成するコンポーネント間の接続について十分に理解できるように、各コンポーネント・タイプについても説明します。
2.1 Oracle VMアーキテクチャとは
Oracle VMは、仮想化テクノロジの最新の利点をすべて持つ環境を完備したプラットフォームです。 Oracle VMを使用すると、サポートされている仮想化環境に、オペレーティング・システムおよびアプリケーション・ソフトウェアをデプロイできます。 Oracle VMは、基礎となる仮想化テクノロジからユーザーと管理者を隔離して、毎日の操作が目標指向GUIインタフェースを使用して実行されるようにします。 図2.1「Oracle VMのアーキテクチャ」に、Oracle VMのコンポーネントを示します。
-
クライアント・アプリケーション: Webブラウザを使用してアクセス可能なグラフィカル・ユーザー・インタフェース(GUI)、SSHクライアントを使用してアクセス可能なコマンドライン・インタフェース(CLI)、またはOracle Enterprise Managerカスタム・ビルド・アプリケーション、WebサービスAPI (WS-API)を使用するスクリプトなどの外部アプリケーションなど、Oracle VM Managerとの様々なユーザー・インタフェースが用意されています。 Oracle VM Managerとのすべての通信は、キーまたは証明書ベースのテクノロジのいずれかを使用してセキュリティ保護されます。
-
Oracle VM Manager: Oracle VM Server、仮想マシンおよびリソースを管理するために使用されます。 これは、Webブラウザ・ベースのユーザー・インタフェースやコマンドライン・インタフェース(CLI)などの多くのサブコンポーネントで構成されており、外部スクリプトまたはコマンド・シーケンスの手動実行のいずれかによってコマンド・ラインからインフラストラクチャを直接管理できます。 これらの各インタフェースは、個別のアプリケーションとして実行され、WebサービスAPIを使用して、Oracle VM Managerコア・アプリケーションとのインタフェースとして機能します。
Oracle VM Managerは、一般にスタンドアロン・コンピュータでホストされますが、注意深く設計された環境で仮想マシンとして実行することもできます。 ただし、仮想マシンでのOracle VM Managerの実行のサポートは制限され、警告が適用されます。 詳細は、「Oracle VMインストレーションおよびアップグレード・ガイド」の「Oracle VM Managerを仮想マシンとして実行」に関する項を参照してください。
Oracle VM Managerコア・アプリケーションは、Oracle Linuxで実行されるOracle WebLogicアプリケーションです。 ユーザー・インタフェースでは、アプリケーション開発フレームワーク(ADF)アプリケーションが使用され、他のOracle Webベース・アプリケーションと共通のルック・アンド・フィールが提供されます。 Oracle VM Managerコア・アプリケーションおよびOracle VM Manager Webインタフェースは、両方ともWebLogicアプリケーションで、同じプロセス領域を共有しますが、これらは別のアプリケーションです。
Oracle VM Manager WebインタフェースおよびOracle VM Managerコマンドライン・インタフェースは、両方ともWebサービスAPIを使用して、Oracle VM Managerコア・アプリケーションとのインタフェースとして機能しますが、Oracle VM Manager Webインタフェースは、読取り専用操作のために、Oracle VM Managerデータベースに直接問合せを実行できます。 この設計決定により、Oracle VM Manager Webインタフェースで様々なフィルタリング・オプションが提供され、いくつかの操作でパフォーマンスを向上できます。
Oracle VM Managerは、ポート8899でHTTPSを介してXML-RPCを使用して、Oracle VM Agentから各Oracle VM Serverと通信します。 Oracle VM Manager内で開始されるサーバー上のアクションは、この方法を使用してトリガーされます。 各Oracle VM Server上のOracle VM Agentは、同様に、通知、統計およびイベント情報をOracle VM Managerに返信できます。 Oracle VM AgentによってトリガーされるOracle VM Manager内のアクションは、Oracle VM Managerによって公開されるWebサービスAPIによってトリガーされ、HTTPSを使用してセキュリティ保護されます。
Oracle VM ManagerはOracle VMインフラストラクチャ内での構成アクションの重要なコンポーネントですが、Oracle VM Managerが停止したとしても仮想環境は正常に機能し続けることができます。 これには、x86プラットフォームで実行される仮想マシンの高可用性を維持する機能およびライブ・マイグレーションを実行する機能が含まれます。 SPARCプラットフォームでライブ・マイグレーションを実行する方法は、Oracle VM Manager WebインタフェースまたはOracle VM Manageコマンドライン・インタフェースからしかサポートされないため、このプラットフォームで実行される仮想マシンのライブ・マイグレーションでは、Oracle VM Managerを正常に実行している必要があります。
-
Oracle VM Manager Database: Oracle VM Managerコア・アプリケーションで使用され、構成、ステータス変更およびイベントの格納と追跡に使用されます。 Oracle VM Managerでは、インストーラにバンドルされているMySQL Enterpriseデータベースを使用し、VM Managerがインストールされているのと同じホストで実行されます。 データベースは、Oracle VM Managerを排他的に使用できるように構成され、他のアプリケーションで使用できないようにする必要があります。 データベースは、定期的なスケジュールで自動的にバックアップされ、手動バックアップを実行する機能も提供されます。
-
Oracle VM Server: ドメインともよばれ、仮想マシンを実行するための軽量でセキュアなサーバー・プラットフォームを提供する、管理された仮想化環境。 少なくとも1つのOracle VM Serverが必要ですが、クラスタリングを利用する場合は複数必要です。
Oracle VM Serverは、ベア・メタル・コンピュータにインストールされ、Oracle VM Managerとの通信を管理するためのOracle VM Agentが含まれます。dom0は、ドメイン0の略記で、ハードウェアまたはデバイス・ドライバへの特権アクセスを持つ管理または制御ドメインです。 DomUは、ハードウェアまたはデバイス・ドライバに直接アクセスする権限を持たないドメインです。 ユーザー・ドメイン(domU)は、dom0によってOracle VM Serverで起動され、管理されます。
x86ベースのシステムでは、Oracle VM Serverは基盤となるXenハイパーバイザ・テクノロジの更新されたバージョンに基づいており、これにはOracle VM Agentが付属しています。 また、様々なデバイスおよびファイル・システムをサポートするLinuxカーネルが含まれます。 Linuxカーネルはdom0として動作して、1つ以上のdomU仮想マシンを管理します(各仮想マシンは、Linux、Oracle SolarisまたはMicrosoft Windows™です)。
一方、Oracle VM Server for SPARCは、Oracle VM Agent for SPARCと一緒に、SPARCファームウェアに含まれているハイパーバイザを利用します。 通常、デフォルトのOracle Solarisオペレーティング・システムがプライマリ・ドメインとして動作するようになります(これはx86システムでのdom0と同等です)。 プライマリ・ドメインが決まると、プライマリ・ドメインは、異なるバージョンのOracle Solarisオペレーティング・システムが実行している別のドメインの作成および管理に使用することができます。
Oracle VM Serverのグループは、通常はクラスタ化され、サーバー・プールを作成します。 これにより、Oracle VM Managerを使用して、高可用性環境でロード・バランシングおよびフェイルオーバーを処理できます。 仮想マシンはサーバー・プール内で実行され、サーバー・プールを構成する様々なサーバー間で簡単に移動できます。 サーバー・プールでは、サーバーと仮想マシンが論理的に分離されます。 サーバー・プールは、1つのサーバーのみで構成される場合でも、Oracle VMインフラストラクチャ内で必要なエンティティです。
各Oracle VM Serverには、独自のBerkeley Databaseが保持され、ローカル構成およびランタイム情報の格納に使用されます。 これにより、Oracle VM Managerが一定期間使用不可になった場合でも、Oracle VM Serverを引き続き正常に機能させることができます。 Oracle VM Serverが同時にクラスタ化される場所では、サーバー・プール・ファイル・システムに格納される個別のクラスタ・データベースがサーバー間で共有されます。 これにより、Oracle VM Managerが使用不可の場合でも、高可用性などのクラスタリング機能をサーバー・プールで引き続き提供できます。
-
外部共有記憶域: 様々な用途の記憶域を提供し、クラスタリングで提供される高可用性オプションを有効化する必要があります。 記憶域検出および管理は、Oracle VM Managerを使用して実行され、Oracle VM Managerは、Storage Connectフレームワークを介してOracle VM Serverと対話し、記憶域コンポーネントと対話します。 詳細は、「Oracle VM概要ガイド」の「ストレージの理解」の章を参照してください。 Oracle VMでは、NFS、iSCSI、ファイバ・チャネルなどの様々な外部記憶域型をサポートします。
2.2 Oracle VM Serverとは
Oracle VM Serverは、x86またはSPARCのいずれかのハードウェア・プラットフォームにインストールできます。 これらのプラットフォームは基本的に似ていないため、各プラットフォームで使用されるハイパーバイザも異なります。 Oracle VMでは、様々なサーバー・タイプで同じ論理アクションを可能にするユーザー・インタフェースを提供することで、ハイパーバイザーをさらに抽象化できます。 このアプリケーションの多くは、環境内の各Oracle VM ServerにインストールされるOracle VM Agentによって提供されます。
この項では、これらの様々なハードウェア・プラットフォームとそれらのロールでコンポーネントがどのように実行されるかについて詳細に説明します。 サポートされる様々なハードウェア・プラットフォームおよびOracle VM Serverを実行するための要件は、『Oracle VMインストレーションおよびアップグレード・ガイド』を参照してください。
Oracle VM Agentの詳細は、第6章「サーバー・プールとOracle VM Serverの理解」を参照してください。
2.2.1 Oracle VMで使用されるハイパーバイザ
各Oracle VM Serverに存在するハイパーバイザは、フットプリントが非常に小さい仮想マシン・マネージャおよびスケジューラです。 システムで唯一完全な権限を持つエンティティとなるように設計されています。 CPUとメモリーの使用量、権限の確認、ハードウェア割込みなど、システムの最も基本的なリソースのみを制御します。
2.2.1.1 Oracle VM Server for SPARC
SPARCシステムでは、SPARCハイパーバイザがSPARCファームウェアに組み込まれており、通常、Logical Domains Managerと呼ばれています。 Oracle VM Server for SPARCがインストールされていない場合には、デフォルトのオペレーティング・システムがハイパーバイザの最上部で透過的に実行されます。 Oracle VM Server for SPARCがインストールされている場合には、デフォルトのオペレーティング・システムがプライマリ・ドメインになり、ハイパーバイザによる他のドメインへのリソースとハードウェアの割当てを管理するためのツールがプライマリ・ドメインに提供されます。
Xenハイパーバイザと同様に、個々の仮想マシンは単一のコンピュータ上で安全に実行され、それぞれが所有するゲストOracle Solarisオペレーティング・システムを実行します。 SPARCハイパーバイザは、SPARCハードウェアの特性と設計により、Xenハイパーバイザよりも幅広い仮想化機能を持っています。
2.2.1.2 Xen™
Oracle VMは、x86サーバーで実行している場合は、Xenハイパーバイザを利用して、Xenテクノロジを使用します。 Xenハイパーバイザは、x86互換コンピュータ向けの小型で軽量のベア・メタル・ハイパーバイザです。 Xenハイパーバイザは、1台のホスト・コンピュータで複数の仮想マシンを安全に実行します。 各仮想マシンは、それぞれ独自のドメインで実行され、ほぼネイティブ・パフォーマンスの独自のゲスト・オペレーティング・システムを使用します。 プライマリ管理ドメイン(dom0と呼ばれる)は、ハイパーバイザの上部でゲストとしても実行されます。 ドメインの詳細は、2.2.2項「ドメインとは」を参照してください。 Xenハイパーバイザはケンブリッジ大学の研究者によって作成され、Linuxカーネルの作業から派生したものです。
2.2.2 ドメインとは
ドメイン、ゲストおよび仮想マシンは、ほぼ同じ意味に使用されていますが、若干の違いがあります。 ドメインは、構成可能な一連のリソースで、メモリー、仮想CPU、仮想マシンを実行するネットワーク・デバイスおよびディスク・デバイスを含みます。 ドメインまたは仮想マシンには、仮想リソースが割り当てられ、他のドメインまたはホスト・サーバー自体とは独立して起動、停止および再起動することができます。 ゲストは、ドメイン内で実行される仮想化されたオペレーティング・システムです。 複数のゲストを同じOracle VM Serverサーバーで実行できます(それぞれ独自のドメイン内で実行可能)。
2.2.2.1 管理ドメイン(dom0)
Oracle VM Server環境のハードウェア検出の役割のほとんどは、ドメイン0 (dom0)と呼ばれる管理ドメインに渡されます。 x86ベースのサーバーでは、dom0カーネルは、様々なデバイスおよびファイル・システムをサポートするフットプリントの小さいLinuxカーネルです。 Oracle VM Serverでは、dom0の役割は、ハイパーバイザに使用可能なシステム・ハードウェアのビューを提供することです。 これにより、ハイパーバイザと直接対話することで、リソースのアクセスの制御、ゲスト・オペレーティング・システムの作成、破棄、制御などの様々なタスクの実行、共通の仮想ハードウェアのセットを使用した、これらのゲストの提示も可能になります。 他のドメインは、dom0と直接対話することはありません。 それらの要件は、ハイパーバイザ自身によって処理されます。 Dom0では、ハイパーバイザを管理する手段を提供するのみです。
SPARCベースのサーバーでは、Logical Domains Managerがインストールされると、管理ドメイン(通常はプライマリ・サービス・ドメインまたは制御ドメインと呼ばれます)が作成されます。 論理ドメインとして構成されていない既存のサーバーにインストールされると、現行のオペレーティング・システムがプライマリ・ドメインのステータスに自動的に昇格します。 プライマリ・ドメインはOracle Solarisカーネルを実行して、他のすべてのドメインの作成および管理を行います。 これは、仮想化されたハードウェア・リソースへのアクセスも提供します。
Oracle VM Server for SPARCを実行しているシステムの場合、"管理ドメイン"および"ゲスト・ドメイン"の他に、"ユーザー・ドメイン"のように、管理ドメインと一緒に実行できる多様なドメイン・タイプがあります。 たとえば、ネットワーク・スイッチおよび仮想ディスク・サーバーとして動作することができる複数の"サービス・ドメイン"を設定できます。 Oracle VM Managerを使用して、これらのすべてのドメイン・タイプを構成できるわけではありません。 最も重要なことは、プライマリ・ドメインを再起動する必要が生じた場合に、ディスクとネットワークI/Oを引き継ぐサーバーにセカンダリ・サービス・ドメインを追加できることです。 これにより、プライマリ・ドメインが使用不可になった場合でも、ゲスト仮想マシンを実行して、これらのリソースに引き続きアクセスできます。 このトピックの詳細は、「Oracle VM管理者ガイド」の「セカンダリ・サービス・ドメインの構成」の中で説明しています。
管理ドメイン(dom0)でサポートされる操作
Oracle VM Managerでは、dom0を含む、仮想化インフラストラクチャの管理と構成が可能です。 dom0を手動で変更すると、Oracle VM ManagerまたはOracle VM Serverのいずれかで構成の問題が発生し、パフォーマンスの低下またはサービスが失われる原因になる場合があります。
Oracleでは、Oracle VM Managerの外部でのdom0に対する変更はサポートしていません。 同様に、dom0内でのサード・パーティ・アプリケーションの実行もサポートしていません。
ハイパーバイザ固有のコマンドは、シェルからOracle VM Serverで直接実行することは可能ですが、x86プラットフォームなどではXen xmコマンドを実行できます。また、SPARCではldmコマンドを実行できます。Oracle VM Managerを使用して操作を実行します。 ハイパーバイザ・ツールを直接使用すると、Oracle VM Agentと干渉する場合があり、Oracle VM Managerが環境の実際の状態と同期しなくなることもあります。 その結果、ハイパーバイザ・コマンドをOracle VM Serverで直接実行することはサポートされていません。 このルールの例外は、トラブルシューティング時、またはコマンドを実行するようにOracleサポートの担当者から直接指示されている場合、またはOracle VMの公式ドキュメント内で指示されている場合に適用できます。
一般には、dom0構成を変更する操作は実行しないでください。 ただし、次のような特定の操作は実行できます。
-
I/Oマルチパスの構成。 詳細は、「Oracle VM管理者ガイド」の「マルチパスI/Oサポートの有効化」を参照してください。
-
新規パーティションを作成することで、ゲスト・メモリー・ダンプを取得するか、Kdumpを使用します(「Oracle VM管理者ガイド」の「Oracle VM Serverの診断ツール」を参照)。
-
Dom0メモリー・サイズの変更。 詳細は、「Oracle VM管理者ガイド」の「管理ドメインのメモリー・サイズの変更」を参照してください。
-
dom0 SNMPサービスの構成。 詳細は、「Oracle VM管理者ガイド」の「SNMPによるOracle VM Serverのモニタリング」を参照してください。
-
iptables構成の調整。 詳細は、『Oracle VMセキュリティ・ガイド』のOracle VM管理サーバーの準備に関する項を参照してください。
-
準仮想化仮想マシン(PVM)のヒュージページの構成。 Oracle VMリリース3.4.1で、HugePages機能は非推奨になりました。 この機能は、今後のリリースのOracle VMで削除される予定です。 詳細は、『Oracle VMリリース・ノート』を参照してください。
-
仮想マシンのネットワーク・タイム・プロトコル(NTP)設定の構成。 NTP構成の例については、「Oracle VM管理者ガイド」の「ゲスト・クロックの設定」を参照してください。
-
記憶域リポジトリまたは仮想ディスクに使用するソフトウェアRAIDデバイスの構成。 詳細は、「Oracle VM管理者ガイド」の「ストレージ用のソフトウェアRAIDの構成」を参照してください。
dom0での操作がサポートされているか確認できない場合は、Oracle Supporまでお問い合せください。
2.2.2.2 ドメイン(domU)
ゲスト・オペレーティング・システムには、"ユーザー・ドメイン"と呼ばれるこのシステムの管理ドメインがあり、"domU"と省略されます。 このドメインは、ハードウェアまたはデバイス・ドライバに直接アクセスする権限を持たないドメインです。 各domUは、Oracle VM Server上で実行しているdom0と一緒に起動されます。
Oracle VM Server for SPARCでは、通常、これらのドメインは「ゲスト・ドメイン」と呼ばれます。
2.2.3 Oracle VM Agentとは
Oracle VM Agentは、各Oracle VM Serverインスタンス上のdom0内で実行されるデーモンです。 その主な役割は、Oracle VM ServerとOracle VM Manager間の通信を可能にすることです。 デーモンは、TCPポート8899でOracle VM Managerからの接続をリスニングし、Oracle VM Managerと各Oracle VM Serverインスタンスの接続を可能にするメッセージング機能を実装して、Oracle VMインフラストラクチャ全体の効率的な実行に必要な情報を交換します。
Oracle VM Agentは、Oracle VM Managerによって送信されるメッセージに従って、Oracle VM Serverインスタンスで必要なすべての構成変更を実行します。 つまり、ネットワークの変更がOracle VM Managerに実装される場合、変更に対応するようにサーバーを再構成するのはOracle VM Agentになります。 同様に、新しい記憶域が検出され、Oracle VM Managerに提示される場合、サーバーで必要な実際のマウント・プロセスを処理するのはOracle VM Agentになります。
Oracle VM Agentは、Oracle VM Managerで必要な仮想マシンの起動と停止も処理します。 この理由から、Oracle VM Agentの実際の実装は、Oracle VM Manager内のアクションがプラットフォーム間で一貫している場合でも、ハードウェア・プラットフォームによって大きく異なります。
セキュリティ上の理由から、Oracle VM Agentは、ポート8899で接続を試行するシステムを認証する必要があります。 Oracle VM Serverが特定のOracle VM Managerに構成されていない場合は、所有されていない状態になります。 この状態では、Oracle VM Managerは、Oracle VM Agentと通信できるようになる前に、サーバーの所有権を取得する必要があります。 Oracle VM Managerインスタンスがサーバーの所有権を取得するプロセス中、Oracle VM Managerは、Oracle VM Agentに構成されたパスワードを使用して認証する必要があります。 このパスワードは、SSL証明書を使用して保護される接続を介して交換されます。 Oracle VM AgentがOracle VM Managerを認証すると、SSLキーと証明書のペアが設定され、そのOracle VM ManagerインスタンスとOracle VM Agent間の以降のすべての通信を認証して暗号化します。 この時点で、他のOracle VM Managerインスタンスまたはアプリケーションは、Oracle VM Agentを介してOracle VM Serverを制御できません。 別のOracle VM Managerインスタンスでサーバーの所有権を取得できるようにするには、元のOracle VM Managerインスタンスで所有権を最初にリリースする必要があります。
Oracle VM AgentでOracle VM Managerとの接続を開始して、イベントを送信または統計情報を提供する必要が生じる場合もあります。 これは、TCPポート7002でHTTPSを介して、Oracle VM Managerによって公開されるWebサービスAPIを使用して行われます。
Oracle VM Agentでは、特定のサーバー・インスタンスでの問題のデバッグ、または監査に使用可能な独自のログ・ファイルをOracle VM Server上にも保持します。
Oracle VM Agentの詳細は、第6章「サーバー・プールとOracle VM Serverの理解」を参照してください。
2.2.4 サーバー・プールとは
Oracle VM Serverが1つだけである場合でも、サーバー・プールはOracle VMの必須エンティティです。 実際には、複数のOracle VM Serverによって1つのサーバー・プールが形成され、Oracle VM環境に1つ以上のサーバー・プールが含まれる場合があります。 通常、サーバー・プールはクラスタ化されますが、クラスタ化されていないサーバー・プールも可能です。
サーバー・プールはストレージ・リポジトリへの共有アクセスが可能で、サーバー・プール・ファイル・システムの重要なクラスタ情報を交換し、格納します。 サーバー・プールでは、記憶域リポジトリに共有アクセスできるため、ロード・バランシングまたはスケジュールされたメンテナンスのための仮想マシンのライブ・マイグレーションが可能になり、サービスを中断することなく、仮想マシンをOracle VM Server間で移動できます。
クラスタ化されたサーバー・プール内では、仮想マシンに高可用性(HA)があります。 Oracle VM内で使用されるクラスタリング・テクノロジにより、サーバー・プールに属するすべてのOracle VM Serverのステータスを監視できます。 プール・メンバーがなんらかの理由で消失した場合、必要なリソースはすべて共有記憶域で使用可能であるため、その仮想マシンをリカバリして別のOracle VM Serverで起動することができます。
サーバー・プールの目的およびサーバー・プール内で使用されるテクノロジの詳細は、第6章「サーバー・プールとOracle VM Serverの理解」を参照してください。
2.2.4.1 マスター・サーバーと仮想IPアドレスとは
Oracle VMリリース3.4の時点で、マスター・サーバー・ロールおよび仮想IPアドレス(VIP)は非推奨となりました。 ただし、Oracle VM Managerは以前のリリースのOracle VM Serverと対話できるため、マスター・サーバー・ロールと仮想IPアドレス構成は、下位互換性のために保持されていますが、リリース3.4以降からは適用されません。
3.4より前のバージョンOracle VMでは、Oracle VM Managerは、マスター・サーバーと呼ばれる、指定したOracle VM Serverと通信することで、サーバー・プール全体で一部の操作を実行していました。 このサーバーは、仮想ネットワーク・インタフェースで構成され、サーバー・プール仮想IPアドレスと呼ばれる管理ネットワーク内のIPアドレスが割り当てられます。 マスター・サーバーに障害が発生するか、メンテナンス・モードに移行すると、サーバー・プール内の別のOracle VM Serverがこのロールを引き受け、仮想IPアドレスで自動的に構成されます。
このアーキテクチャは、以降のリリースのOracle VMで進化しているため、マスター・サーバーの重要性が低下し、サーバー・プール内のすべてのOracle VM Serverで、Oracle VM AgentとOracle VM Managerが直接通信します。
サーバー・プールの仮想IPアドレスとマスター・サーバーの概念が非推奨になったことは、サーバー・プールと一部の構成オプションに様々な制限が課せられていたことを意味します。 特に、Oracle VM Serverリリース3.3.x
のインスタンスが空のサーバー・プールに追加される場合、またはOracle VM Serverリリース3.3.x
の1つ以上のインスタンスがサーバー・プールにすでに含まれている場合、仮想IPアドレスとマスター・サーバーは、Oracle VM Managerリリース3.4で部分的にサポートされます。 ただし、仮想IPアドレスとマスター・サーバーは、Oracle VM Serverリリース3.4以降のインスタンスが含まれるサーバー・プールには適用されません。
2.3 Oracle VM Managerとは
Oracle VM環境の管理は、Oracle VM Manager (統合データベースWebベースの管理ユーザー・インタフェースおよびコマンドライン・インタフェースも含むトランザクションベースのフレームワーク)によって提供されます。 Oracle VMでは、Oracle VM Managerのダウンタイム中であっても正常に機能し続けることができるため、Oracle VM Managerには一般に高可用性および冗長性が不要です。
Oracle VM Managerは、複数のインタフェースを備えたマルチユーザー・アプリケーションです。 複数のユーザーが構成変更を同時に行わないようにすることがベスト・プラクティスです。 ただし、2人のユーザーが環境内のオブジェクトを同時に構成することは可能です。 この場合、Oracle VM Managerは、キューに入った最初の変更を取得して、オブジェクトをロックしてから、新しい構成に適用します。 オブジェクトの2番目の構成変更は失効情報に基づくため、失敗します。 Oracle VM Managerは、2番目の構成変更を送信したユーザーにエラー・メッセージを返します。 ユーザーはオブジェクトをリフレッシュして、必要に応じて変更を再送信する必要があります。
Oracle VM Managerのアーキテクチャは、相互に関連する様々なコンポーネントで構成されます。 基盤となるコンポーネントは、Oracle VM Managerアプリケーション本体とOracle VM Managerデータベースです。
2.3.1 Oracle VM Managerコア・アプリケーションとAPI
Oracle VM Managerコア・アプリケーションは、通常は専用のシステムにインストールされるJavaベースのOracle WebLogicアプリケーションです。
Oracle VM Managerコア・アプリケーションでは、環境内の各Oracle VM ServerでOracle VM Agentと直接通信することで、Oracle VM環境の構成、監視および管理が可能になります。 また、Oracle VM Managerコア・アプリケーションは、すべての構成情報とイベント・データをOracle VM Managerデータベース内に格納します。
Oracle VM Managerコア・アプリケーションでは、他のコンポーネントとのインタフェースとして機能するAPIが提供されます。 Oracle VMリリース3.3.1の時点で、このAPIは、Oracle VM ManagerとのRESTインタフェースを提供するWebサービスAPIとして実装されます。 Oracle VM Manager WebインタフェースおよびOracle VM Managerコマンドライン・インタフェースでは、このAPIを使用して、Oracle VM Managerコア・アプリケーションと直接対話します。
Oracle VM Managerコア・アプリケーションによって公開されているWebサービスAPIでは、Oracle VM環境をプログラムで設定および管理できます。 詳細は、Oracle VM WebサービスAPI開発者ガイドを参照してください。
2.3.2 Oracle VMデータベース・リポジトリ
Oracle VM Managerデータベースには、構成情報とイベント・データが格納されます。 実際のデータベース管理サーバーは、Oracle VM ManagerインストーラにバンドルされるMySQL Enterpriseデータベースです。
MySQLデータベースは、バンドルされたデータベース・ソフトウェア(Oracle VM Managerでの使用がライセンスされています)を使用して設定されます。 データベース管理サーバーは、Oracle VM Managerコア・アプリケーションと同じシステムにインストールされ、このアプリケーションでの使用専用になります。 このインストールには、Oracle VM Managerの要件に固有の特定の構成パラメータが適用されます。
データベースのインストールの詳細は「Oracle VMインストレーションおよびアップグレード・ガイド」で説明し、データベースのバックアップは「Oracle VM管理者ガイド」で詳細に説明します。
2.3.3 Oracle VM Manager Webベース・ユーザー・インタフェース
Oracle VM Manager Webインタフェースは、Oracle WebLogicおよびアプリケーション開発フレームワーク(ADF)上に構築されるWebベースのアプリケーションです。 Oracle VM Manager Webインタフェースは同じシステムにインストールされ、Oracle VM Managerコア・アプリケーションと同じOracle WebLogic Serverドメインを共有しますが、個別のアプリケーションです。 デフォルトでは、グラフィカル・ユーザー・インタフェースは、TCPポート7002でHTTPSを介してアクセスされます。
Oracle VM Manager Webインタフェース、その構成および使用の詳細は、『Oracle VM Managerユーザーズ・ガイド』.を参照してください。
2.3.4 Oracle VM Managerコマンドライン・インタフェース
Oracle VM Managerコマンドライン・インタフェースは、Oracle VM Managerがインストールされるシステムで実行されるJavaベースのデーモンです。 CLIへのアクセスは、カスタマイズ可能なTCPポート(デフォルトではTCP 10000に設定)で使用可能なSSH接続で提供されます。 任意のSSHクライアントを使用して、CLIにアクセスできるため(独自のシェルが提供され、SSHキー・ベースの認証がサポートされます)。
Oracle VM Managerコマンドライン・インタフェースにより、管理者がシェルからOracle VM環境を管理し、簡単なシェルまたはExpectスクリプトを使用して、環境をプログラムで設定および制御できます。 Oracle VM Manager Webインタフェースで可能なアクションはすべてCLIでも可能です。
Oracle VM Managerのアプリケーション・スイートの独立したコンポーネントである、Oracle VM Managerコマンドライン・インタフェースは、環境内で不要な場合は無効にすることができます。
構文および例を含む、Oracle VM Managerコマンドライン・インタフェースの完全な使用方法は、『Oracle VM Managerコマンドライン・インタフェースユーザーズ・ガイド』を参照してください。
2.3.5 Oracle VMユーティリティ
Oracle VMユーティリティは、Oracle VM環境の基本的な管理タスクを実行できるコマンドライン・スクリプトのコレクションです。 Oracle VMユーティリティで実行できる管理タスクには、次のものがあります。
-
Oracle VM Managerから仮想マシンにメッセージを送信し、これらの仮想マシンを制御および構成する。
-
ハード・パーティショニング(CPU固定)を構成する。 詳細は、7.16項「仮想マシンCPUのハード・パーティショニングの設定」を参照してください。
-
特定の仮想マシンをホストするOracle VM Serverのインスタンスのメトリックを収集する。
Oracle VMリリース3.4の時点で、Oracle VMユーティリティのほとんどの機能は、Oracle VMのネイティブ機能で廃止されているか、Oracle VM Managerコマンドライン・インタフェースによって非推奨になっています。 Oracle VMユーティリティの詳細(ダウンロードおよびインストール方法を含む)は、「Oracle VM管理者ガイド」で確認できます。 「Oracle VMユーティリティの使用」を参照してください。
2.4 Oracle VMゲストとは
ドメイン、ゲストおよび仮想マシンは、ほぼ同じ意味に使用されていますが、若干の違いがあります。 ドメインは、構成可能な一連のリソースで、メモリー、仮想CPU、仮想マシンを実行するネットワーク・デバイスおよびディスク・デバイスを含みます。 ユーザー・ドメイン(domU)には、仮想リソースが割り当てられ、他のドメインおよびホスト・サーバー自体とは独立して起動、停止および再起動できます。 その結果、domUの仮想リソースに適用される構成変更は他のドメインに適用されず、domUに障害が発生しても、他のドメインが影響を受けることはありません。 ゲストは、ドメイン内で実行される仮想化されたオペレーティング・システムです。
Oracle VMは、仮想化された環境で複数のゲストを実行することを目的に設計されていますが、ゲストが実行される仮想マシンを簡単に管理、構成およびメンテナンスできるツールも用意されています。 これらの仮想マシンは、サーバー・プールにグループ化されるOracle VM Serverで実行されます。 これにより、サービスを中断することなく、ゲストが実行されている仮想マシンを同様の別のサーバーに簡単に移行できます。 高可用性をサポートできるようにゲストが構成されている、クラスタ化されたサーバー・プールでは、ゲストが実行されているサーバーに特定の負荷がかかった場合、または、任意の時点でサービスが利用不可になった場合に、代替のサーバーでゲストを自動的に再起動できます。
Oracle VMゲストは、Oracle VM Serverで実行されているハイパーバイザによってドメインに割り当てられるリソースを消費します。 ゲストとOracle VMインフラストラクチャ間の通信を可能にする追加の機能は、Oracle VM Guest Additionsなどのゲスト・オペレーティング・システムにインストールできます。 Oracle VM Guest Additionsは、Oracle Linuxゲストのみにインストールできることに注意してください。 「Oracle VM管理者ガイド」の「Oracle VMゲスト追加機能のインストールと使用」で、Oracle VMゲスト追加に関する詳細を参照してください。
それらが実行されるOracle VMゲストおよび仮想マシンの詳細は、第7章「仮想マシンの理解」を参照してください。
2.5 Oracle VMでの認証と暗号化
Oracle VM環境を構成する、相互に関連するコンポーネントが複数あり、これらの各コンポーネントは相互に通信する必要があるため、各コンポーネントが自己を別のコンポーネントにどのように認証し、通信を保護するかについて理解することが重要です。 これを説明するために、最初に、各コンポーネントが使用する様々な対話と通信チャネルを特定する必要があります。 これらを次のリストに示します。
-
Oracle VM Manager内の内部コンポーネント通信(例: MySQL、WebLogic、Oracle VM Managerアプリケーション)。
-
Oracle VM Agentを介したOracle VM ManagerとOracle VM Serverの通信。
-
Webベースのユーザー・インタフェースを使用したOracle VM ManagerとのWebブラウザ通信。
-
WebサービスAPI (例: コマンドライン・インタフェース、カスタム・スクリプトおよびアプリケーション、ユーティリティ)を介したOracle VM Managerとのクライアントアプリケーション通信。
この項では、これらの対話の認証および暗号化について詳細に説明します。 詳細は、『Oracle VMセキュリティ・ガイド』を参照してください。
Oracle VMリリース3.4.1以降、セキュリティ上の理由から、SSLv3はOracle VM Manager内で無効になっています。 Oracle VMリリース3.4.1からリリース3.4.4までは、SSL TLSバージョン1 (TLSv1)プロトコルを使用する接続が受け入れられます。
Oracle VMリリース3.4.5以降、セキュリティ上の理由から、SSL TLSv1プロトコルはデフォルトでOracle VM Manager内で無効になっています。 このドキュメント内でSSL接続を参照する場合は、TLSv1.2プロトコルを使用する接続のみが受け入れられることを理解する必要があります。 ただし、Oracle VM Server 3.2.10および3.2.11の管理を可能にするために、TLSv1へのダウングレードは引き続き可能です。
内部コンポーネントの対話
Oracle VM Managerは、単一のシステムで実行される各種のソフトウェア・コンポーネントで構成されます。 これらには、MySQLデータベース、アプリケーション開発フレームワーク(ADF)も含まれるOracle WebLogic Server、Oracle VM Managerアプリケーション本体などがあります。 これらの各プロセスは同じシステムで実行されるため、それらの間の通信を暗号化する必要はありません。 ただし、対話を実行する各プロセスが正当であることを確認するために、各コンポーネントの認証が重要になります。
Oracle VM Managerのインストール中は、1つのパスワードがすべてのコンポーネントに設定されます。 このパスワードは、各プロセス間の通信の認証に使用されます。 MySQLデータベースにアクセスするために、Oracle WebLogic ServerおよびOracle VM Managerアプリケーションによって使用されるパスワードは、セキュアなキーストアに格納されます。
同じパスワードは、Webベースのユーザー・インタフェース、コマンドライン・インタフェースまたはWebサービスAPIを介して、管理ユーザーがOracle VM Managerアプリケーションにアクセスするのに使用されます。 製品内には、アプリケーションにアクセスするために、管理ユーザーのパスワードを変更したり、追加のユーザーとパスワードの組合せ作成するオプションがあります。 これらについては、「Oracle VM管理者ガイド」で説明します。 Oracle VM Managerの認証は、基礎となるOracle WebLogic Serverフレームワークによって処理され、このソフトウェア・コンポーネントによって適用される規則に従います。 したがって、無効なログインの試行が5回続くと、アカウントが30秒間ロックされる場合があります。
管理ユーザーのパスワードを変更しても、Oracle WebLogic ServerまたはMySQLデータベースへの認証に使用されるパスワードは変更されず、これらとの対話では、元のパスワードがOracle VM Managerアプリケーションによって常に使用されます。 したがって、このパスワードを常に安全な状態にし、このパスワードがセキュリティ要件に適切に準拠していることが重要です。
Oracle VM ManagerとOracle VM Serverの対話
Oracle VM ManagerとOracle VM Server間のすべての通信は、Oracle VM Serverで実行されるOracle VM Agentを介して行われます。 トラフィックをできるだけ分離した状態にし、セキュリティを向上して、特定のネットワーク・トランザクションの相互への影響を限定するために、Oracle VMでは、専用のネットワーク・チャネルの概念を取り入れています。 デフォルトでは、Oracle VM ManagerとOracle VM Server間およびOracle VM Server間のあらゆる種類のトラフィックを可能にするために、管理ネットワークと呼ばれる単一のネットワーク・チャネルが作成されます。 トラフィックは、セキュリティとパフォーマンスを向上するために、様々な機能に従ってさらに分離することができます。 詳細は、5.6項「Oracle VMでネットワーク機能がどのように分離されるか」を参照してください。 これらの通信はネットワーク経由で実行されるため、SSL証明書を使用して保護されます。 さらに、Oracle VM Managerインスタンスは、そのサーバーの所有権を持つOracle VM Managerインスタンスとして、Oracle VM Serverに自己認証する必要があります。
このため、Oracle VM Managerアプリケーションは、認証と暗号化に使用される様々な証明書とキーが含まれる独自のキーストアを作成して管理します。 重要な点は、インフラストラクチャ内で使用される証明書の署名と検証に使用される独自の認証局(CA)証明書とキーが、Oracle VM Managerによって生成されることです。
Oracle VM Managerが最初にOracle VM Serverの所有権を取得すると、通信を暗号化するためにサーバーが受け入れるSSL証明書を介して、サーバーに接続します。 所有権プロセス中、ユーザーは、Oracle VM Agentに設定されるパスワードを指定する必要があります。 Oracle VM Serverの所有権がすでに別のOracle VM Managerインスタンスにある場合、所有権の取得のリクエストは失敗します。 そうしないと、Oracle VM Managerをサーバーに認証するのに、そのパスワードが使用されます。 このプロセス中、Oracle VM Managerは、そのCA証明書を使用して、サーバーに提供するSSL証明書とキーに署名し、Oracle VM Managerインスタンスとの以降の通信を認証します。
この時点以降、Oracle VM ManagerとOracle VM Serverとの間の認証はすべて、SSL証明書を使用して行われます。 Oracle VM Managerで使用される証明書をサーバーで検証または認証できない状況が発生した場合は、Oracle VM Managerでサーバーの所有権を再度取得し、新しい証明書とキーを交換できるようにする必要があります。
サーバーのOracle VM Agentのパスワードは、Webベースのユーザー・インタフェースを使用して所有権をリリースした場合、またはコマンドライン・インタフェースまたはWebサービスAPIを使用して、現在の所有権がOracle VM Managerにあるサーバーに対してリセットできます。
このプロセスのすべての証明書管理は、アプリケーション内で内部的に実行され、ユーザーの介入はまったく必要ありません。
Oracle VM Manager Webインタフェース
ユーザーがOracle VM Manager Webベース・ユーザー・インタフェースに接続する場合は、SSL証明書で保護されたHTTPS接続を使用して行います。 ユーザーは、その場合でも、Oracle VM Managerユーザー・インタフェースのログイン・ページでプレーン・テキストのユーザー名とパスワードを使用して認証することが求められます。 SSL証明書は、Webブラウザ・アプリケーションとOracle VM Manager Webアプリケーション間の通信の暗号化に使用されます。
これに使用されるSSL証明書は、Oracle VM Managerのインストール中に自動的に生成されます。 信頼できる証明書として内部のOracle VM Manager CA証明書がブラウザ内にインストールされていない場合、ユーザーは、Webブラウザ内で証明書検証の警告を受けることがあります。
Oracle VM Managerでは、Webブラウザ内にインストールできるようにCA証明書を取得、または信頼できるサードパーティのCAによって署名された代替の証明書でデフォルトのSSL証明書を置き換えるツールが提供されます。 これを行う場合は、SSL証明書のホスト名が、Oracle VM Managerの完全修飾のドメイン名と一致している必要があり、Oracle VM Manager Webベース・ユーザー・インタフェースにアクセスするために、ユーザーが使用するホスト名と同じにする必要があります。
このSSL証明書の構成、または内部CA証明書の取得の詳細は、「Oracle VM管理者ガイド」を参照してください。
Oracle VM Manager WebサービスAPIの対話
Oracle VM Managerコマンドライン・インタフェースなどのクライアント・アプリケーションはすべて、Oracle VM Managerにネットワーク接続できます。 すべてのアプリケーションは、HTTPSを介したWebサービスAPI経由でOracle VM Managerと対話するため、これらの接続は、前述のOracle VM Manager Webベース・ユーザー・インタフェースに使用されるのと同じSSL証明書を使用して保護できます。
コマンドライン・インタフェースでは、管理者ユーザー名とパスワードを使用可能なSSH接続、または標準のSSHキーを使用して保護が可能なSSH接続でOracle VM Managerにアクセスできます。 コマンドライン・インタフェース・アプリケーションは、次に、Oracle VM Manager CA証明書によって発行および署名された独自のSSL証明書とキーを使用して、Oracle VM Managerアプリケーションに対して認証します。
Oracle VM Manager WebサービスAPIとのインタフェースとして機能する独自のアプリケーションまたはスクリプトを開発している場合は、ユーザー名とパスワードの組合せを受け入れるAPIログイン・メカニズムを使用して認証できます(または、SSLベースの認証を使用できます)。 これを行うには、独自の証明書とキーのペアを生成します。 次に、証明書に署名し、提供されるメカニズムの1つを使用してOracle VM Manager CAに登録します。 ここからは、アプリケーションでSSLキー・ベースの認証を使用して、APIへのセキュアな認可アクセスを取得できます。 この詳細は、Oracle VM WebサービスAPI開発者ガイドを参照してください。
2.6 Oracle VMで他に必要なもの
Oracle VMインフラストラクチャの基礎となる2つの部分、記憶域およびネットワークは、製品自体の一部としては提供されませんが、製品が適切に機能するために必要なものです。 デプロイメントで使用される可能性のある記憶域のタイプは、デプロイメントの要件に依存する場合があるため、Oracle VMでは、様々な記憶域型をサポートし、環境内で様々なサポート・タイプを有効化するためのメカニズムを備えています。 同様に、ネットワーク設計および構成も、要件、ハードウェアおよびケーブル配線によって異なる場合があります。 Oracle VMでは、様々な複雑なネットワーク構成に対応し、特定のネットワーク設計に従って、相互に接続できるように環境内でシステムを構成するためのツールを提供しています。
2.6.1 記憶域
Oracle VMでは、次のタイプの記憶域を使用できます。
-
ローカル・ディスク
-
共有ネットワーク接続ストレージ - NFS
-
共有iSCSI SAN: 既存のネットワーク・インフラストラクチャを介してアクセス可能な抽象化されたLUNまたはRAWディスク
-
1つ以上のホスト・バス・アダプタ(HBA)に接続されている共有ファイバ・チャネルSAN
記憶域構成でOCFS2 (Oracle Cluster File System)が使用されますが、NFSには基づいていません。
デプロイメント内のOracle VM Server間で様々な記憶域型へのアクセスを構成するために、Oracle VMでは、Oracle Storage Connectプラグインを使用します。 Storage Connectプラグインは、パッケージ化されてRPMパッケージとして分散され、Oracle VM Serverにデプロイされます。 これらは、ブロックベースの任意の記憶域に対するストレージ・アレイ・プラグインと、ネットワーク・ファイル・システムベースの任意の記憶域に対するファイル・システム・プラグインの2つの主なカテゴリに分類されます。 汎用プラグインは、これらの記憶域型ごとにOracleによって提供されますが、Oracle Storage Connectフレームワークを介して今後のリリースをOracle VMに公開するの専用のプラグインが記憶域ベンダーから提供される場合もあります。
プラグインを使用することの主な利点は次のとおりです。
-
柔軟性: 既存の記憶域インフラストラクチャを使用および統合し、ファイル・ベースまたはブロック・ベースのソリューションを選択し、テスト用またはあまり重要でない仮想マシンのローカル記憶域を使用します。 選択した使用可能なハードウェアまたは新しいハードウェアに応じて、汎用プラグインまたはベンダー固有のプラグインを使用します。
-
スケーラビリティ: 必要な記憶域の増加に合わせて、希望の記憶域プロバイダを追加し、それらをサーバー・プールに提示します。 より大きな記憶域の要件が一時的なものである場合は、記憶域の量を再度削減します。 要件およびプリファレンスに従って、冗長性とマルチパス機能を備えた記憶域をプロビジョニングします。
-
拡張性: 記憶域をアップグレードする場合は、ベンダー固有のプラグインの追加機能について考慮してください。 Oracle Storage Connectプラグインが有効なハードウェアを選択する場合は、RPMについて製造業者に問い合せ、この記憶域ハードウェアへのアクセス権を持つOracle VM Serverにプラグインをインストールします。
Oracle VMでは、仮想マシンの作成および管理に不可欠な環境リソースを格納するための場所が常に必要となります。 こういったリソースには、仮想アプライアンスおよびVMテンプレート、ISOファイル(仮想DVDイメージ)、VM構成ファイル、およびVM仮想ディスクがあります。 このようなリソースのグループが格納される場所を記憶域リポジトリといいます。 記憶域リポジトリを、これらのリソースへのアクセス権が必要なOracle VM Server(通常はサーバー・プール内のすべてのサーバー)に提示します。
記憶域リポジトリは、NFSファイル・システムまたはストレージ・アレイの物理ディスク(LUN)に構成できます。 ただし、物理ディスク上の記憶域リポジトリでは、そのリポジトリへのアクセス権を持つサーバーは、クラスタ化されたサーバー・プールのメンバーである必要があります。 一般に、記憶域リポジトリをホストする目的では、共有記憶域の使用をお薦めしますが、Oracle VMでは、OCFS2内の機能を利用することで、ローカル記憶域でホストされるリポジトリから実行される仮想マシンのライブ・マイグレーションを実行できます。 クラスタ化されていないサーバー・プールの場合は、ファイル・サーバーの記憶域のみが使用可能です。 記憶域リポジトリの使用の詳細は、3.9項「仮想マシン・リソースが配置される場所」を参照してください。
クラスタリングでは、環境に別の記憶域要素(サーバー・プール・ファイル・システム)が追加されます。 サーバー・プールの作成時、その新しいサーバー・プールに指定されたサーバー・プール・ファイル・システムは、そのファイル・システムがNFS共有、FC LUNまたはiSCSI LUNとしてOracle VM Serverによってアクセスされるかどうかにかかわらず、OCFS2ファイル・システムとしてアクセスされ、フォーマットされます。 このフォーマットによって、グローバル・ディスク・ハートビートの領域を含め、ファイル・システムにいくつかの管理領域が作成されます。 サーバー・プール・ファイル・システムは、クラスタリングおよびOracle VM環境の高可用性構成で重要な役割を果たします。 クラスタ化されたサーバー・プールが作成される場所では、サーバー・プール・ファイル・システムをホストするのに共有記憶域が必要です。 サーバー・プール・クラスタリングの詳細は、6.9項「サーバー・プール・クラスタの仕組み」を参照してください。
最も具体的でOracle VMのすべてのユーザーから参照できる記憶域要素は、仮想マシン・ディスクです。 VMディスクは、記憶域リポジトリのディスク・イメージ・ファイルまたはRAW物理ディスクのいずれかです。 物理ディスク(LUN)が使用されている場合、物理マシンと同じ方法で直接VMにアタッチされます。 仮想マシンの操作の詳細は、第7章「仮想マシンの理解」を参照してください。 また、サーバー・プール内のすべてのOracle VM Serverから共有アクセスされる記憶域の場所にあるVMディスクの可用性は、VM高可用性にとって必要です。
記憶域の詳細は、第3章「記憶域の理解」を参照してください。
2.6.2 ネットワーク
Oracle VM環境のネットワーク・インフラストラクチャは、次の間の接続で構成されます。
-
環境内のOracle VM Server。
-
環境内のOracle VM ManagerとすべてのOracle VM Server。
-
Oracle VM ServerとOracle VM Serverで使用される記憶域サブシステム。
-
サーバー・プールで実行されている仮想マシン。
-
仮想マシンと外部のプライベートまたはパブリック・ネットワーク。
これらのネットワーク接続では、Oracle VMによってサポートされる機能(ネットワーク化されたファイル・システム、クラスタリング、冗長性とロード・バランシング、ブリッジングおよび仮想LAN (VLAN)のサポートなど)を利用できます。
Oracle VM Managerのネットワーク構成とは、1組の論理イーサネット・ネットワークに使用可能な、Oracle VM Serverネットワーク・インタフェースのマッピングです。 物理ネットワークとは、Oracle VM ManagerとすべてのOracle VM Serverの物理接続の集合、および宛先に情報を届けるスイッチおよびルーターです。 Oracle VMの論理ネットワークはこれらの物理接続上に構築されます。 Oracle VM Managerで論理ネットワークを定義する前に、VLANやサブネット使用など、使用する物理ネットワーク構成を確認する必要があります。 また、Oracle VM Serverが利用できるネットワーク・インタフェースの数も考慮します。 単一のOracle VM Serverで必要なポートの推奨される最小数は2つですが、テストまたはデモンストレーション用には1つで十分です。 Oracle VM Server上に3つ以上のポートがある環境では、より多くの冗長性またはトラフィック分離を設計できます。
Oracle VMは、様々なネットワーク機能(サーバー管理、ライブ・マイグレーション、クラスタ・ハードビート、仮想マシンおよび記憶域)を識別します。 すべてのネットワーク機能は、仮想マシンのみに使用されるサーバー・ローカル・ネットワークを除き、専用の物理ネットワークまたは共有の物理ネットワークのいずれかにすることができます。 たとえば、物理ネットワークを仮想マシンまたは記憶域のみに割り当てることも、すべてのネットワーク機能に割り当てることもできます。 ネットワーク機能の詳細は、5.6項「Oracle VMでネットワーク機能がどのように分離されるか」を参照してください。
物理ネットワーク環境を確認し、論理的な配分を決定してこれらの物理オブジェクトをグループ化したら、Oracle VM Managerで論理構成を作成してネットワーク設計を実装します。 これらの論理構成には、ネットワーク・ボンド、VLANインタフェース、ネットワークおよびブリッジが含まれます。 ネットワーク設計にインタフェース・ボンディング(2つのポートの集約)を含める場合は、最初にこれらのネットワーク・ボンドを作成します。 複数のVLANからのトラフィックで同じボンドの使用が許可されている場合、これらのボンドはVLANとともに使用されることがあります。 ネットワーク環境がVLANで構成される場合、次のステップでVLANインタフェースを作成し、各Oracle VM ServerのどのポートまたはボンドでどのVLANからのトラフィックを受け入れるかを決定します。
使用可能なネットワーク・ビルディング・ブロックおよび必要なネットワーク機能を十分に評価してから、次のいずれかのタイプを選択して必要な論理ネットワークを作成します。
-
ボンドおよびポートを使用したネットワーク。
-
VLANのみを使用したネットワーク。
-
ボンド、ポートおよびVLANインタフェースに接続するハイブリッド・ネットワーク。
-
単一サーバー上の論理ネットワーク(ローカル・サーバー・ネットワーク)。
Oracle VM内のネットワークの詳細は、第5章「ネットワークの理解」を参照してください。
2.7 仮想マシンとは
Oracle VM環境全体は、仮想マシンの実行とデプロイを目的に設計されています。 したがって、これらはOracle VMアーキテクチャ内の重要なコンポーネントです。 仮想マシンでは、オペレーティング・システムのレベルで様々なレベルの仮想化が提供され、多くの場合、システム・ドライバで提供される特定の機能のパフォーマンスと可用性に影響を与えます。 各種の仮想化サポートは、仮想化モードと呼ばれます。
仮想マシンのイメージと構成データは、一般にサーバー・プール内のすべてのOracle VM Serverに接続される共有記憶域上の記憶域リポジトリ内に格納されます。 ロード・バランシングを利用するようにサーバー・プールが構成されている場合、仮想マシンの実行に必要なすべてのファイルはすべてのサーバーで使用できるため、仮想マシンは、プール内の任意のOracle VM Serverで起動できます。 同様に、フェイルオーバーが発生した場合、クラスタ化されたサーバー・プール内のサーバーが使用不可になったときは、プール内の別のOracle VM Serverで仮想マシンを自動的に再起動できます。
仮想マシンは、様々なタイプのリソース、事前構成済の1つ以上の仮想マシンを含む仮想アプライアンス、またはテンプレートから作成できます。 また、インストールDVDのISOファイル(イメージ)を使用して、仮想マシンを最初から作成することもできます。 PXEを使用した仮想マシンのブートや、準仮想化ゲストのネットワーク・ブートも可能です。
テンプレートからの仮想マシンの作成は、クローニングに基づきます。テンプレートはアーカイブとしてインポートされ、解凍されて、そのディスクのイメージを使用して仮想マシン構成ファイルとして格納されます(これらは、クローニングされて、仮想マシンの形式で新しいインスタンスを作成します)。 同様に、既存の仮想マシンは、クローニングされて新しい仮想マシンを作成するか、クローニングされて新しいテンプレートを作成できます。 クローニングの詳細は、7.6項「クローニングの仕組み」を参照してください。
仮想アプライアンスは、それらを使用して仮想マシンをすぐに作成できるという点で、テンプレートに似ています。 仮想アプライアンスとテンプレートの主な違いは、仮想アプライアンスは、単一のova (Open Virtualization Format Archive)ファイルまたは一連の.ovf (Open Virtualization Format)およびimg (ディスク・イメージ)アイルとして作成されるパッケージであることです。 仮想アプライアンスには、1つ以上の仮想マシンを含めることが可能で、仮想ディスクと、仮想マシン間の相互接続性を含めることができます。
以前のリリースのOracle VMでは、仮想アプライアンスはアセンブリという名前でした。
Oracle VM Manager Webインタフェースでは、テンプレートと仮想アプライアンスは仮想マシンの異なるタブに表示されます。 ただし、構成ファイルとディスク・イメージ(新しい仮想マシンまたはテンプレート用にOracle VM Managerによって作成される構成ファイルとディスク・イメージを含む)は、同じ場所に格納されます。
仮想DVD (イメージ・ファイル、ISO)からの仮想マシンの作成は、仮想化モードによって異なります。 ハードウェア仮想化ゲストの場合、イメージで提供される標準のインストーラが使用されるため、PVドライバを考慮する必要はありません。 ハードウェア仮想化ゲストを作成する場合は、新しい仮想マシンが仮想DVDからすぐにブートされるように、記憶域リポジトリに配置されているISOファイルを割り当てることができます。 一方、PVMゲストでは、この段階では仮想DVDデバイスがロードされないため、DVDからブートすることができず、リモートからマウントされるISOファイルを使用して、NFS、HTTPまたはFTPを介してアクセスします。 ここでの違いは、ハードウェア仮想化マシンには、エミュレートされたBIOSがありますが、PVMゲストにはないことです。
仮想マシン・リソースは、記憶域リポジトリに格納されます。 記憶域リポジトリのコンテンツと構造の詳細は、第4章「リポジトリの理解」を参照してください。
仮想マシンの実行中は、コンソールからアクセスできるため、通常のオペレーティング・システムとして使用できます。 コンソールの詳細は、7.11項「仮想マシン・コンソールへのアクセス」を参照してください。
次の各項では、仮想マシンに固有の多くの概念について概説します。 仮想マシンの詳細は、後述する第7章「仮想マシンの理解」を参照してください。
2.7.1 仮想化モードとは
仮想マシンは、関連付けられたソフトウェアとアプリケーションを持つ仮想化されたオペレーティング・システムとして定義できます。 3つのいずれかの仮想化モード(ドメイン・タイプ)で実行されます。
-
ハードウェア仮想化(HVM): 未修正のオペレーティング・システムが完全に分離して実行されます。 命令は、ハードウェア・レベル(Intel® VT-x/VT-iおよびAMD-V™)でトラップおよびエミュレートされます。 つまり、特定の修正を加えることなく、ゲストを実行して仮想化できます。
-
準仮想化(PVM): 基礎となるハードウェアに類似の(同一ではない)ソフトウェア・インタフェースがゲスト・オペレーティング・システムに表示されます。 準仮想化によってゲストの手順にフックが提供されるため、ハードウェアに関連するタスク(ネットワーク・リソース、ブロックおよび基礎となるファイルへのアクセスなど)は、仮想マシンではなく管理ドメインによって処理され、特に32ビット環境でパフォーマンスが大幅に向上します。 準仮想化では、仮想環境が認識されるように、ゲスト・カーネルがPVMドライバをサポートし、ロードする必要があります。
-
準仮想化ドライバを使用して仮想化されたハードウェア(PVHVM):HVMに似ていますが、管理ドメイン内でI/O関連のプロセスを直接処理できる多くの準仮想化ドライバを使用して、VMパフォーマンスを向上させます。 これは、別の方法で、準仮想化の利点をハードウェア仮想化ゲストに提供します。 このドメイン・タイプは、通常、制限されたパフォーマンスでMicrosoft Windows™ゲストを実行する場合に使用されます。
2.7.2 Oracle VM Guest Additionsとは
完全に機能するOracle VMデプロイメントを必ずしも備える必用はありませんが、Oracle VM Guest Additionsを仮想マシンにインストールすると、Oracle VM Managerから仮想マシンと直接通信できます。 Oracle VM Guest Additionsパッケージでは、仮想マシン内で実行されるデーモンがインストールされ、このデーモンは、Oracle VM Managerからのメッセージをリスニングします。 このパッケージをインストールすることで、Oracle VM Managerは、構成済の仮想マシンのIPアドレスなど、実際の仮想マシンの構成の情報を提供できます。 さらに、仮想マシンは、Oracle VM Managerから仮想マシンに直接構成情報を送信することで起動され、このデータを使用できる構成スクリプトをトリガーするため、仮想マシンの構成も可能です。 この機能では、これらのスクリプトが仮想マシンの外部の様々なイベントによってトリガーされるため、仮想マシン内の動作を制御できます。
Oracle VM Guest Additions、およびOracle VM Messaging subsystemと組み合せて構成スクリプトを使用できる方法の詳細は、「Oracle VM管理者ガイド」を参照してください。
2.8 Oracle VMで提供される機能
この項では、Oracle VM Server、仮想マシン、記憶域リポジトリ、ネットワークおよびリソースの管理に使用されるOracle VM Manager機能の概要を示します。 Oracle VM Managerは、次の主な機能を提供します。
-
物理的なOracle VM Serverを管理し、物理ハードウェアの再起動や再検出などを行うことができます。
-
サーバー・プールを作成し、構成します。
-
NICポート・ボンディングの使用やVLANネットワークの構成などによって、Oracle VM Server論理ネットワークを作成し、管理します。
-
ローカル・ディスク、SANトレージ、ネットワーク・ファイル・サーバーなどのストレージ・デバイスを管理します。
-
記憶域リポジトリを構成し、管理します。
-
ISOファイル、仮想マシン・テンプレート、仮想マシン・イメージ、仮想アプライアンスなどのリソースを管理します。
-
仮想マシンを管理します。 これには、インストール・メディアまたはテンプレートのいずれかからの仮想マシンの作成、起動、ログイン、停止、仮想マシンの削除が含まれます。
-
仮想マシンをインポート、クローニングおよび移行します。
-
サーバー・プールで仮想マシンのロード・バランシングを実行します。
-
Oracle VM環境でジョブを管理します。
-
高可用性、分散リソース・スケジューリング、分散電源管理などのポリシーを管理します。
WebサービスAPIは、Oracle VM Managerにプログラムでアクセスが可能で、Oracle VM Managerが所有権を持ちます。 APIの概要は、Oracle VM WebサービスAPI開発者ガイドを参照してください。
Oracle VM Managerには、コマンドライン・インタフェースでもアクセスできます。詳細は、『Oracle VMコマンドライン・インタフェース・ユーザーズ・ガイド』を参照してください。
2.9 Oracle VMで利用可能なサポート
Oracleは、スタック全体にテクノロジを提供するエンタープライズ・アプリケーション、オペレーティング・システム、およびハードウェアのベンダーとして、仮想化市場で独自の位置を占めています。 スタック全体を所有することには、次のような様々な利点があります。
-
すべてのコンポーネントの統合および集中管理。
-
Oracle VMテンプレートと仮想アプライアンスの使用による、Oracleテクノロジの事前パッケージ化と配布が可能。
-
アプリケーションからハードウェアまで、テクノロジ・スタック全体にわたる統合エンタープライズ・サポート。
Oracle VMサポートは、アプリケーションからディスクまでエンドツーエンドの単一のベンダー・サポート・ソリューションを提供する、Oracleのエンタープライズ・サポート・パッケージのアドオン・コンポーネントです。 1つのサポート・コールでOracleスタック全体に対応し、問題解決を迅速化します。 Oracleサポートを使用して、スタック間での共同作業が必要な問題の場合にOracleサポート・サービス・リクエスト(SR)をサポート・チームの間で移すことができます。 たとえば、アプリケーションの問題のためにサービス・リクエストを開き、その根本原因が仮想化レイヤーにある場合、サービス・リクエストはアプリケーション・チームと仮想化チームの間で移されます。 Oracle Supportの詳細は、次を参照してください。