Ovirtを試してみる

3年以上前に発表されたものの、この1、2年は目立った動きがなかったOvirtですが、今月に入って装いも新たに再出発したようなので試してみた。
以前のOvirtはRuby on RailsベースでFreeIPAやCobberと連携するものだったと記憶しているが、今はJBossJavaアプリケーションになっているようです。
UIを見るかぎり、RHEV-M 3.0がベースになっているようなので、そっちを触ったことがある人はとっつきやすいのかもしれません。
(私はRHEV-Mを触ったことはありません。Web上のスクリーンショットからそう感じているだけ。)



Wikiにある程度インストール周りの情報がまとまっているので、基本的にはそれを参照します。


気付いたポイントだけ追記する。

その1。
vdsmd.serviceは初回起動時にlibvirtd.confとqemu.confにいくつかの行を自動で追記します。
TLS(SSL)無しだと以下のようになると思います。

listen_addr="0"
unix_sock_group="kvm"
unix_sock_rw_perms="0770"
auth_unix_rw="sasl"
save_image_format="lzop"
log_outputs="1:file:/var/log/libvirtd.log"
log_filters="1:libvirt 3:event 3:json 1:util 1:qemu"
auth_tcp="none"
listen_tcp=1
listen_tls=0
dynamic_ownership=0
spice_tls=0

ただし、TLS周りの追記内容はlibvirtd.confとqemu.confで判定基準が違うため、/etc/vdsmd/vdsm.confにSSL Falseの設定をする前にvdsmd.serviceを起動させてしまうと、spice_tls=1がqemu.confに書かれてlibvirtd.confと矛盾する内容になってしまい、以下のようなメッセージを吐いてvdsmdが起動しなくなります。

conflicting vdsm and libvirt tls confguration.
vdsm.conf with ssl=False requires libvirt with:
listen_tcp=1, auth_tcp="none" and spice_tls=0


その2。
JBossは/var/runにpidを要求するくせに、tmpfsの設定はしてくれません。
/etc/tmpfiles.d/に設定ファイルを作ってあげましょう。

  • /etc/tmpfiles.d/jboss.conf
D /var/run/jboss 0700 jboss jboss -


その3。
wikiにも書いてあるけど、以下は必須。
やらないとVirtual Machine作成しても起動しません。

psql -U postgres engine -c "update vdc_options set option_value='pc-0.14' where option_name='EmulatedMachine' and version='3.0';"

やるのを忘れて、後から実行したらovirt-engineを実行しているマシンを再起動するまで反映されませんでした。
(よくよく考えるとjbossの再起動だけでも良い気がする)


その4。
jbossはサービスで起動するので以下は不要。

${JBOSS_HOME}/bin/run.sh -b 0.0.0.0


その5。
wikiでは下記のコマンドで実行しているけど、Hostの登録はWeb UIからもできます。

curl -X POST -d "<host><name>${hostname}</name><address>${ipaddress}</address><root_password>${password}</root_password></host>" --header "Content-Type: application/xml" -u 'admin@internal:letmein!' http://${server}:${port}/api/hosts


インストールが終わったら、http://:8080/webadmin/ にアクセスして残りの設定。 Data Centerの定義 ↓ Clusterの定義 ↓ Hostの登録 ↓ Storage Domainの登録

    • DataとISOの2つ必要
    • isoファイルはengine-iso-uploaderコマンドか、Domain Type:ISOで登録したストレージの //images/11111111-1111-1111-1111-111111111111 というディレクトリに放り込む


Virtual Machineの作成



Data Center




Cluster





Host




Storage Domain




Virtual Machine










Template






設定の依存関係も下から上になっているので、削除するときは気をつけましょう。
いきなりClusterのHostを全削除、とかやると多分詰みます。
1回やらかして、Storage Domainが迷子になったのかData Centerの削除もHostの追加もできなくなったので初期化しました。


以下、パッと見まだ実装されていないもの

  • ovirt-engineのConfiguration
    • account管理、パスワードの変更
  • Storage Domain
  • Live Migration
  • Pool

個人的にiSCSIとLive Migrationが無いのが痛いので、すぐに使うことはないと思いますが、
yumからspice-xpiを導入するとFirefoxからspiceのコンソールにアクセスできるのはすばらしいので、今後に期待します。


しかしインストール関連以外のドキュメントがほとんど無いのはどうにかして欲しいなあ。
engine-* コマンドの設定周りのドキュメントが欲しいよ。