OSSのクラウド基盤「Eucalyptus」を使う(7)--Eucalyptusでのイメージ作成

箕浦真(VA Linux Systems Japan)
2009-07-27 09:00:00
  • このエントリーをはてなブックマークに追加

 ファイルシステムの作成とmountは、CentOSの時と同じです。ここでは、/tmp/targetにmountしてあるとします。既定ではsshのサーバが入りませんので、追加指定します。また、EPELのdebootstrapは、Ubuntu 9.04(コード名:Jaunty Jackalope)用のスクリプトが入っていませんので、Ubuntu 7.10(コード名:Gutsy Gibbon)用のもので代用します。

code03 コマンドの入力例(赤字の部分をコマンドとして入力する)

 上の実行例では64bit版のUbuntuがセットアップされますが、32bit版を作りたい場合は「amd64」の部分を「i386」とします。実行中のマシンイメージが32bitの場合、64bit版のイメージを作ることはできませんので注意が必要です。

 /etc下の設定ファイルのうち、以下の修正または作成が必要です。(表中のリンク先は、サンプルファイルです)

/sysや/dev/ptsなどは、ここに書かなくても構いません
etc/hosts
現状のEucalyptusではIPv6は使えませんので、localhostだけでも十分でしょう。
eth0をDHCPで利用します。
etc/hostname
ホスト名をここに書いておきます。
securityリポジトリを追加しておきます。
Ubuntuのカーネルは、Xenのブロックデバイスをxvda1などとして認識しますが、これは起動パラメータ「root=sda1」と矛盾します。これを、initrdの中でごまかすために必要です。「chmod 555」しておきます。

 設定ファイルが用意できたら、ここまでのセキュリティ関連修正を適用しておきます。これには、/tmp/targetにchrootして、apt-getを実行します。apt-get upgradeの過程で、デーモンの再起動などが行なわれてしまう可能性がありますので、debootstrapに倣って、/sbin/start-stop-daemonコマンドをダミーに入れ替えておきます。

code04 コマンドの入力例(赤字の部分をコマンドとして入力する)

 最後にカーネルを入れます。Ubuntu 9.04では、linux-image-serverがXenのDomain Uカーネルとして動作します。

code05 コマンドの入力例(赤字の部分をコマンドとして入力する)

 また、AMI Toolsも入れておくと便利です。私はrpmをalienでdebパッケージに変換して利用しました。alienでは依存パッケージは変換されませんので、curlやrsyncを手で入れます。

 あとは、できたvmlinuzとinitrd.imgを取り出し、イメージをアンマウントします。イメージをアップロードする方法についてはこれまでと同じですので割愛します。

code06 コマンドの入力例(赤字の部分をコマンドとして入力する)

筆者紹介

VA Linux Systems Japan 高橋浩和・小田逸郎・箕浦真(MAIL
各種OS、仮想化、Linux Kernelおよびオープンソースにおける高度な技術と経験を基盤とした、技術コンサルティング、開発、インテグレーションとソフトウェアソリューションを提供。VA Linuxは、2000年9月に設立され、Linux Kernelや仮想化に関するグローバルレベルの技術力をベースにLinuxおよびオープンソース業界を牽引する中核企業として成長を続けている。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]