2 アーキテクチャ
Oracle Linux Virtualization Managerは、オープン・ソースのoVirtプロジェクトに基づくサーバー仮想化管理プラットフォームです。 これを使用して、ホスト、仮想マシン、記憶域、ネットワーク、ユーザーなどのOracle Linuxカーネル・ベースの仮想マシン(KVM)環境を構成、監視および管理できます。 マネージャには、管理ポータルまたはVMポータルからアクセスします。
Oracle Linux Virtualization Managerは、KVMインフラストラクチャを管理するためのRepresentational State Transfer (REST) Application Programming Interface (API)も提供します。これにより、Managerを他の管理システムと統合したり、スクリプト反復タスクを自動化したりできます。
詳細については、「環境の計画」を参照してください。
図2-1 アーキテクチャの概要
エンジン
Oracle Linux Virtualization Managerのワーク・ホースは、oVirtエンジン(エンジン)です。これは、webサービスとして動作し、サーバーおよびデスクトップの仮想化を集中管理するWildFlyベースのJavaアプリケーションです。 エンジンには、次を含む多くの機能があります。:
- Oracle Linux KVMホストの管理
- 仮想マシンの作成、デプロイ、起動、停止、移行および監視
- 論理ネットワークの追加と管理
- 記憶域ドメインと仮想ディスクの追加と管理
- クラスタ、ホストおよび仮想マシンの高可用性の構成と管理
- ライブ仮想マシンの移行と編集
- リソース使用量とポリシーに基づく仮想マシンでの継続的なロード・バランシング
- 仮想マシン、ホスト、ストレージ、ネットワークなど、環境内のすべてのオブジェクトの監視
エンジンは、KVMホスト上でデーモンとして稼働するホスト・エージェントであるVirtual Desktop and Server Manager (VDSM)サービスと通信します。 エンジンはOracle Linux KVMホスト上のVDSMサービスと直接通信して、仮想マシンの管理、テンプレートからの新規イメージの作成などのタスクを実行します。
タスクの多くは、管理ポータルで実行できます。 また、VMポータルまたはCockpitを使用して、タスクのサブセットを実行できます。
ホスト・アーキテクチャ
エンジンはOracle Linuxサーバー上で動作し、Oracle Linux Virtualization Manager環境を管理するための管理ツールを提供しています。 Oracle Linux KVMホストは、仮想マシンを実行するためのコンピュート・リソースを提供します。
詳細は、「ホスト」を参照してください。
図2-2 基本的なホスト・アーキテクチャ
- カーネル・ベースの仮想マシン(KVM)とQuick Emulator (QEMU)
-
KVMはロード可能なカーネル・モジュールとして、以下を実行します
-
ハードウェア拡張機能を使用して、完全な仮想化を実現します。
-
ホストが物理ハードウェアを仮想マシンで使用できるようにすることを許可します。
-
カーネル領域で実行し、そこで実行する仮想マシンは、ユーザー領域で個々のQEMUプロセスとして実行します。
QEMUを使用すると、CPU、メモリー、ネットワーク、ディスク・デバイスなど、仮想マシンのハードウェアをエミュレートすることにより、KVMが完全なハイパーバイザになることが可能になります。
KVMにより、QEMUで仮想マシン上のコードをホストCPU上で直接実行できるようになります。 これによって、仮想マシンのオペレーティング・システムは、変更を行わずにホストのリソースに直接アクセスできます。
-
- ホスト・エージェントとlibvirt
-
Virtual Desktop and Server Manager (VDSM)サービスは、エンジンがホスト、仮想マシン、ネットワークおよびストレージを管理するために必要なすべての機能をカバーするホスト・エージェントです。 エンジンとKVMホスト間のすべての通信は、KVMホスト上で実行されるVDSMサービスによって処理されます。
libvirtデーモンは、Oracle Linux KVMホスト上でサービス(
libvirtd
)として実行され、Oracle Linux KVMを含む様々なハイパーバイザを管理するためのアプリケーション・プログラミング・インタフェース(API)を提供します。 VDSMはlibvirt
を使用して、ホスト上の仮想マシンおよびその仮想デバイスの完全なライフ・サイクルを管理し、それらに関する統計を収集します。 - ゲスト・エージェント
-
ゲスト・エージェントは仮想マシン内で実行され、リソースの使用状況に関する情報をエンジンに提供します。 ゲスト・エージェントとエンジンの間の通信は、仮想化シリアル接続を介して実行されます。
ゲスト・エージェントは次のものを提供します。
-
エンジンとゲストの間の情報、通知およびアクション。
-
エンジンに対してゲスト・マシン名、ゲスト・オペレーティング・システム、およびその他の詳細(関連IPアドレス、インストールされているアプリケーション、ネットワークとRAMの使用状況など)
-
エンジンに対しての、認証済ユーザーが仮想マシンへの接続時に再認証を受ける必要がないようにするためのシングル・サインオン。
-
図2-3 エージェント、QEMU、およびlibvirt
自己ホスト・エンジン
Oracle Linux Virtualization Managerでは、自己ホスト・エンジンとは仮想化された環境のことであり、その環境内にあるホストの仮想マシン内でエンジンが実行されます。 エンジン用の仮想マシンは、ホスト構成プロセスの一環として作成されます。 また、エンジンはホスト構成と並行してインストールおよび構成されます。
エンジンは物理ハードウェア上ではなく仮想マシンとして実行されるため、自己ホスト・エンジンに必要な物理リソースは少なくなります。 また、エンジンは高可用性に設定されているため、エンジン仮想マシンを実行しているホストがメンテナンス・モードになったり、予期せず失敗した場合、仮想マシンは環境内の別のホストに自動的に移行されます。 高可用性をサポートするには、自己ホスト・エンジンのホストが少なくとも2つは必要です。
oVirt Engine Virtual Applianceを使用して、エンジン仮想マシンをインストールします。 アプライアンスはデプロイメント・プロセス中にインストールされますが、必要に応じて、デプロイを開始する前にアプライアンスをホストにインストールできます。
# dnf install ovirt-engine-appliance
結合インタフェースを使用して高可用性を実現したり、VLANを使用して様々なタイプのトラフィック(たとえば、記憶域または管理接続用)を分離する場合は、これらのインタフェースを構成してからデプロイする必要があります。
エンジン仮想マシンをカスタマイズする場合は、アプライアンスでカスタムcloud-initスクリプトを使用できます。 デプロイ中にデフォルトのcloud-initスクリプトを生成したり、必要に応じてカスタマイズすることができます。
自己ホスト・エンジンのデプロイの詳細は、『Oracle Linux Virtualization Manager: スタート・ガイド』の自己ホストエンジンのデプロイメントに関する項を参照してください。
ノート:
概念的な情報、トラブルシューティングおよび管理タスクを確認するには、oVirtドキュメントのoVirt自己ホスト・エンジン・ガイドを参照してください。
データ・ウェアハウスおよびデータベース
Oracle Linux Virtualization Managerには、2つのPostgresSQLデータベースがあります。 エンジン構成によって、engine
というデータベースが作成されます。 ovirt-engine-dwh
パッケージをインストールした場合、ovirt_engine_history
という2つ目のデータベースが作成されます。
- エンジン・データベース(
engine
)には、Oracle Linux Virtualization Manager環境の状態に関する永続的な情報と、その構成およびパフォーマンスが格納されます。 履歴構成情報および統計メトリックは、1分ごとに収集されます。 - データ・ウェアハウス・データベースは、データ・センター、クラスタおよびホストの履歴構成情報および統計メトリックを任意のアプリケーションで取得するために使用できる管理履歴データベース(
ovirt_engine_history
)です。
ovirt-engine-dwd
):
engine
データベースからデータを抽出し、ETLを実行してovirt_engine_history
データベースに挿入します。-
次の3つのタイプの変更を追跡します:
- 新しいエンティティが
engine
データベースに追加されると、ovirt-engine-dwd
サービスはその変更をovirt_engine_history
データベースにレプリケートします。 - 既存のエンティティを更新すると、
ovirt-engine-dwd
サービスによって、ovirt_engine_history
データベースに対して変更がレプリケートされます。 engine
データベースからエンティティを削除すると、ovirt_engine_history
データベースの新しいエントリによって、対応するエンティティに削除済のフラグが付けられます。
- 新しいエンティティが
履歴データベースおよびエンジン・データベースはどちらも、エンジン・ホストの負荷を軽減するためにリモート・ホストで実行できます。 テクノロジ・プレビュー機能は、これらのデータベースをリモート・ホストで実行します。 詳細は、Oracle Linux Virtualization Manager: リリース・ノートのテクノロジ・プレビューに関する項を参照してください。
アクセス・ポータル
Oracle Linux Virtualization Managerには、環境の構成、管理および監視に使用できる3つのポータルが用意されています: 管理ポータル、VMポータルおよびモニタリング・ポータル。
管理ポータルは、oVirt Engineサーバーのグラフィカル管理インタフェースです。 管理者は、Webブラウザから仮想化環境のすべての要素を監視、作成およびメンテナンスできます。 管理ポータルから実行できるタスクは次のとおりです。
- 仮想インフラストラクチャ(ネットワーク、記憶域ドメイン)の作成および管理
- ホストのインストールおよび管理
- 論理エンティティ(データ・センター、クラスタ)の作成および管理
- 仮想マシンの作成および管理
- ユーザーおよび権限管理
Cockpit Webインタフェースを使用すると、KVMホストのリソースを監視し、管理タスクを実行できます。 Cockpitは、別途インストールして有効化する必要があります。 ホストのCockpit Webインタフェースには、管理ポータルからアクセスするか、またはホストに直接接続することでアクセスできます。
VMポータルには、仮想マシンの包括的なビューが表示され、ユーザーは仮想マシンの起動、停止、編集および詳細の表示が可能です。 VMポータルでユーザーが使用できるアクションは、次のような追加の管理タスクをユーザーに委任できるシステム管理者によって設定されます:
- 仮想マシンの作成、編集および削除
- 仮想ディスクおよびネットワーク・インタフェースの管理
- スナップショットを作成して使用し、仮想マシンを以前の状態にリストア
仮想マシンへの直接接続は、VNCクライアントによって容易になります。 どちらのプロトコルも、ローカルにインストールされたデスクトップと同様の環境を提供します。 管理者は、仮想マシンの作成時に仮想マシンに接続するために使用するプロトコルを指定します。
VMポータルの詳細は、「oVirtドキュメント」を参照してください。
モニタリング・ポータルでGrafanaが開き、組込みのGrafanaダッシュボードが表示されます: エグゼクティブ、在庫、サービス・レベルおよびトレンド。 レポートのニーズに応じて、カスタマイズされたダッシュボードを作成したり、既存のダッシュボードをコピーおよび変更できます。
Grafana統合は、スタンドアロン・マネージャまたは自己ホスト・エンジン・インストールでengine-setup
を実行するとデフォルトで有効化およびインストールされます。 アップグレードの実行、バックアップのリストア、データ・ウェアハウスを別のマシンに移行する場合など、いくつかのシナリオでGrafanaを手動でインストールする必要がある場合があります。
モニタリング・ポータルの詳細は、「oVirtドキュメント」および「Grafanaドキュメント」を参照してください。
ディレクトリ・サービス
Active Directory、OpenLDAPおよび389DSを外部ディレクトリ・サーバーとして使用して、ユーザー・アカウントおよび認証サービスを提供できます。 外部ディレクトリ・サーバーが使用されている場合、oVirtエンジンはこれらのディレクトリ・サービスを使用して、ロールの権限の割当て時にユーザーとグループの情報を受け取ります。
コンソール
- VNC
-
VNCを使用しているときは、リモート・ビューア・アプリケーションまたはVNCクライアントを使用して、仮想マシンへのコンソールを開きます。
ローカルにインストールされたリモート・ビューア・アプリケーションを使用する場合は、パッケージ・マネージャ(
yum
またはdnf install virt-viewer
)を使用してアプリケーションをインストールするか、仮想マシン・マネージャからダウンロードできます。ブラウザベースのコンソール・クライアントを使用する場合は、通信が保護されているため、認証局をブラウザにインポートする必要があります。
https://<your engine address>/ovirt-engine/services/pki-resource?resource=ca-certificate&format=X509-PEM-CA
に移動すると、認証局をダウンロードできます。 - RDP (Windowsのみ)
-
RDPは、Microsoftリモート・デスクトップ・アプリケーションがインストールされているWindowsマシンから仮想マシンにアクセスした場合にのみ使用可能です。 また、RDPを使用してWindows仮想マシンに接続する前に、仮想マシン上でリモート共有を設定し、ファイアウォールがリモート・デスクトップ接続を許可するように構成する必要があります。
重要:
「Oracle Linux Virtualization Manager: リリース・ノート」の「既知の問題」セクションにある、非推奨のゲスト・エージェントが原因でWindows仮想マシンが機能を失う。
詳細は、「Oracle Linux Virtualization Manager: 管理ガイド」のクライアント・マシンへのリモート・ビューアのインストールを参照してください。
図2-4 Linux KVMホストに接続されたクライアント・コンソール