「いまどき」の仮想化ってどんなもの?
やまね:まずは「いまどき」の仮想化を整理してからかな。
瀬尾浩史:仮想化っていろいろあるペン? 完全仮想化とか準仮想化とか?
やまね:準仮想化……。
ミズノ:小林さん仮想化してどうするんだ……。
小林:ぷしゅー?
あわしろいくや:たしかに小林さんは「小林準」なんですが、そこでネタに走らなくても。
hito:今回の場合だと、仮想化の方式と「どんなマシンで動かすか」が重要かなぁ。
ミズノ:最近Linux界隈で流行りつつある仮想化って、コンテナ技術の割合がわりと多い?
瀬尾浩史:てな感じで、まずは謎の単語を整理するペン。「完全仮想化」と「準仮想化」「コンテナ」ってそれぞれ何、というところから行くペン。このあたりはあくまで基本なので、さくさく流すペン。
編集S:まず「完全仮想化」って何。
ミズノ:「準仮想化」とセットで考えた方がいいかもしれません。仮想化ソフトウェアの分類の一種なんですが、完全仮想化っていうのは、「完全にハードウェアのフリをする仮想化方式」のことですね。仮想化ソフトウェアが「デバイスのフリ」を完璧にやりとげてくれるので、OSは「ボクはほんもののハードウェアで動いてるよ」というつもりで動いてます。これに対して準仮想化は、「なんか仮想化環境の上で動いてるし、実在のハードウェアとは違う方法で動くかー」というつもりでOSが動きます。
hito:そして小林さんを仮想化するのが準仮想化です。
小林:ぷしゅ~(そのネタはもういいです)。
ミズノ:で、「どうせ仮想化環境なんでしょー、こういう風に動くと効率いいよねー」とばかりに、準仮想化は特有のドライバーで動けたりするので効率がいい、と。「virtio」とか呼ばれてるものはそんな感じですね。
編集S:えっと、「ハードウェアのふりをして動くのが完全仮想化」「仮想化環境であることを逆手にとって、効率良く動くのが準仮想化」っていう理解でOK?
やまね:おおむね。たぶん。でもいまどきだと、あんまり区別する必要ないかもだよねー。
あわしろいくや:冷静に考えると、仮想化ハイパーバイザに応じて勝手に変わりますからな。「open-vm-tools」パッケージなんか入れると完全仮想化なのか準仮想化なのかわからない状態になります。
hito:で、そのへんを置いといて、「コンテナ」というやつもあります。11.10世代ぐらいからUbuntu的には「LXC」という実装を積極的にサポート中。
ミズノ:「コンテナ」は、「同じカーネルの上で、リソースを分割して仮想化みたいに使う方法」って感じかなぁ。カーネルの上にまったく別のユーザーランドが載ってる感じ。
編集S:なるほど、わからん。
さかもっちー:「カーネル」っていう土台の上に、「コンテナ」っていう単位でOSのサブセットが載ってるイメージでいいぐにゅぅ?
hito:おおむねそんな理解でいいんじゃないですかねぇ。
編集S:なるほど。今度はわかった。メリットは軽いこと?
hito:軽いこと。ARM環境でもさくさく動かせますし、カーネルは共用なので大量に仮想化を展開しても大丈夫です。各種ライブラリのメモリーも共有されるので、極端な話、アプリごとに仮想化とかも現実的なレベル。
さかもっちー:アプリごとに完全に分断した状態で動かせると、セキュリティ面で設定が簡単になるらしいぐにゅぅ。
ミズノ:で、「いまどきの仮想化」は完全仮想化やら準仮想化やらコンテナやらが入り乱れています、ぐらいがわかってれば大丈夫かな。これを「遠く」のマシンで動かしてるのがクラウドって感じ。
編集S:うー。よくわからない。
ミズノ:えっと、お手元のノートの上で仮想マシンが動いてたら仮想化で、どっか知らないところで動いてたらクラウドなんですよ。
hito:IaaSとかはそんなノリ。まあネットワークとかも含めて仮想化されてるんだけど、今回はOSが動くマシンの部分だけ考える!
あわしろいくや:いろいろむつかしいですなぁ。
編集S:ふむふむ。クラウドとかなんとか言ってるけど、実はただの仮想化だと思ってれば簡単に触れて、手元にパソコン山ほどある廃人でなくても10台ぐらいは触れるよ、っていうメッセージを受け取った。
やまね:なんか結論が飛躍しているような……。
編集S:秘技、台本棒読み。
瀬尾浩史:それでいいのペン……?
この連載の記事
-
第61回
PC
~師範、Ubuntu道場が最終回です!~ -
第60回
PC
~師範、組版システム「TeX」について教えてください!~ -
第59回
PC
~師範、Ubuntu関連のイベントを教えてください!~ -
第58回
PC
~師範、日本語Remixの作り方を教えてください!~ -
第57回
PC
~師範、Ubuntu独自のテクノロジーについて教えてください!~ -
第55回
PC
~師範、Ubuntu 12.04の特徴を教えてください!~ -
第54回
PC
~みなさん、Ubuntuに触ったきっかけを教えてください!~ -
第53回
PC
~師範、Ubuntuのヘビーユーザーってどんな感じでしょう?~ -
第52回
PC
~師範、Ubuntuは今後どうなるんですか?~ -
第51回
PC
~師範、ARMって何ですか!~ - この連載の一覧へ