CentOS7.1にKVMハイパーバイザーを構築してoVirtで管理してみる Part.1

経緯

自宅に不要なノートPCのLenovo G570 (Intel i5, ディスク容量650GB, メモリ4GB) が放ってあったので、「どうせ使わないしLinux入れるか」という事でCentOS 7.1(Minimal ISO)をインストールし、「どうせだから仮想化するか」と思い立ち、Webで管理できるoVirtを入れました。
で、どうにかできたので、構築から仮想マシンを動かすまでの手順をまとめたいと思います。
本当はvSphere Hypervisorを入れたかったのですが、ノートPCで動くかわからなかった為断念しました。
他の仮想化と言えばHyper-V、Xen、Docker、KVM・・・。
Hyper-Vは重そうなのでパスです。
(Windows 2012 R2 の媒体はあるんですが・・・。)
DockerはLinuxしか動かせないと聞いたのでこれもパス。
(本当は手を出してみたかったのですが・・・Windowsも動かしたかったので・・・。)
残ったのはXenとKVMでしたが、KVMの方が今後使えそうだったので、KVMハイパーバイザーを構築する事にしました。

今回の記事のキャプチャやコマンド結果はLenovoのものではなく、VMware上で構築したものをキャプチャしています。
IPアドレス割り当てはDHCPです
でもDHCPは止めておきましょう。IPアドレスが不安定になるので・・・。
ただ、有線の場合は多少安定するようです。
また、DNS環境等は特に整えていません。

今回はKVMハイパーバイザー上でoVirtを動作させます。
あまり良くない構成なのですが・・・。

KVMって何?

Linuxに標準搭載されている仮想化基盤の事です。
Linux自身をハイパーバイザーとして動かうことで、仮想マシンを動作させることが可能です。
様々なディストリビューションで利用ができ、管理方法やツールも多岐に渡ります。
VMware ESXi と同様、ライブマイグレーションや電源管理の利用ができたりと、OSSではありますが、機能に遜色はないと思います。
管理には、CLIでの管理方法、X Window からGUIを起動して管理する方法、Web上から管理する方法とあるようですが、今回は3つ目のWeb上からKVMを管理する方法で実施していこうと思います。
そのために使うツールがoVirtです。

oVirtって何?

oVirtは、ハイパーバイザーをWebブラウザから管理することのできるツールです。
VMware vSphere の代替を目指しているようで、最初は有志によるプロジェクトだったようですが、今はRedHat社の傘下に入っています。
RHELではRHEVという仮想化ツールがあるのですが、これとoVirtプロジェクトが統合したようです。
「vSphereの代替」の目標通りoVirtでは、登録してあるKVMホストの情報、仮想マシンの状態、ネットワーク、クラスタ構成等の閲覧、操作、作成が可能です。
ただし、ブラウザ画面による管理なので、サポートしていないブラウザも多く、改良が待たれるところです。
しかし、機能豊富で設定も簡単な事から、KVMの管理ツールとして右に出るものはいないのではないかと思っています。
現状KVM管理ツールにスタンダードとなるものはありませんが、これからはoVirtがデファクトスタンダードになるだろうと思うので、構築してみてまとめようと思った次第です。
中々日本で浸透していないのか、twitterでサーチしても日本語の情報が出てこなかったり、構築の説明をしているサイトも1年前だったりと、最近の記事がなかったという事も理由の一つです。

今回の構成

ホスト:1台
ホスト名:kvmhv.example.com
IPアドレス構成:DHCP 192.168.0.0/24 で払い出し
OS:CentOS Minimal ISO 7.1
言語:日本語
パッケージ:最小構成
SELinux:Disabled
firewalld:dead disable
yum update:済み

実際に物理サーバ上に構築したのですが、キャプチャはVMware Playerで構築したものを取得したり物理サーバから取得したりと、混在しています。
極端にディスクが少ないとか、CPUが1だったりとか、IPが変更するとかはVMで構築した際のものなので、ご容赦ください。

KVMの構築

必要パッケージのインストール

CentOSに下記のパッケージをインストールします。
必要になるのは libvirt, qemu-kvm, bridge-utils です。

パッケージ名 機能
libvirt 仮想マシンの制御をするライブラリ
qemu-kvm 仮想マシンのI/Oデバイスエミュレータ
bridge-utils ブリッジインターフェイスの設定パッケージ
これを入れないと仮想マシンがNAT接続になるらしい

yum で一括インストールしてしまいます。
依存性の関係で色々なパッケージが一緒に導入されます。
全部インストールしましょう。

全パッケージがインストールされたら完了です。

KVMが有効か確認

折角インストールしても、KVMが無効になっていては意味がありません。
有効ならばモジュールが読み込まれているはずなので、 lsmod コマンドで確認します。

上記のような表示がされれば有効です。

ネットワークインターフェイスの設定

次にネットワークインターフェイスの設定をします。
今あるNICの設定を ifcfg-ovirtmgmt という名称でコピーします。
とあるサイトでは「nmcliコマンドを使う」と書いてあったりもするのですが、今回は直接ファイルを操作して実施します。
nmcliの方が、ひょっとしたらシステム的には良いのかもしれませんが・・・私は全く慣れていないので・・・。

ブリッジインターフェイス

コピーしたら ifcfg-ovirtmgmt の設定を変更します。
このインターフェイスはKVMの通常ネットワーク兼管理ネットワークになります。
VMwareでいうところのVMkernelと同じものですね。

ifcfg-ovirtmgmt

インターフェイスタイプに「Bridge」を指定し、インターフェイスのデバイスと名前に「ovirtmgmt」を設定しています。デバイスがこの名前でないとoVirtはネットワーク設定を読み取ってくれません。

物理インターフェイス

物理インターフェイスである ifcfg-eno16777736 の設定も変更します。

ifcfg-eno16777736

IPアドレスはブリッジインターフェイスに取得させるようにして、物理NICはブリッジインターフェイスと紐付けをさせます。
設定ファイルからIPアドレスやDNSの項目は全て除外し、名前とデバイス名と、OS起動時の設定と、「BRIDGE」としてどのブリッジインターフェイスと紐付けるかだけを設定します。

KVMの設定は以上で終了です。
confファイル等は変更不要です。
全然KVM触ってねえのに何が設定だふざけんな!とお思いでしょうがご容赦ください。

oVirtの構築

oVirtリポジトリのインストール

まずはリポジトリのインストールから始めます。

/etc/yum.repos.d 配下に ovirt3.5 の yumリポジトリが追加されていると思います。

次に yum でパッケージをインストールします。
インストールするパッケージは、 ovirt-engine と vdsm です。
ovirt-engine はその名の通りoVirtのパッケージです。
vdsm は仮想マシンの作成、 統計値の蓄積、 ログ収集などホスト管理作業を管理する為のパッケージになります。
通常のリポジトリではインストールできなかったので、ここで一緒にインストールします。

これでoVirtと関連パッケージのインストール完了です。

oVirtセットアップ

oVirtには、 engine-setup という便利なコマンドが実装されています。
これを使用する事で、ファイルの編集を必要とせず、対話式に必要な設定を行ってくれます。
早速実行してみましょう

successfully と出れば設定完了です。

oVirtにアクセスしてみる

engine-setup でoVirtのセットアップが終了すれば、もうoVirt管理サーバにアクセスができます。
アクセス方法は engine-setup 実行時に表示されていました。
http://kvmhv.example.com/ovirt-engine
https://kvmhv.example.com/ovirt-engine

上記にアクセスすればいいのですが、今回はDNS環境ではないのでホスト名でつながりません。
よってIPアドレス直打ちになります。
https://IPアドレス/ovirt-engine

アクセスすると下記のようなページが表示されます。
「管理ポータル」というリンクがある為、そちらをクリックしてみましょう。

image

ログインページが表示されるのでログインします。
ユーザ名は admin
パスワードは engine-setup 実行時に設定したパスワードを入力します。
Profileは「internal」のままで結構です。
因みに私は使用ブラウザがOperaなので、「使ってるブラウザだとちゃんと表示されないかもよ?」という警告が表示されてしまいますが、使っていて特に不具合を感じた事はありません。
firefoxならこの警告は出ないようですが・・・。

image

ログインが正常に完了すると下記のようなページが表示されるかと思います。

image

oVirtではここから仮想マシンやらクラスタやらストレージやらの管理ができます。
ユーザーを作成してロールを設定する事も可能です。
グラフ描画機能まではないようですが、個人で運用するには全く問題なく利用できると思います。

Pandora'Box © 2015 Frontier Theme