メーリングリストの仮想化友の会は入っていたのですが、勉強会には行ったことがなかったのとネタが KVM らしいので聞いてみたい&どんなもんか見てみたいということで、初参加してみた。
2008年のOSCの仮想化系のセッションを聞いた時に会場にいらっしゃった方々が多くみられていた。内容は Red Hat の方々による KVM の技術概要と Red Hat としての取り組み予定紹介。
資料は仮想化友の会webより入手できます : http://sites.google.com/site/kasotomo/study
参加者は Unix/Linux をいじってきましたと言う世代の方々と思われるので、web 開発系なコミュニティに比べれば平均年齢は+5したくらいか。2002年くらいにいた IRI のエンジニアたちが FreeBSD をいじり倒していた時代に軽くフラッシュバックする。
思ったのは、仮想化といっても完全ソフトウエアの話にはならず、必ずハードウエアとの絡みも出てくるので、ハードも含めて検証なりを進める敷居は高く、お手軽さはないので自然とちゃんとできるプレイヤーも少なくなる分野なのかと思う。
特に KVM は CPU でフォローする仕組みなので、ハードウエア依存が強い。ハートウエアに依存しないサーバ環境を作るための仮想化なのだけど、やはり大事なところでハードウエアがしっかり絡んできてしまうのはなんともしょうがないことなのだろうか。
何にせよ、仮想化は1つの手法であって目的ではないのだけどツールの一つとして利用する場合、仮想化するメリットやパフォーマンスを分かっておくことは大事なことなのだろう。
ということで、そろそろ仮想化環境についてもう少し詳細な技術情報なりノウハウなりを貯めたいと軽く思った次第。
以下、当日メモ
20090528
仮想化友の会 5月勉強会
19:00-20:40
KVM 技術解説
Red Hat 森若
-
QEMU : Windows/Mac/Linux 対応 便利だった</p>
- dynamic なので遅い
- 色々使えた ia64 使えた
-
KVM : QEMU を工夫して早くしてみた
- ゲスト OS が I/O したい場合は仮想 I/O に対して、一度 QEMU に渡して
- KVM-Linux 経由で実際の I/O する
-
新しいモード Guest mode
- センシティブ命令は実行できない
- virtio
- 共有メモリがあるから早くなる
-
シャドウページテーブル
- ゲストの仮想アドレス=>ホストの物理アドレスのテーブル
-
MMU の仮想化の問題を助ける
- ゲストの物理アドレス=>ホストの物理アドレスの変換がない
- EPT の CPU だとすごく早かった
-
viroio について
- virtio_ring のスライドの絵がすべて
-
virtio_pci
- 仮想 PCI バス上に仮想デバイスが並んでいる
- I/O命令は仮想環境がフックする
- virtio_ring での virtqueue を作成して共有する処理もここで行う
-
virtio_balloon
- 共有するバッファは virtio_baloon 構造体1つだけ
- 仮想化側がいろいろやってくれるだろう前提とした仕組み
-
block/virtio_blk
- 仮想ブロックデバイスを提供
- リクエスト用の1つの virtqueue を使う
- read, write, SCSI cmd を発行できる
- リクエスト完了 used リングに追加のみ
-
net/virtio_net
- 仮想ネットワークでバイスを提供
- 送信、受信、コマンド送信用の3つの virtqueue を使用
- 送信処理終了後に送信できなかったデータの送信、送信済みのskbの回収
- block より工夫されている
-
char/virtio_console
- 仮想コンソールでバイスを提供
- 送信用、受信用の2つの virtqueue を利用
- 一度のやり取りは PAGE_SIZE まで
Red Hat の仮想化戦略
Red Hat マーケティング 中井
-
Red Hat と MS 仮想化の相互運用制で合意</p>
-
合意内容</p>
- Red Hat 仮想化上で Windows 2000/2003/2008 サポート
- Windows Hyper-V 上で Red Hat Enterprise Linux5.2/5.3 が動きます
-
合意内容</p>
-
KVM について
- Qumranet イスラエルの会社を Red Hat が買収
- SolidCE/SPICE も買収した 管理テクノロジ次世代仮想化
-
今後
- KVM は OS に統合、Xen は継続サポート
-
GUI ベースの管理ソフトを出す VMware Virtual Center みたいなもの
- .Net でできている Windows で動くよ
- ライブマイグレーション機能もあり
- HA機能、イメージ管理の機能
- Desktop の仮想化も提供
- Hypervisor : VMware ESX みたいなもの
-
Qumranet はもともとクライアントデスクトップの仮想化用のソフトだった
- Solid ICE VDI サービス名
- 仮想化のエンジンは Linux, 管理のソフトとデスクトップの表示は Windows
- デスクトップの表示は IE で ActiveX 利用
- 早いのは独自のプロトコルを持っている SPICE? windows remote desktopより早い
-
Hypervisor
- KVM : みる角度によって Linux と Hypervisor
- ホスト 96コア、1TBメモリ # Linux そのもののスペックが適用される
- 今後 3ヶ月から18ヶ月にわたって製品提供予定
- 価格まだ秘密 でも VMware よりかは安くなるかも
QA
-
KVM は API 公開するの?</p>
- VDSM 最初はクローズド、リブバートに持っていく構想あり
- 今はリブバートに対応していない