Oracle Linux Virtualization Manager(OLVM)4.5 の管理サーバー(エンジン)を Oracle Linux 8 にインストールし、KVM ホストを 3 台追加するまでの手順です。OLVM は oVirt をもとにした Oracle の仮想化管理ソフトで、エンジンが Web の管理画面(Administration Portal)を提供し、KVM ホストで仮想マシンを動かします。
この記事の前提
参照した公式ドキュメント
- Install the Engine(Oracle Linux Virtualization Manager Getting Started)
- Configure a KVM Host(同上)
- Install Oracle Linux Virtualization Manager in Oracle Cloud Infrastructure(Oracle Linux Tutorial)
構成
| 役割 | ホスト名 | IP アドレス | OS |
|---|---|---|---|
| エンジン(スタンドアロン) | doc-olvm-engine.olvmdoc.lab | 192.168.1.141 | Oracle Linux 8.10(最小インストール) |
| KVM ホスト | doc-olvm1〜3.olvmdoc.lab | 192.168.1.142〜144 | Oracle Linux 8.10(最小インストール) |
| 項目 | 内容 |
|---|---|
| OLVM | 4.5.5(ovirt-engine-4.5.5-1.77.el8) |
| カーネル | UEK 7(5.15.0-325) |
| 名前解決 | 各サーバーの /etc/hosts に全サーバーの FQDN を登録(エンジンと KVM ホストは FQDN で互いに名前解決できる必要があります) |
| エンジンのメモリ | 12 GB(推奨は 16 GB 以上。少ないと engine-setup で警告が出ます) |
OLVM 4.5 は Oracle Linux 9 にも対応しています。この検証では Oracle Linux 8.10 を使いました。OS は「Minimal Install」でインストールします。
エンジンの準備(Oracle Linux 8)
エンジンのサーバーで、root で次のコマンドを実行します。KVM ホストでも、(1)〜(3) を同じように実行しておきます。
(1) OLVM のリポジトリを有効にするパッケージを入れます。
dnf install oracle-ovirt-release-45-el8
dnf clean all
dnf repolist
(2) UEK カーネルの追加モジュールを入れ、OS を最新にして再起動します。
dnf install kernel-uek-modules-extra
dnf update -y
reboot
(3) 事前チェックのスクリプトを実行し、すべて [PASS] になることを確認します。[WARN] や [FAIL] が出た場合は、表示に従って直してから再実行します。
olvm-pre-check.py
-----------------------------------
OLVM 4.5.5 PRE-CHECK SCRIPT
-----------------------------------
+++ Checking oracle-ovirt-release-45 [PASS]
+++ Checking if a Minimal Installation [PASS]
+++ Checking enabled repositories [PASS]
+++ Checking Linux Kernel [PASS]
+++ Checking kernel-uek-modules-extra [PASS]
+++ Checking Firewalld status [PASS]
+++ Checking SELinux status [PASS]
+++ Checking Hostname/FQDN [PASS]
(一部を省略)
エンジンのインストール
(1) エンジンのパッケージを入れます。
dnf install ovirt-engine
(2) engine-setup を実行します。Oracle のチュートリアルと同じく --accept-defaults を付けると、質問はすべて既定値で答え、管理者(admin)のパスワードだけを聞かれます。
engine-setup --accept-defaults
| 聞かれること | 説明 | 回答 |
|---|---|---|
| Engine admin password/Confirm | 管理者(admin@ovirt)と Keycloak の管理者(admin)のパスワード | 任意のパスワード(8 文字以上、大文字・小文字・数字・記号を含める) |
| Use weak password? | 辞書の単語に近いなど、弱いと判定された場合だけ聞かれます | 検証環境のため Yes(本番では No にして強いパスワードを入れ直す) |
この検証では、パスワードを応答ファイル(
OVESETUP_CONFIG/adminPassword)で渡してengine-setup --accept-defaults --config-append=<ファイル>を実行しました。結果は対話で入力した場合と同じです。
既定値で設定される主な内容です(実行中に表示される CONFIGURATION PREVIEW から抜粋)。
| 項目 | 既定値 |
|---|---|
| Host FQDN | doc-olvm-engine.olvmdoc.lab(サーバーのホスト名) |
| Firewall manager | firewalld(必要なポートを自動で開けます) |
| Engine/DWH/Keycloak のデータベース | ローカルの PostgreSQL に自動作成 |
| Keycloak installation | True(シングル サインオンに Keycloak を使います) |
| Grafana integration | True(監視ポータル) |
| Set up ovirt-provider-ovn | True(仮想ネットワークのプロバイダー) |
| Configure WebSocket Proxy/VMConsole Proxy | True(ブラウザーからの仮想マシンのコンソール) |
(3) 「Execution of setup completed successfully」と表示されれば完了です。この環境では約 4 分 20 秒かかりました。最後に表示されるメッセージのとおり、シングル サインオンを有効にするためにエンジンを再起動します。
systemctl restart ovirt-engine
engine-setup の途中で「Failed to resolve doc-olvm-engine.olvmdoc.lab using DNS, it can be resolved only locally」という警告が出ます。この検証では /etc/hosts で名前解決しているためです。本番では DNS に正引き・逆引きを登録してください。
Administration Portal へのサインイン
(1) ブラウザーで https://<エンジンの FQDN>/ovirt-engine を開きます(自己署名の証明書の警告が出るので、例外として許可します)。[Administration Portal] をクリックします。

ブラウザーを使う PC からも、エンジンの FQDN で名前解決できる必要があります(IP アドレスで開くと、シングル サインオンの画面に進めません)。この検証では、ブラウザーの PC の /etc/hosts にも登録しました。
(2) Keycloak のサインイン画面で、ユーザー名に admin@ovirt、パスワードに engine-setup で設定したパスワードを入力して [Sign In] をクリックします。

(3) [Dashboard] が表示されます。この時点では、データ センターとクラスタ(どちらも Default)が 1 つずつあるだけで、ホストはありません。

KVM ホストの追加
(1) 左のメニューの [Compute] → [Hosts] をクリックします。

(2) [New] をクリックします。

(3) [New Host] の [General] で、ホストの情報を入力して [OK] をクリックします。

| 項目 | 説明 | 設定値 |
|---|---|---|
| Host Cluster | ホストを入れるクラスタ | Default |
| Name | 管理画面での表示名 | doc-olvm1 |
| Hostname/IP | ホストの FQDN | doc-olvm1.olvmdoc.lab |
| SSH Port | エンジンがホストに接続する SSH のポート | 22 |
| Activate host after install | 追加後にホストを有効にする | オン |
| Reboot host after install | 追加後にホストを再起動する | オン |
| Authentication | ホストの root の認証方法(パスワード、またはエンジンの SSH 公開鍵) | Password |
(4) 電源管理(Power Management)を設定していないという確認が表示されます。この検証では設定しないので [OK] をクリックします。

Power Management(IPMI などによるホストの電源の制御)を設定すると、ホストが応答しなくなったときに、エンジンがホストを強制的に再起動(フェンシング)してから仮想マシンを別のホストで起動できます。本番では設定を推奨します。
(5) エンジンがホストに必要なパッケージ(vdsm など)を入れ、ホストを再起動します。[Status] が [Installing] → [Reboot] → [Up] になれば完了です。doc-olvm2・doc-olvm3 も同じように追加します(REST API で追加することもできます)。

この検証環境では、3 台を同時に追加して、すべて Up になるまで約 20 分かかりました(Installing 約 12 分、Reboot 約 10 分)。
[Reboot] の状態がしばらく続きますが、正常です。エンジンのログ(/var/log/ovirt-engine/engine.log)に「Waiting 600 seconds, for server to finish reboot process.」とあるとおり、エンジンはホストの再起動後、600 秒待ってから状態を確認します。ホスト自体はその前に起動し、vdsmd も動いています。
[SPM] 列は、ストレージのメタデータを管理する役割(Storage Pool Manager)の状態です。この時点ではストレージがないので、すべて [Normal] です。ストレージ ドメインを追加すると、どれか 1 台が [SPM] になります。