KVM(Kernel based Virtual Machine)を語れ 2
■ このスレッドは過去ログ倉庫に格納されています
クライアントのNICの割り込み処理(?)が350Mbpsを超えたあたりから
追いつかなくなって糞詰まりになるのは、KVMではしかたがないんでしょうか? qemu-img snapshot -c でqcow2イメージのスナップショットを取った場合、
ファイル内部的には差分データはどこに書かれるんでしょう?単純にファイル後半につけたし?
diffファイルが別にできてくれれば話は早いんですけどねー… >>41
virtioとvhost-net使ったか?話はそれからだ。
>>43
ソース読め。分からなければググれ CPU i7-2600
MEM 16G
HDD 1T x2台
SSD 120G
こういう構成のマシンにKVM入れて、ゲストにファイルサーバ用のFreeNAS、
社内用DB&Webサービス開発用のCentOS、ライセンスサーバー用のWindows XPを
入れようと思ってます。皆さんならSSDを何に使います? ホストOSはCentOSかFedoraかで迷ってます。
ゲストでも入れるのは半分Migrationの実験も兼ねてるからです。 そんだけ積むんなら、RaidZは辛いかな
各ゲストの性能要件がわからんからなんとも言えないけど
とりあえずホストOSインスコしてゲストOSインスコ用の仮想ディスク作って置いておく
ちょっと窮屈だね
でも開発用だから良いのか?
と思ったけど、DBは社内用の本番系なのか?
DBの要件によっては、NASかDB、どっちかを外に出したいのが正直なところ VT-dでストレージコントローラーごとゲストにパススルーするならいいが、
I/Oの多いファイルサーバやDBはvirtio経由だと使いたくないというのが正直なところ。
SSDは今だと速度の落ちにくいPLEXTORのPX-M2Pか、安定の
東芝コントローラー搭載品でいいんじゃね。エンプラ向け製品?知らんがな。 SSDに何を、じゃなくてSSDを何に、じゃね?
ホストOSとゲストOSと、DBの要件によってはDB置くかなあ。そもそもなんでつけたの? VirtualBOXのCentOSでVMXが有効にならねー!!
KVM使おうと思ったのに、何だこれ・・・ NestedVM出来るCPU使ってるのか?
それ以前にVBOXで出来るのか? wikipediaとかでintel-vt調べてみると何でできないか分かるかも。 http://gigazine.net/news/20120322-sakura-cloud/
まだまだ安定しねぇなぁ。
なんとなく思ったんだがWebサーバー&DBサーバーぐらいだった、
わざわざOSのVM使わず、Smalltalkの中にApacheとOracle、
JVM放り込んで動かした方がパフォーマンス的にはマシなんじゃないか? 以前、隔離スレでZFSの素晴らしさ、BSDに比べてLINUXが如何に不安定か、
世界中の基幹ネットは須くWINDOWSとBSD他UNIX(と多分MACも)で構築されるべき
という持論を展開していた痛々しい人を思い出した さくらの件ってKVMが悪いの?ストレージが悪いの? >>58
リリースされている情報からすると、それすら切り分けられていないような。 さくらもストレージ機器メーカー大喜びの実験場になってるな。
期待してるからグダグダにならんことを祈る。 世の中には、Solarisも、AIXも、HP-UXも結構よくこけるという事実を知らない人が多いんだな。 え、世の中の Solaris, AIX, HP-UX ってさくら並にこけまくるの? >>62
こけるこける。それをいかにこけさせないようにするかが運用技術者の腕の見せ所。マニュアル対応しかできん奴には無理。 単に、どの程度の負荷でボロを出し始めるかの違いってだけだわ。
linuxはわりと早めにボロが出る。 KVMホストOSに一番ののおすすめは?
Fedora
Cent OS
Debian SSD/Linux とは渋いな・・・しかしホストに選ぶのはかなりの苦行じゃないか? Sotokanda Software Distributionか 好きなの使えよ
俺ならネット上に情報が多そうなの選ぶけど >>70
Fedoraはクライアント用にはいいが、
サーバー用には不便だぞ
バージョンアップによるサポート切れがすぐくるから
1年程でOS再インストールせにゃならん 再五十子せんでもアップグレード掛ければいいんじゃ?
Debianのアップグレードの高い打率には及ばないながら
滅多なことではUG失敗しないよ 仮想サーバーホスト用としては、機能追加が少なく
長ーく同じバージョンが保守されてるOSがいいんじゃね
ホスト自体が多機能である必要全然ないもん
むしろ保守に必要な最低限の機能残して他削除してもいいぐらい そうするとやっぱDEBIAN辺りに落ち着くのかな? 性能向上を突き詰めるにはGENTOOか?? 前>>968で「ホストのNICにタグ付きで入ってくるパケットを、そのままゲストに渡せないか」
と質問してた件、手元機材で確認できました。
br0のようなブリッジデバイスがtaggedパケットを通すか心配してたのですが、すんなり
ゲストのNICまで流れてきました。
[tagged] -> host_eth0 = host_br0 = host_vnet0 = guest_eth0 -> [tagged]
ホスト・ゲストともにCentOS6.2。
前>>976 のゲスト側でタグが見えないということも無く、ホストのeth0で拾ったパケッ
トが、そのままゲストのeth0に流れてきてました。
標準のbridgeの代わりにOpen vSwitchに置き換えても無問題でした。
動作のお知らせとお礼まで。 >>79
便乗で教えてください。
最近当方もまさに同じことをしようとしたのですが、host_vnet0までは
taggedなキャプチャがされたのですが、guest_eth0はキャプチャされませんでした。
この「キャプチャされない」というのは、guestのvirtio_netの受信ルーチンに
デバッグ出力を入れることで確認しています。
(taggedなパケットに対して特殊な処理をしなければならないため)
で、Linux標準Bridgeだと↑のような状況です。
ちなみに、何故かguest_eth0にてtcpdumpをしかけるとデバッグ出力がされていました。
次に、Open vSwitchで
ovs-vsctl set port host_vnet0 tag=[VLANタグ]
とするとuntaggedでguestまで届きます。
が、これも何も設定しないと届きませんでした。
故あって、vconfigによるVLAN IFを生成できないので、仕方なく今は
Open vSwitchを使うようにしています。
ttp://d.hatena.ne.jp/naga_sawa/20120415/1334502258
とかにも、>>79さんのようにできると書いてあるんですが、何か設定間違ってるのかな…
ちなみに、OSはhost/guest共にFedora15です。 >>80
ゲスト側で動かしたtcpdumpの出力は正常にtaggedを吐き出してる、というのが前提ですが…
debug outを仕込んだ
>virtio_netの受信ルーチン
はアプリが受信処理しないと呼ばれないルーチンだったりしませんか?
素人オペ屋なのでドライバの中味やらの深い部分はわからないですが
tcpdumpのようなユーザランドのプログラムでパケットを吸い上げると
debug outが働く、というのならその線が疑わしいような
ストレージとの連携で、ISCSIか、NFSか、どっちを使おうか迷っています。
(ESXIでいうところの)シンタイプディスクの場合、データ転送量が少ないのはどっちになるんでしょうか。
質問があります。
Lenovo E420上で、ScientificLinux 6.2(64bit)でKVMを使って"Windows7pro"と"ScientficLinux 6.2(32bit)"を
仮想化しています。
Windows7の方の音を鳴らしたいのですが、KVMのSPICEを使うと音は鳴るのですが解像度がおかしくなります。
どうおかしいのかと言うと、画面の右3分の1が切れてしまいます。(フルスクリーンにしても同じ)
表示も遅いしそんな状態なので、rdesktopを使っています。
描画も速いし、解像度も問題ないし満足してるんですが、音が鳴りません。
オプションに、-r sound("-r sound:local" "-r sound:remote" も試しました) とつけても鳴りません。
何が原因なのでしょうか? KVMやqemuに対する質問なのかよくわからないが
むしろ、rdesktopに関する質問ではなかろうか。だとするとスレ違い。
とりあえず、普通のWindowsクライアントでリモートデスクトップ接続で
つないでみて、音が出るかどうか確認してみては? >>84
KVMの設定次第で解決する問題かもと思ってたのですが、読み返すと確かに質問の主が、
rdesktopになってました。すいません。
別のWindowsから試してみます。 >>86
ゲスト側にIO flush + fs freezeするツール仕込めばおけ。
でもジャーナル巻き戻し前提で「だいたいあってる」レベルならなくても即分岐させてよくない? libvirtに、ホスト/ゲスト間の通信IF機能とかないかなぁ。 >87
ゲストで / の freeze と unfreeze をやってるんだけど、たまに
unfreeze に失敗する事がある。 できるかわかんないけど
ゲストのacpidで電源ボタンでハイバネ設定しておく
virsh shutdown vm
cp image
virsh start vm
みたいなセミホットバックアップとか妄想してみる >>90
それなら(前にも出てきたけど)
cpではなくlvmでsnapshot取る方が断然早いだろう
数秒以内で終わる qemu consoleからスナップショット(LVMではなくqcow2やqedの)分岐させる手もあるね。
これもゲスト内FSレベルでのフラッシュ&フリーズはされないから巻き戻るけど。
libvirtdが動作してるにも関わらず
Unable to open a connection to the libvirt management daemon.
とか言われちゃうって何が原因なのかさっぱりだな・・・ >>93
デーモンが動作していることと
デーモンに接続可能なことは
まったく別物だと思うが 普通に、qemu-kvmに"-chardev"オプションでいけるのか。
とりあえずUNIX domainで試してみよう。 cpuをCeleron G1101からCore i7 860に変えたら、
仮想Windows7が立ち上がらくなった。
ログを見るとこんな感じ、誰か助けて
KVM: entry failed, hardware error 0x80000021
If you're running a guest on an Intel machine without unrestricted mode
support, the failure can be most likely due to the guest entering an invalid
state for Intel VT. For example, the guest maybe running in big real mode
which is not supported on less recent Intel processors.
EAX=00000010 EBX=00000080 ECX=00000000 EDX=00000080
ESI=0025db2a EDI=0007db2a EBP=00007c00 ESP=00000200
EIP=000000ca EFL=00000002 [-------] CPL=3 II=0 A20=1 SMM=0 HLT=0
ES =0020 00000200 0000ffff 0000f300
CS =b000 002b0000 0000ffff 0000f300
SS =0020 00000200 0000ffff 0000f300
DS =0020 00000200 0000ffff 0000f300
FS =0020 00000200 0000ffff 0000f300
GS =0020 00000200 0000ffff 0000f300
LDT=0000 00000000 0000ffff 00008200
TR =0000 00000000 0000ffff 00008b00
GDT= 002b0000 0000001f
IDT= 00000000 000003ff
CR0=00000010 CR2=00000000 CR3=00000000 CR4=00000000
DR0=0000000000000000 DR1=0000000000000000 DR2=0000000000000000 DR3=0000000000000
000
DR6=00000000ffff0ff0 DR7=0000000000000400
EFER=0000000000000000
Code=00 ea be 00 00 00 18 00 0f 20 c0 66 25 fe ff 00 00 0f 22 c0 <66> 31 c0 8e d
8 8e c0 8e d0 66 bc 00 04 00 00 8e e0 8e e8 ea 00 00 00 20 00 00 00 20 2a db
handle_dev_stop: stop
>>96
もってないから適当だけど
# rmmod kvm-intel
# modprobe kvm-intel unrestricted_guest=0
でどう?
>>98
ダメみたい。
modprobe kvm-intel unrestricted_guest=0で
カーネルログに
kvm: VM_EXIT_LOAD_IA32_PERF_GLOBAL_CTRL does not work properly. Using workaround
と出る。 KVM が kepler に対応するのはいつ頃だろう・・・ ところで皆、Win2008R2のゲストにUSBHDDって接続できてる?
自分の環境だと、ゲストが認識はすれど、エラー10 利用できない状態ですで使えないんですよね(´・ω・`)
どっかでドライバ探してこないとだめ? 複数の物理ホスト+virt-managerの環境で、両方のホストから同じゲストを起動できちゃうのって
何か抑止方法ないですか?ググってもなかなか対策が見当たらず。
どうなるか試しにやってみたら、見事にゲストのファイルシステムがおかしくなった。 >>110
運用変えるかscriptにロック書くしか無いんじゃ?
>>112
やってみたら確かにロックできた!
代わりにライブマイグレーションできなくなったw
migration may lead to data corruption if disks use cache !=noneとか出る。
日本語の情報、全然ないね。英語でもあんまり解決策とかなさげ 複数のネットワーク作るのはどうやるのがいいの?
仮想マシンマネージャーで普通にNATのネットワーク2つ作ったら何もしなくても相互に通信できちゃうんだな
どこが仕事してどう通信してるのかよくわからないんだが >>114
5分程度ぐぐっただけなので合ってるかどうかは知らんが、
エラーだけ見るとこのパッチに見える
https://www.redhat.com/archives/libvir-list/2012-June/msg00239.html
http://libvirt.org/news.html
0.9.13に入ってるかもしれない。
> Add support for shared sanlock leases (Daniel P. Berrange), >>115
分離したネットワークを2つつくればいいよ >>115
自分はVLAN切ってゲストを分断する方法しか思いつかなかったよ。
思い通りの設定は仮想マシンマネージャーでは無理でした。
仮想でルーター立ててそれでアンタグするか、物理ルーターでアンタグするかの2択が一番簡単かも。
参考
ttp://itpro.nikkeibp.co.jp/article/COLUMN/20110317/358422/?ST=virtual&mkjb&P=1
もっといい方法あったら教えてエロい人。 KVM専用のディストリビューションってないの?
名前も悪いしこれじゃ普及しないだろ >>116
ありがとございます。
確かに、これっぽいですね。
Scientific6.2なのでまだ来てないですが、来たら試してみて
また報告します。 RHEV使ってる人いる?
FedoraでoVirtを入れてみたんだが、かなり不安定な印象。大丈夫? >>123
いるよ〜
oVirt v3.0と、v3.1bも使っているけど、安定性を求めるなら、v3.0 stableを使った方が良いかと。
v3.1bは、新機能追加がメインなので、いろいろ安定化させるのは苦労しますよ。 >>124
あざっす。
試したのは3.1bでした。
3.0の方やってみまっすmm >>125
一応、注意点として、f16向けのパッケージしかないので、engine用のマシンを構築するときは、fedora16で作りましょう。
Nodeは、iso配布のモノを使うのが良いかと。 >>126
感謝。
大抵の場合、皆さんFedoraでやってるみたいですけど、諸事情によりCentOS限定なんですよね。
試してないけど、EPEL使ってCentに入れれないかなぁと画策中です。
まともに動かなそうだけど・・・。 >>127
下記のサイトで、RHELクローン向けのoVirtが提供されていますよ。
http://www.dreyou.org/ovirt/
このパッケージを使用した事は無いですが、参考までに。
後、初めてRHEV/oVirtを触るなら、redhatの90日の評価版を使って、慣れるのもありかなと思います。
qemu+sshでvirtdにアクセスしていると、いつのまにか
ホスト側に大量のsshdとncが発生してつながらなくなるのですが
回避方法ないですか?
killall ncとかだと一時的に回復するけど、いたちごっこでした。 >>128
本当に親切にありがとう。
自分もこのリポジトリは見つけたんだけど、危ない香りがしたから試さなかったんですw
でも折角なので、インストールしてみて近いうちにレポート入れるよ。
ありがとう〜(`・ω・´) >>52
うちでは、VirtualBOX上で
UbuntuではKVM動作○
Fedoraでは?
だった。
lsmod | grep kvm で何も出てこない。
VMwarePlayerでCentOS:KVM>CentOSってやってるんだけど、
ネットワーク設定がよくわかりません。
VMwarePlayer(ブリッジ)>CentOS(br0,eth0)では外部と通信できます。
しかし、
VMwarePlayer(ブリッジ)>CentOS(br0,eth0)KVM>CentOSだと
ゲストのCentOSのeth0が起動しません。
ググッたところ、tapの設定が必要らしいのですが、qemuのコマンドでtap追加してる
サイトばかりで、virt-managerでguestOSをインストール、起動してからの設定が載っているサイトが
みつからずに困っています。
どなたかご存知ないですか? virt-managerなら何も難しいことはなく、br0を
ブリッジ対象として選べると思うんだが。 >>133
ありがとうございます。
virt-managerでeth0(br0)を選択したのですが、
eth0が起動しないのです。
普通なら、これだけで使えるようになるのでしょうか?
どうもKVMのネットワークが良く分かっていなくて・・・
いいサイトもしくは、本などございませんでしょうか。 ■ このスレッドは過去ログ倉庫に格納されています