2018年5月31日木曜日

Oracle Linux 7 で KVM。

Oracle Linux(OL)7 は KVM ホストとして利用することもできます。
そして Oracle OpenStack でハイパーバイザを KVM にする場合は、
OL を KVM として利用できるようです。
実は OL7 の英語版ドキュメントには、KVM についての章がります。
Oracle Linux Administrator's Guide for Release 7
Chapter 30 Using KVM with Oracle Linux
https://docs.oracle.com/cd/E52668_01/E54669/html/ol7-kvm.html

そこで、Oracle Linux 7.5 で KVM を使用してみます。

KVM のカーネルモジュールは、UEK ではデフォルトでロードされています。
[root@kvm01 ~]# cat /etc/oracle-release
Oracle Linux Server release 7.5
[root@kvm01 ~]# uname -r
4.1.12-124.15.2.el7uek.x86_64
[root@kvm01 ~]# lsmod | grep kvm
kvm_intel             167936  0
kvm                   520192  1 kvm_intel

パッケージは、libvirt と qemu-kvm のインストールだけだと不便なので
Virtualization Host グループでインストールします。
[root@kvm01 ~]# yum groupinstall -y "Virtualization Host"

libvirtd を起動します。
[root@kvm01 ~]# systemctl is-active libvirtd
inactive
[root@kvm01 ~]# systemctl is-enabled libvirtd
enabled
[root@kvm01 ~]# systemctl start libvirtd
[root@kvm01 ~]# systemctl is-active libvirtd
active
virt-install をインストールします。
[root@kvm01 ~]# yum install -y virt-install

このホスト自体は 4GB 程度のメモリ容量なので、
メモリ容量 2GB(--memory 2048)で OL 7.4 ゲストの VM を作成してみます。
※ちなみに、ゲストのメモリを2GB 以下にすると OS インストールが失敗します。
[root@kvm01 ~]# grep MemTotal /proc/meminfo
MemTotal:        3781852 kB

ホストは OL 7.5 ですが、VM には OL 7.4 をインストールしてみます。
http://192.168.1.239/os/ol74/ には OL 7.4 の ISO の内容を配置しています。
[root@kvm01 ~]# virt-install --name ol75 --vcpus 1 --memory 2048 --disk size=8 --os-type=linux --os-variant rhel7 --accelerate --location http://192.168.1.239/os/ol74/ --extra-args="console=ttyS0"

今回は GUI の virt-manager や virt-viewer をインストールしていないので、
virsh で接続してみます。
[root@kvm01 ~]# virsh
virsh にようこそ、仮想化対話式ターミナルです。

入力: 'help' コマンドのヘルプ
'quit' 終了

virsh #

インストール開始した VM にログインして、インストールをすすめます。
virsh console でこの Id を指定して接続します。
virsh # list
 Id    名前                         状態
----------------------------------------------------
 1     ol75                           実行中

virsh # console 1
ドメイン ol75 に接続しました
エスケープ文字は ^] です

そのうちインストール画面にすすむので、Text モードでパラメータを指定します。
root パスワードなども、ここで指定します。
(今回は、ここの詳細は省略)




ゲスト OS のインストールが完了して再起動されると、
ホスト側の virt-install は下記のような感じで終了します。
[root@kvm01 ~]# virt-install --name ol75 --vcpus 1 --memory 2048 --disk size=8 --os-type=linux --os-variant rhel7 --accelerate --location http://192.168.1.239/os/ol74/ --extra-args="console=ttyS0"
WARNING  グラフィカルコンソールに接続できません: virt-viewer がインストールされていません 。'virt-viewer' パッケージをインストールしてください。
WARNING  ゲストのコンソールがないため、デフォルト値 --wait -1 を適用します。
インストールの開始中...
ファイル vmlinuz を読出中...                               | 5.6 MB  00:00:00
ファイル initrd.img を読出中...                            |  48 MB  00:00:00     A
割り当て中 'ol75.qcow2'                                       | 8.0 GB  00:00:00
仮想マシンのインストールが進行中です。インストールが完了するまで  を待っています。
ドメインがシャットダウンしました。続けています。
仮想マシンの作成が完了しました。
ゲストを再起動しています。
[root@kvm01 ~]#

virsh で VM の Id 確認&接続してみると、OL 7.4 がインストールされています。
何度か試行錯誤のうえ、Id は 10 になっています。
Id は VM を起動 / 再起動するたびに増加して、ホスト再起動などでリセットされます。
virsh # list
 Id    名前                         状態
----------------------------------------------------
 10    ol75                           実行中

virsh # console 10
ドメイン ol75 に接続しました
エスケープ文字は ^] です

Oracle Linux Server 7.4
Kernel 4.1.12-94.3.9.el7uek.x86_64 on an x86_64

localhost login: root
Password:
[root@localhost ~]# cat /etc/oracle-release
Oracle Linux Server release 7.4
[root@localhost ~]# virt-what
kvm

最近 KVM ベースのハイパーバイザを扱うことがあるので、
ふと思い立ってただの KVM をさわるべくやってみました。

以上、OL 7.5 で KVM を使用してみる話でした。

0 件のコメント:

コメントを投稿