KVM(Kernel based Virtual Machine)を語れ
SL6.1のKVMで仮想環境を構築しています。
ゲストOSをすべてbo0にぶら下げるのとtap0、tap1を作ってそれぞれにぶら下げるのはどう違ってくるんでしょうか。
kvm-qemuで環境構築してつまづいてます
kvm-qemu0.15.1、libvirt-0.9.7、virtinst-0.600.0、virt-manager-0.9.0をソースコードを
拾ってきてインストールしました。
OSはdebian(sqeeze)の64bitです。
virt-manager-0.9.0のインストールとか手間取りましたがvirt-managerを立ち上げるところまで
きました。
lsmod | grep kvm
kvm_intel 38146 0
kvm 214248 1 kvm_intel
find /lib/modules/ -name kvm\* -print
/lib/modules/2.6.32-5-amd64/kernel/arch/x86/kvm
/lib/modules/2.6.32-5-amd64/kernel/arch/x86/kvm/kvm-amd.ko
/lib/modules/2.6.32-5-amd64/kernel/arch/x86/kvm/kvm-intel.ko
/lib/modules/2.6.32-5-amd64/kernel/arch/x86/kvm/kvm.ko
kvm.koモジュールも読み込めてると思うのですが、virt-managerで新規VMを
作成しようとすると、
「カーネルモジュール kvm.koが読み込まれていない」と出てしまいます。
上記のようにモジュールは読み込めていると思ったのですが・・・。
ご教授いただければと思います。
M/B:FOXCONN Z68A-S
CPU:Intel Corei5 2400S
MEM:4GB×2 8GB
ソースで拾ってこないでaptとかでやったほうがいいんだろうか・・・w
自分があったのは
libvirtdが上がっていない
virt-managerがroot権限でない
だった。外してるかも。
>>935 とりあえず生のqemu-system-x86_64叩いてちゃんと動くかどうか試したら?
おおかた
>>936あたりの原因だと思うけど。
しかし、Debain Squeeze使っててsrcから入れる必要が感じられないなあ。
virtfsを使いたいとかなら分かるけど。
>>935 > kvm.koモジュールも読み込めてると思うのですが
$ lsmod |grep kvm
で出てくる?
939 :
938:2011/11/21(月) 18:28:19.85 ID:5OMKOAAy
Win7・WinXPをKVM上で10程度動作させているんですが、ホストサーバーのリプレースが必要になりました。
ホストOS間のゲストイメージの移動で再アクティベーションを求められたりする可能性はありますか?
新ホストサーバーはHDD・CPU・チップセットが変更になります。
審議中AAry
>>940 本番環境以外で試せばいいじゃん。
ここでの答えが絶対的に正しいとは限らないよ。
KVMは知らないけれど、VMwareだとイメージを移動して最初の起動で、「コピーしたものか」「移動したものか」を聞かれるね。
あれで何を変えてるんだろう。仮想NICのMACが変わるのか、とか推測してるんだけど、
同様なことがKVMでも起こるってそれがアクティベーションにつながるか?
>>940 どうせ聞くなら、
「KVM上で私がアクチすると
世界中でライセンス違反が発覚
しますか?」
とかにしてほしいw
ほす
946 :
940:2011/11/26(土) 12:05:36.78 ID:rhXzp3vi
アドバイスどうもです。
一部問題でましたが作業完了しました
qemu-kvm-0.15.1でIntel Gigabit CT Desktop AdapterをPCIパススルーでゲストOS(XP SP3)に認識させたら
LANケーブルの接続が認識されなくなったり、たまにされたり・・・を繰り返して不安定な状況です。
同様の方いますか?解決策などあれば。
948 :
947:2011/11/27(日) 16:15:07.21 ID:QenaaBw4
どうにも解決できないのでブリッジ接続で済ませてしまった。
あまりIntelチップの恩恵受けられないなあと思いつつ。
ゲストのPT2が安定稼働してくれたから許す
>>936 >>937 >>938 アドバイスありがとうございます。
権限とか確認してみます。
debian squeezeなら確かにさくっとインストールできるんですが、それでやったら
PT2が認識できなかったんです。
進展がありましたら報告します
>>949 debian squeeze pt2 でgoogle さんに聞いたら動くみたいだが
>>951 ホストOSに当てるってこと?
VMDqってのを初めて聞いたから仕組みがよくわからんのだけど、パススルーするからホストのドライバ関係ないんじゃないかと思った。
あと内蔵の蟹チップNICも同様の症状が出たから、もうNICをパススルーすること自体間違ってたんじゃないかと言い聞かせて諦めてる。
>>952 ドライバはホストOSに当てる
それを当てておけば、CTがProSet仕様に化ける
で、仮想NIC毎にパケットをキューイングしてくれるのがVMDqなんだけど
IntelのProSet仕様LANコンはそれをサポートしてる
以上、パススルーとはまったく別の概念
だから、IntelのLANコン使うなら仮想ホストにそれぞれ仮想NIC持たせて
VMMで仮想スイッチを立てて、ホストOSでNATしてやるのが一番いい方法
NICをパススルーというのは、仮想ホスト毎にNICと線が必要になるから
あまり現実的ではないのだよね
だからこそvirtioなわけで
ただ、パススルー出来ないってのはなんだろね
古いドライバとかだと、そういう問題が良く起こるけども
ProSet仕様のドライバを当てれば、恐らく問題なくいけると思うよ
あと、仮想ホストにパススルーする対象のethを実ホストでdownさせてから
仮想ホスト起動することを忘れずに
>>953 なるほど、仮想スイッチ立てて動かすのね。
うちの環境はゲスト1つしか考えてなかったからパススルーで良いかなと。
でも結局948に書いたようにブリッジにしてしまったから、教えてくれたドライバ当ててやってみるよ。
ちなみにパススルーできないって話は、ゲストに認識させることはできるけど、ドライバを入れた後に落ちる。
当然実ホストでethは落としている(というかモジュール自体起動時に外してる)し、VM上でBIOSも読み込まれた。
まだ成熟してないってことでこれは諦めようかと思う。
955 :
login:Penguin:2011/12/02(金) 00:14:37.72 ID:vNDrzKz9
10G NICでVMDq有効にならない
あと、VMDqってサポートしているqemu-kvmってどれなの?
956 :
login:Penguin:2011/12/02(金) 00:17:37.43 ID:vNDrzKz9
>>921 RARP出してるから対応している
対応機器使いなよ?
私の認識が間違ってたら申し訳ないけど、VMDqってドライバ側の話じゃない?
それと、10GbE使ってるなら、SR-IOVしたほうが良いと思う
ixgbeドライバ使ってるでしょ?
SL 6.1 の KVM で FreeBSD 8.1 を入れているのですが、
virsh console で長い文字列(SSH公開鍵)をコピペすると
シリアルコンソールが固まってしまいます。
どのような原因が考えられますでしょうか。
今KVMとVirtualboxを使ってるんだけど、Xenも一緒に入れて大丈夫かな?
>>958 KVMというよりシリアルコンソール共通の問題なんだが、
端末からペーストしたときに相手側の応答を待たずに文字を送り続ける状態になるため
文字が書けたり固まったりする
コンソールの設定を疑った方がよさそう
転送速度の調整とかね
モノによっては、コピペ可能にしてくれるオプションもある
>>959 やったことないからなんともだけど
ネストさせる分には完全仮想化でいけると思う
逆に同じ階層に複数のハイパーバイザーを入れるのは微妙
特権処理とかどうなるかわからん
なんとかする手段はありそうな気がするけど
961 :
959:2011/12/08(木) 23:31:06.78 ID:8hYOI8M3
>>960 なるほど、完全仮想化ですね
ありがとうございます
なんでvirt-managerって、NICのソースデバイス変更ができないんだろうね?
(物理で言うところの、LANケーブルを別のスイッチに移動)
技術的にできないとは思えないんだけど、なんか不都合でもあるんだろうか。
仕方なく毎回xmlファイルを直変更してるけどめんどくさい。
かと思えばストレージフォーマットがrawからqcowとかに変更できるようになってるけど、
よもやコンバート込みで変更してくれるなんてことは…と思いながら試したら
案の定起動しないw
必要性がないからじゃないかな
いくらでも仮想NICとvLANが組めるわけだし
>>960 KVMを使う場合FreeBSDでは幾つに設定すればいいのでしょうか?
>>964 うーん
こればっかりはわからん
転送速度だから、回線の速度とかサーバ側のレスポンスとか色々あるし
多分ボーレート9600に設定されてて遅いのかな
19200くらいにしてみるとか
ウチの鯖マシンのコンソールリダイレクションが115200だからシリアルは
全部それに合わせてる俺
libvirtを使わずqemuを直接実行して仮想マシンを管理してるのですが、
-monitor pty を使うと、/dev/pts/数字 に仮想マシン毎にモニタが
作られますが、仮想マシンを起動(qemuプロセスを実行)した
タイミングでしか出力されないので、後になって、
どの仮想マシンがどのptsにヒモづいてるかわからなくなってしまいます。
何かうまい方法は無いものでしょうか。
ホストのeth0に入ってくるパケットは802.1Qのタグ付きパケット
それをタグ付きのままゲストのNICに流し込むにはどうすればいいんでしょう?
Vyatta on KVM で Vyatta側にVLANのuntaggingをまかせたいのですが…
eth0 のブリッジとしてbr0を作成して、そこに
vyattaのインタフェースを接続してもダメですか?
971 :
967:2011/12/14(水) 20:04:56.62 ID:NRyZRC5A
tagged --> [物理eth0] -->(br0?)--> [VMの仮想eth0] --> tagged
という感じでVMまでtaggedのままパケットを流したい。
でもブリッジ(br0)にtaggedのままパケット流してる事例が見つからないので
おたずねした次第です。
VMまでtaggedで流し込めたら
>>970 提示みたいなことがVM上でできるなーと。
まずは
>>969 を試してみろってとこですね。
ありがとうございました。
一番楽なのは bridge が一般のL2スイッチみたいにタグの付け外しと受け渡し先設定が自由自在!
だったらよかったんですけどね(´・ω・`)
Linux標準のbridgeでいけるかは分からないけど、
openvswith にすれば多分行けるんじゃないかと。
VLAN対応してるので。
975 :
967:2011/12/16(金) 12:40:23.66 ID:X0oJ3GEY
>>972-974 ありがとうございます。
サーバが調達できそうなんで、弄ってみてまた報告したいと思います。
>>972 VLANを扱ってはいるのですが、VMの外でuntagして、という構成なので
うまいこと出来なかったときの最終手段ですね。
>>968 ホスト Ubuntu11.10、ゲスト CentOS5で
>>969を試したんだけど
できているね。
ゲスト側のeth0を tcpdump -e で覗いてもタグ付きのパケットが
見えないのが若干きもいけど。
KVMっでpv-ticketlocksとか準仮想化命令サポートして
どんな意味があるの?意味なくない?
ありますけど
>>977 全く意味ないよ。KVMは完全仮想化されているから使われることはないよ。
virtio や vhost 周りで効くんだろ。
生半可な知識のやつ多いな
古い知識のままな人だったり
古い情報を最新の情報と捉えてしまった人だったり
まあ中途半端な知識の人が多いね
KVM自体は完全仮想化だけど、PVドライバの存在を知らなかったりとか
PVドライバはI/Oのみで有効
Xenみたいにmmuとかでは全く意味がない
PVドライバは完全仮想化全体に影響はない