
第4回 最短3分! ゲストOSの効率的なインストール
住商情報システム株式会社 中嶋一樹(著)
VA Linux Systems Japan株式会社 高橋浩和(監修)
2008/2/13
インストール自動化をさらに極める
上記の手順ならば、ゲストOS1台につき10分もあればインストールが可能なはずです(もちろん、ゲストOSのサイズが大きければ、それだけファイルのコピーに要する時間はかかりますが)。
しかしこの手順でも、ゲストOSを1台インストールするたびに、設定ファイルの編集などの手作業が入ってしまいます。大した手間ではないように思えるかもしれませんが、例えば30台のゲストOSを作成する場合、それなりの作業時間と手間が必要になることは容易に想像できます。さらに、もしゲストOSそれぞれにディスク容量を30Gbytes割り当てたいならば、30Gbytes×30台=900Gbytesという膨大なディスク容量が必要になりますし、コピーの時間も耐え難いほど長くなるでしょう。
そこでここからは、ディスクをできる限り節約し、かつ完全に自動化された高速インストール手順を紹介します。
といっても、作業自体は先ほど紹介したものとさほど変わりません。前述の手順を自動化するためのスクリプトを作成し、コピー時間とディスクを節約するためのある「工夫」を追加するくらいです。
| コラム●Xenでの大量インストール方法は? |
| ところで、Xenにはこのような大量インストールを行う方法は用意されていないのでしょうか? 残念ながら、現在のRHEL5にバンドルされているXenやその管理ツールである仮想マシンマネージャなどにはそのような機能は用意されていません。 一方、Citrixが提供している商用の「XenServer」では、テンプレートの複製による高速なインストール機能が提供されています。ただしこの機能では、展開するゲストOSの台数を指定したり、ゲストOS固有の情報をあらかじめ設定しておくことはできません。あくまであるゲストOSの複製を1つ作成するための機能です。 |
Sparseファイルによるディスク節約術
まずゲストOSを新しく作成します。
先に紹介した手順では、通常のファイルをベースとしたゲストOSを使用しました(つまり、virt-installで「?nonsparse」オプションを指定していました)。実は、ディスクを節約するにはゲストOSをSparseファイルベースで作成するのが有効です。第2回「実測! 物理マシンと仮想マシンの性能差は?」でも触れましたが、Sparseファイルとは「実際にデータが書き込まれた分しかディスクを消費しないファイル」です。
![]() |
| 図1 通常のファイルとSparseファイルの違い |
例えば以下のコマンドでファイルを作成すると、30Gbytesの容量を持ったSparseファイルが作成されます。
# dd if=/dev/zero of=testfile bs=1024M seek=30 count=0 |
このように、lsコマンドで見る限りファイル容量は30Gbytesとなっていますが、次のduコマンドを使えば、実際にディスクを消費している容量が分かります。
# du -h testfile |
ファイルを作成する前と後でdfコマンドを使って確認してみても、ディスクが消費されていないことが分かるでしょう。
一般に、実際のサーバではディスクを100%近くまで使うことはまれです。よって、このSparseファイルでゲストOSを作成しておけば、トータルでかなりのディスク容量を節約できます。この効果はゲストOS当たりのディスク割当量が多いほど、またゲストOS数が多いほど顕著になるでしょう。
■コピー時間の大幅短縮効果
それでは、このSparseファイルを使ってゲストOSを作成してみましょう。
ゲストOSの作成に当たって、あらかじめddコマンドでSparseファイルを作成しておく必要はありません。virt-installは、-fオプションで存在しないファイルを指定すると、自動的にSparseファイルベースでゲストOSを作成してくれます。
# virt-install \ |
これでインストールを続行すれば、SparseファイルベースのゲストOSが出来上がります。このゲストOSのファイルをlsコマンドで見ると、サイズは30Gbytesと表示されますが、実際に消費しているディスク容量をduコマンドで確認すると2Gbytes前後にとどまっているはずです。
これで基となるゲストOSは出来上がりました。このゲストOSを基に、大量インストールを行います。
まず、このファイルを先ほど紹介した手順と同じようにcpコマンド(注3)でコピーします。
| 注3:cpコマンドはデフォルトの動作として、コピー元ファイルがSparseファイルであれば自動的にそれを認識し、コピー先ファイルもSparseファイルで作成してくれます。この動作は--sparseオプションによって操作可能です。デフォルトは--sparse=autoとなっています |
このようにSparseファイルを利用することで、
- コピー先ファイルが消費するディスク容量も2Gbytes前後に節約できる
- コピー時間を大幅に短縮できる
というメリットが生まれます。
|
2/3 |
|
||||||
|
||||||
| Linux Square全記事インデックス |
| Linux Squareフォーラム 仮想化技術関連記事 |
| 連載:実践! Xenで実現するサーバ統合 有力な仮想化技術として注目を集めるようになった「Xen」。このXenを活用してサーバ統合を実践していく手順を具体的に紹介します |
|
| 特集:サーバの仮想化技術とビジネス展開の可能性 jailからUML/VMwareまで 1台のマシンで複数のサーバを動かす「仮想化技術」。VMwareやUMLの登場により、WebサイトだけでなくOS自体を仮想化できるようになった |
|
| 特集:仮想化技術のアプローチと実装 VMwareから要注目技術Xenまで 1台のサーバで複数の仮想マシンを実行する仮想化技術は、空間コストを引き下げる可能性を持つ。最新の仮想化技術を概観してみよう |
|
| 特集:仮想OS「User Mode Linux」活用法 技術解説からカーネルカスタマイズまで Linux上で仮想的なLinuxを動かすUMLの仕組みからインストール/管理方法やIPv6などに対応させるカーネル構築までを徹底解説 |
|
| 特集:仮想化技術の大本命「Xen」を使ってみよう インストール & Debian環境構築編 高いパフォーマンスで本命の1つとなった仮想マシンモニタ「Xen」。日本語による情報が少ないXenを、実際に動かしてみよう |
|
| 特集:仮想化技術の大本命「Xen」を使ってみよう Xen対応カスタムカーネル構築編 Xen環境およびその上で動作する仮想マシン用カーネルを自分で構築しよう。これにより、自由にカスタマイズしたカーネルを利用できる |
|
| 特集:IPv6、UML、セキュリティ機能の統合 全貌を現したLinuxカーネル2.6[第4章] 今回は、これまでに紹介し切れなかった機能を一気に紹介する。これを読めば、カーネル2.6の正式リリースが楽しみになるだろう |
|
| Linux Squareプロダクトレビュー VMware Workstation 4 PC/AT互換機エミュレータとして不動の地位を築いたVMware。その新バージョンがリリースされた。新機能を早速試してみよう |
|
| 古くて新しい「サーバ仮想化技術」の行方 サーバ仮想化を実現するための技術がソフトウェア、ハードウェアの両面で出そろってきた。ハイパーバイザーのさらなる高速化に向けた動きを紹介する |
|
| Linux Squareフォーラム全記事インデックス |
TechTargetジャパン
- 新しい記事も入っていて安心しました (2012/2/7)
Linux Squareのアクセスランキングを公開します。定番の記事ばかりでなく、連載中の記事もよろしくお願いいたします - エラーメッセージをどう扱うか? (2012/2/2)
今回は、スクリプト実行時にエラーが発生したことを知らせるメッセージの扱い方を説明します - ファイルのアップロードを制限する (2012/1/30)
HTTPクライアントがアップロードしてくるファイルの扱いについて解説します。そもそも受け入れる必要があるのか? ということのほかにも、いろいろ設定が必要です - OSに付属するシェルスクリプトを読んで技術を盗む (2012/1/27)
シェルスクリプトマスターに近づくには、他人から技術を盗まなければならない。OS付属のスクリプトから技術を盗もう
|
|
キャリアアップ
スポンサーからのお知らせ
- - PR -
イベントカレンダー
- - PR -

