KVM(Kernel based Virtual Machine)を語れ 2
■ このスレッドは過去ログ倉庫に格納されています
>>753
お勉強がてら調べてやってみます。ありがとう。 >>752
ホストの表示消して、SSH経由で外部から操作に徹するっていう荒業をやる人もいる ホストの時刻は全く問題ないのに、ゲストOSの時計がどんどん未来日付に
ずれていく問題にぶち当たったんですけど、原因に何か心当たりある方はいらっしゃいますか?
クロックソースはkvm-clockでもHPETでも症状変わらず。
当該のゲストを別ホストに移動させると問題ないので、おそらくホストに使用している
マザーの問題だろうと思ってBIOSから可変クロックやら省電力設定の項目全部Disableに
してみたものの、改善しませんでした。
ホスト:CentOS 6.6
ゲスト:NetBSD
マザー:C1037U+HM70
以上、よろしくお願いします。 >>756
何年も前の話だし参考になるかわからないけど
時刻を取得しようとする処理が他のゲストとのCPUの取り合いの影響で上手くいかないとかで時刻がズレるってのはあった >>757
ゲストOSに特定のCPUを専属にする(CPUピニング設定で固定割り当て、かつホストOSのカーネルパラメータにisolcpus追加してそのCPUをスケジューリング対象から外す、centosなら使えるかな)ことで時刻ズレは緩和されるのではないかな。
ただ、kvm-clock使ってもダメ、というのが気になるけど。 >>752
Intel HD Graphics が使える環境に AMD と nVidia の VGA 1枚づつ挿して、
Intel : kvm host
AMD : メインの Linux Desktop guest
nVidia : Windows guest
って環境で使ってるよ。Windows Guest のほうはほとんど使って無いけれど、
AMD のほうは fglrx 使って、ハードウェアアクセラレーションも効いている。
PCI パススルーは USB パススルーとかと違って安定してて良いね。 >759
その構成で
hd graphics はパススルーできる? >>759
そういう構成にあこがれるんだけど、HID はどうなるの?
USB PCIe カードも挿してゲストに割り当ててそっちにつなぐとか? vmmaestro ってどう? VMの起動、停止に特化(?)してるみたいだけど、使いやすい?
ttps://github.com/mzch/vmmaestro
それにしても大層な名前 CentOS5.10で、KVMを使っています
virt-managerを使って操作しています
ハイパーバイザ(?)はQEMUです
フロッピーの交換方法について、質問です
現在、virt-managerで仮想マシンにfloppyを追加するところ、および
Linuxのブートディスクのイメージファイルをディスクfdaのソースパスに設定して
仮想マシンを起動すると、フロッピー側のLinuxがブートされるところまでは確認しました
ですが、仮想マシンの起動後にフロッピーを交換したいのですが、方法が分かりません
方法を教えて下さい
virt-managerでのfloppyの設定変更は、仮想マシンのリブート後にしか反映されないので
その方法は使えませんでした
光学ドライブですと、virt-manager上で切断→ソースパスを変更、という流れでCD等を
交換できますが、floppyの画面には「切断」等のボタンが無いので、他の方法が
必要なのだろうと思っているのですが、情報を探しても見つからず…
QEMUのコンソールでeject等のコマンドを使うというページは見つけたのですが、
そのQEMUのコンソールへのアクセス方法(CTRL+ALT+2らしい?)もよく分からず… >>763
仮想マシンの画面で、CTRL+ALT+2 を入力すれば、モニターに入れるので、
change コマンドでデバイスファイルを入れ替える。詳しくは、↓
ttp://www.h7.dion.ne.jp/~qemu-win/qemu-doc-ja.html#SEC12 >>764
情報ありがとうございます
しかしながら、仮想マシンの画面でCTRL+ALT+2を入力しても、何も反応がなく、
モニターに入ることができませんでした
仮想マシンの画面というのは、この画面でしょうか?
http://i.imgur.com/rUPBAlk.png
QEMU・KVMは、このCentOS付属の仮想マシンマネージャーで使っているのですが
これではなく、他にQEMUのコンソール的なものを使った方がよいのでしょうか GUIからフロッピーを交換できないのであればと、ホスト側でFDイメージの内容を書き換えてみたり
シンボリックリンクで実体のイメージファイルを切り替えたりしてみましたが、
仮想マシン側は起動時(接続時?)の内容を覚えているようで、うまく動作しませんでした…
うーん >>767
Cloud事業者が大量に使ってる。
個人は知らん。KVMか、Dockerにでも移行したんじゃない? XenよりKVMの方がパフォーマンスが良いからKVMにシフトする流れと聞いたことある Xenの最大手ってAWSじゃないかな。
ちょっと前にXenの脆弱性で再起動祭りがあった。 PCIパススルーしたいけど、
libvirtがlibvirt.pyの1007行のvirDomainCreate()がdom=selfで失敗したからエラーだって怒るんだぜ。
この怒りを鎮める為にはどうしたら良いんだぜ? >>775 ってよく見るけど、その
「何が面白いかわからないけど、本人はしてやったりと思ってそう」感が
スラドっぽい >>776 2ch は初めてか?肩の力抜けよ
>>774 debian なら /var/log/libvirt/ の下を漁るとか >>777
>>>776 2ch は初めてか?肩の力抜けよ
>
>>>774 debian なら /var/log/libvirt/ の下を漁るとか
参考になりましたが、未解決しました。
チップセットがVTに対応してるがVT-D未対応だった。
www.intel.com/support/jp/motherboards/desktop/sb/cs-030922.htm チップセットでなくてマザーボードのファームウェアの問題じゃね? >>781
>チップセットでなくてマザーボードのファームウェアの問題じゃね?
VT-Dはハードウェアの機能(時計とかと同じ)なので、ファームウェアがいくら対応しようとしてもチップセットが対応してないと(サポートリストにないと)無理と解釈しました。 いやいや、B75チップセットとか、Intel的にはVT-d非対応と言ってるんだけど
実際は使えちゃうマザーボードとかあるからねぇ。ASRockのやつとか。 チップセットのデータシート見ると少なくとも7系は
全SKUでVT-dサポートなんでインテルのサイトが間違ってるという >>768
> 個人は知らん。KVMか、Dockerにでも移行したんじゃない?
Dockerはアプリの仮想化だ。
サーバーの仮想化ではない。 なんか一部サポートリストに入って無いチップセットでも動くのあるみたいだけど、ごく一部のみですね。 >>787
簡単だよ。
アプリのディレクトリに、OSのライブラから何から
必要となるものを全部詰め込んだものと考えればいい。
WindowsでDLL Hellを防ぐための方法の一つとしてアプリの
ディレクトリの中にシステムDLLを入れるSide-by-Sideって技術があったけど、
それを更に発展させて、OSそのものディレクトリに入れたもの
その結果アプリのサイズはでかくなって、1アプリで
数百MBになったりするけど、今のディスク容量があれば十分耐え切れる。
デメリットとしてはホストOSのライブラリをアップデートしても
アプリが使っているライブラリは別だから別途アップデートが
必要になるってことぐらいだな。 >>788
なるほどわかりやすい
レスありがとう感謝 アプリ(プログラム)の動作をエミュレーションすればアプリの仮想化になるんじゃないの? ざっくりとパススルーでマザーの特別な対応が必要な理由をまとめると、
ハイパーバイザーから仮想マシンにパススルーでハードウェアを割り振った場合に仮想マシンのハードウェアからは自身が仮想環境で動いているのか判断が付かないために
ダイレクトメモリアクセスを実行すると実機側メモリアドレスを見に行くが、実際に参照すべきなのは仮想マシンのメモリアドレスの実機でのメモリアドレスであるため
不一致が発生する為に相互のズレを修正する機構(ダイレクトメモリアクセスなのでCPUでどうこうは出来ない)が必要となるため。
大体これであってるよね? 答えてくれないと泣くぞ。
linux初心者(Android除く)に優しくしてください。 >>788
これってさ、共有ライブラリの意義とか、セキュリティアップデートはどうするんだろう。
どのあたりのバランスに留めるのが運用しやすいかだな。 >>793
アプリ側でライブラリをローカル化してバージョンを固定することで
・サポートのやりやすさ
・セキュリティ対策のやりやすさ
・バージョンアップのやりやすさ
・クライアント側の理解のしやすさ
はあると思う
ライブラリの脆弱性が見つかったとしても、
共有ライブラリだと
「ライブラリAの要求バージョンが上がりました。至急Aも更新してください」
「Aを更新したら別のBが暴走したぞコラ」
も起きかねないが
「バージョン○○に更新してください」だけになるから
周りの環境にも迷惑がかからない
セキュリティに対してもまた同じ
しかも「脆弱性があるバージョンじゃないと動かない」なんてことも起き得る バージョンアップデートの内容をマニフェスト化すれば良いんじゃない。
バージョンと言うIDで全て管理してるのが問題なのだから。
てか、KVMも仮想化も関係ないし。 >794
よくわからないが、スタティックリンクと何が違うん? >>794
Windows95とか98の時代にdllバージョン依存があって
動くアプリ動かないアプリがあって大変だったよな jarの中に依存ライブラリ突っ込んでパッケージ化するのとも変わらんし、DLLに限った話じゃ無い。
てか、KVMも仮想化も関係ない。 VMWareとかVirtualBoxとかの方が便利 GIUいらないサーバーの仮想化だからKVM一択です
freebsdの仮想化が使えるようになれば乗り換えるかも 得意なところ不得意なところあるだろ
完全仮想化ではハードウェアの性能を出し切れないけどそれ以上にKVMを使うメリットはある KVMは複数のOSが同時に走ってるイメージが好きだな。
もはや機能美の世界 というか単なる趣味w 自分でやって遅いと感じなければ、それでいんじゃないの?
公式な差異のデータはないと思う。
それよりも、使い勝手や管理の仕方が楽なほうがいい。 そもそもKV上でそこまでパフォーマンス問われるものは動かさないでしょ
本当にパフォーマンスが必要なら専用鯖になるわけだし 貸し鯖屋でもKVMが多いとの印象があります。
しがらみがないからかも知れませんがw 今ESXi使ってて次期候補にKVMを考えていたので
導入が簡単なProxmoxを試しに仮想環境に入れてみたんだけど
なんかUIがわかりにくいというか使いにくいというか いまだにできないので質問。
QEMU-KVMで、物理グラフィックスカードを使うためVFIO-PCIでPCIeな
ビデオカードをパススルーするのと、SPICEなリモートデスクトップのために
QXLな仮想VGAを組み込むのって両立できるの?
どうにも必ず片方がゲストのWindowsでデバイスマネージャで code 10 により
デバイスを開始できませんでした、とか黄色のビックリマークがついて使えない。
詳細は結局個別環境毎の試行錯誤しないと駄目かなとは思うのだけど、
実は完全に無駄な努力でできるはずがないことをやっていると悲しいので、
本当にできている人が一人でもいるのかどうか知りたいなと。
最近の仮想マシンは物理規格の詳細がわかっていないとちゃんと構成できないから
ハードル高い・・・ そいつは、windows が、複数デバイスドライバによるマルチディスプレイに対応してるか、って話になるんではないかね?
Win 7 から対応のようではあるが、ドライバが、wddm 1.1 対応じゃないとダメとかあるのかもな
あと、あえて聞くけど rdp ではダメなの? >>813
Win7だけどドライバの対応とか必要かもしれないのか。
現行品のRadeon HD6450なら対応してそうなものだが・・・QXL側が対応してないのか?
SPICEはUSBリダイレクト機能があったり便利そうだし、VFIO-VGAしない状態で
使ったときには問題なくしっかり動いたので本格利用しようかなと頑張っているのだけど、
QXL+SPICEよりCirrus+RDPがいいのかな?実Radeon+仮想Cirrusの二枚挿しはたしかに
まだ試してないのでやってみる。 しばらく動かしてるとゲストのCPU使用率を正しく取得できなくなる感じなんだけど何か思い当たる人いますか?
ホスト: CentOS 7.1, qemu-kvm-1.5.3-86.el7_1.5
ゲスト: CentOS 6.7 (1コア割り当て)
ゲストで↓をやってもホストからvirt-topで見ると0%とかになる
$ cat /dev/urandom | gzip > /dev/null
ホストでtopを見るとユーザモードで1コア分はCPUを使ってるらしい
ゲストを再起動してもだめでシャットダウン→起動でないと直らない QEMU 2.4.0とLinuxカーネルの4.2の組み合わせで
Virtio GPUが使えるようになってるね
VGAよりさくさくになってるよ Linuxカーネル4.2というのはゲストOSのLinuxのカーネルのことね
Virtio GPUのLinuxのフレームバッファ用のドライバが含まれてる Linuxカーネル4.2採用してるディストリビュータってどれ?
メジャーどこはまだ3.1Xじゃない? virtualboxとかvmwareより遅いのはなんで?
vb,vwはキャッシュ使いまくってるとか? >>819
個別にビルドしてるとかかもね
俺もベースはCentOS 5.2だけどkernel3.xのQEMU2.xにしてるよ >>820
vbとかvwとか略すやつの気が知れない Ubuntuの15.10のテスト版ならLinuxカーネル4.2をapt-getで入れられる
ただ、Virtio GPUは有効にされてないからカーネルの再構築が必要
Virtio GPUのドライバは括弧でONLY FOR TESTINGと書かれててお試し状態 Ubuntu 15.10のテスト版がデフォルトでLinuxカーネル4.2が入るようになってるな
ただ、Virtio GPUのドライバがカーネルのConfigの中で下のようになっててる
Virtual Frame Buffer support (ONLY FOR TESTING!)
まだテスト段階 Ubuntu 15.10がカーネル4.2だね
カーネルコンフィグみるとCONFIG_DRM_VIRTIO_GPU=mになってる
Qemu 2.4で立ち上げると
[ 68.065200] [drm] Initialized drm 1.1.0 20060810
[ 69.977217] [drm] pci: virtio-gpu-pci detected
[ 70.356256] [drm] virtio vbuffers: 80 bufs, 192B each, 15kB total.
[ 70.430845] [TTM] Zone kernel: Available graphics memory: 508444 kiB
[ 70.431273] [TTM] Initializing pool allocator
[ 70.431910] [TTM] Initializing DMA pool allocator
[ 71.907482] Console: switching to colour frame buffer device 128x48
[ 71.953979] virtio_gpu virtio0: fb0: virtiodrmfb frame buffer device
[ 71.954062] virtio_gpu virtio0: registered panic notifier
[ 72.206234] [drm] Initialized virtio_gpu 0.0.1 0 on minor 0
と出るけど現時点だとうまく機能しない ウィンドウのサイズ変更してもアス比崩れないようにしたいんだけどどうすればいいの? サーバとしては多少使えるんだろうけど、
KVMってデスクトップ向きでは無いよな パフォーマンスを求めるならXen+順仮想化
とはいえGoogle Compute EngineはKVMだけど Xenはどういいのだ?
kvmは多少遅いのかもしれんが、普段は全く静かだし、CPUも全く食わんしいいと思うのだが。
vmwareはヒーヒー言ってた記憶が。 Xen のレガシーな準仮想化は、KVM+準仮想化ドライバより遅いよ。
Xen 準仮想化 + 準仮想化ドライバでどっこい。 そうなのか!
元記事全文読みたい、URL教えてほしい 軽くやるならドッカとかなんだろな。でも遊ぶ程度ならkvmで十分だしなぁ。 kvmはマウスのシームレス化とクリップボードの共有化ができないのでは? 皆さんもやっぱ
<driver name='qemu' type='raw' cache='writeback' io='threads'/>
みたいに cache='writeback' にしてんの?
やってみたけど、体感は全く同じだった。 >>839
USBタブレットデバイスとSPICEでできるよ 他端末から仮想環境に繋ぐ為にブリッジ作る、ってのが面倒&厄介なのだが、どうにかなんないかな。 kvmはウィンドウサイズを自由に可変調整できないのでは? >>844
仮想環境を作る時にメニューから選ぶ形式で手間なく設定出来たらなぁ、と思っている。
tapとかbr0とか頭こんがらかる&しばらく放置した後からわかりにくい >>847
仮想マシンマネージャで仮想マシン作るときに選べるけどどんな環境使ってるの? >>847
libvirt とか virt-manager とかは? >>848
CentOS7で、GUIの環境から仮想環境作って見たら、外(他PC)から接続出来無かった。FWとかのせいかも?とかLAN接続先を選ぶメニューで何を選んだかあやふやだったので、時間取れる時にやり直してみます。
お邪魔しました。 業務ではKVMを立てたけど、家ではESXiだな…>>847の言うような理由で。めんどくさいしHA構成も組まないし。 質問です
ホストOSはFedora23
ゲストOSはWin7でVirtioを使いたいです
ここらへんを見てドライバ入ったisoをdnfで入れたんですが仮想マシンに接続してWin7のインストーラーからは見えているのですが指定するとそこにはドライバーないよと言われてインストール出来ません
https://fedoraproject.org/wiki/Windows_Virtio_Drivers
どうすればいいでしょうか? ■ このスレッドは過去ログ倉庫に格納されています