2013年07月26日
【LPIC試験対策】304 高信頼システム構築標準教科書を使ってKVMをインストールしてみた モジュールの追加につまづいたの巻
前回の続き
--------------------------------------------------
modprobe kvm
modprobe kvm-intel
--------------------------------------------------
まずは上記のKVMに必要なモジュールを追加します。
…(略)/kvm-intel.ko): Operation not supported
modprobe kvmは通ったけど、kvm-intelはダメだ。エラーが出た。
さんざん設定する気満々だったが、OS云々の前にCPU側に問題があった。
/proc/cpuinfoにてvmx,svmのどちらかのフラグが立っていなければ、
仮想化支援機能を有していないので、KVMは利用不可とのこと。
どう頑張っても無理だということ。
--------------------------------------------------
cat /proc/cpuinfo | grep vmx
cat /proc/cpuinfo | grep svm
--------------------------------------------------
何も表示されない終了。
ここに完全仮想のみをサポートするという弊害が出てくるわけだ。勉強になった。
「高信頼システム構築標準教科書より」
CPUの準仮想化には対応していません。そのため、KVMではIntel VT-xなどのハードウェアによる仮想化のサポートが必須です。
KVMは、Linuxカーネルの一部として動作し、Xenに比べると非常にシンプルな実装となっています。
そうですか・・・CPUが対応していなければ使えないんですね。
と、ここで一度諦めようとします。
でも、VMを動かしているWINDOWSホストOSではIntelVTサポートしていることに気づいた。
確認方法としては、Windowsマシン自体のBIOSをチェック。電源ボタンのあと、「F2」連打でね。
CPUの項目で、VirtualizationTechnology > [Enabled]に設定されていることを確認しました。
(VirtualizationTechnologの別名、VT、Vanderpool Technology、VMX、Virtual Machine Extensions)
そうです。あくまでKVMゲストのホストマシンはVM上で作ったLinuxがホストマシン。
コイツが設定を握っている。しかし、こいつ自体のBIOSを見てもCPUの項目なんてありません。
(もし、VMWareゲストのBIOSってそもそもどうやって立ち上げるの?って興味を持った人だけ読んでください。
grubが立ち上がる前に「F2」です。しかし、ものすごく早くgrubが立ち上がってくるので、
VMのゲスト自体のvmxファイルに「bios.bootDelay="3000"」を追記。これで3秒待ってくれます。)
VMWarePlayerの仮想マシン設定→ハードウェア→CPU→仮想化エンジンに
Intel VT-x/EPT または AMD-V/RVIを仮想化というチェックボックスがあります。
これをKVMホストの起動前にチェックを入れて立ち上げるだけです。
Windows自体のCPUが仮想に対応しているなら、これでサポートできるようになるみたいです。
これだけの話だった・・・。変なところで躓いてしまった。
--------------------------------------------------
modprobe kvm
modprobe kvm-intel
--------------------------------------------------
いけた。(けどリブートしたら消えちゃう。
とりあえず、/etc/rc.d/rc.localに上記コマンドを放り込んで再起動)
再起動後、lsmod | grep kvmで上記モジュールが見えたことを確認。
これで自動的に読み込んでくれる。
今日はここまで。次の回で、実際に動くところまで行きます。
--------------------------------------------------
modprobe kvm
modprobe kvm-intel
--------------------------------------------------
まずは上記のKVMに必要なモジュールを追加します。
…(略)/kvm-intel.ko): Operation not supported
modprobe kvmは通ったけど、kvm-intelはダメだ。エラーが出た。
さんざん設定する気満々だったが、OS云々の前にCPU側に問題があった。
/proc/cpuinfoにてvmx,svmのどちらかのフラグが立っていなければ、
仮想化支援機能を有していないので、KVMは利用不可とのこと。
どう頑張っても無理だということ。
--------------------------------------------------
cat /proc/cpuinfo | grep vmx
cat /proc/cpuinfo | grep svm
--------------------------------------------------
何も表示されない終了。
ここに完全仮想のみをサポートするという弊害が出てくるわけだ。勉強になった。
「高信頼システム構築標準教科書より」
CPUの準仮想化には対応していません。そのため、KVMではIntel VT-xなどのハードウェアによる仮想化のサポートが必須です。
KVMは、Linuxカーネルの一部として動作し、Xenに比べると非常にシンプルな実装となっています。
そうですか・・・CPUが対応していなければ使えないんですね。
と、ここで一度諦めようとします。
でも、VMを動かしているWINDOWSホストOSではIntelVTサポートしていることに気づいた。
確認方法としては、Windowsマシン自体のBIOSをチェック。電源ボタンのあと、「F2」連打でね。
CPUの項目で、VirtualizationTechnology > [Enabled]に設定されていることを確認しました。
(VirtualizationTechnologの別名、VT、Vanderpool Technology、VMX、Virtual Machine Extensions)
そうです。あくまでKVMゲストのホストマシンはVM上で作ったLinuxがホストマシン。
コイツが設定を握っている。しかし、こいつ自体のBIOSを見てもCPUの項目なんてありません。
(もし、VMWareゲストのBIOSってそもそもどうやって立ち上げるの?って興味を持った人だけ読んでください。
grubが立ち上がる前に「F2」です。しかし、ものすごく早くgrubが立ち上がってくるので、
VMのゲスト自体のvmxファイルに「bios.bootDelay="3000"」を追記。これで3秒待ってくれます。)
VMWarePlayerの仮想マシン設定→ハードウェア→CPU→仮想化エンジンに
Intel VT-x/EPT または AMD-V/RVIを仮想化というチェックボックスがあります。
これをKVMホストの起動前にチェックを入れて立ち上げるだけです。
Windows自体のCPUが仮想に対応しているなら、これでサポートできるようになるみたいです。
これだけの話だった・・・。変なところで躓いてしまった。
--------------------------------------------------
modprobe kvm
modprobe kvm-intel
--------------------------------------------------
いけた。(けどリブートしたら消えちゃう。
とりあえず、/etc/rc.d/rc.localに上記コマンドを放り込んで再起動)
再起動後、lsmod | grep kvmで上記モジュールが見えたことを確認。
これで自動的に読み込んでくれる。
今日はここまで。次の回で、実際に動くところまで行きます。