Amazon EC2用Centos5イメージを作って、EC2上で動作させてみる(1)

logo_aws Amazon EC2用Centos5イメージを作って、EC2上で動作させてみる過程のメモ。
記述量が多くなったので、ページを分けてみた。

1.AWSのアカウントを取得して、ツールのセットアップを行う 
2.Centos5のディスクイメージを作成する。
3.Centos5のイメージを、EC2向けにカスタマイズする。
4.作成したOSイメージを加工して、S3にアップし、EC2のマシンイメージとして登録する。
5.マシンイメージの実行、停止、マシンイメージの廃棄。


はじめに、AWSのアカウントを取得して、ツールのセットアップを行う。
参考にした記事:
Creating an AMI through a Loopback File
Bundling a Linux or UNIX AMI
Amazon EC2 用に自分で CentOS 5 のイメージを用意する

1.事前準備

(1)作業用マシンの準備

作業は CentOS5.2 (Xen 上の DomU)で実施することにした。

EC2では、以下の3個のパーティションが用意されている。
・rootボリューム(sda1)に10GB
・作業エリア(sda2、後述では、/mntにマウント)に150GB
・Swap(sda3)には、メモリーと同サイズ?

AMIは、rootボリューム用のイメージとなるため、10GB以下のサイズで用意することになる。
AMIの作成には、作業用のディスク領域として、作成するディスクイメージのサイズ+圧縮イメージの保存スペースが必要になる。
今回は4GBのディスクイメージを作成するが、ストレージスペースが足りなかったので、あらかじめ「DomainUへのHDD追加」を行った。

(2)AWSのデベロッパーアカウントの登録と証明書の取得

はじめにAWSの利用登録、 Access Key IDと Access Keyの取得及び、X.509証明書の取得を行う。

Access Identifiersから、「X.509 Certificate」の下にある、「Create a New」ボタンで、証明書を作成し、「Douwnload」ボタンでダウンロードする。

取得したX.509証明書と秘密鍵をホームディレクトリ配下に配置しておく
$ mkdir ~/.ec2
$ cp pk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.pem cert-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.pem ~/.ec2
$ chmod -R 400 ~/.ec2/*.pem

(3)Amazon EC2 API Toolsをセットアップ

ec2の操作を行うためのツールを導入する。
参考資料:AWSのGettingStartedGuideページの右のリストから、「Setting up the Tools」をクリック

Amazon EC2 API Toolsのダウンロード

Amazon EC2 API Toolsページから「Download the Amazon EC2 API Tools」のリンクよりec2-api-tools.zipをダウンロードして解凍。(格納先は、~/と仮定。)

$ cd ~
$ unzip ec2-api-tools.zip
$ mv ec2-api-tools-1.3-30349 ~/

ec2-api-tools用の環境変数の設定

.bashrc への追記

export EC2_HOME=~/ec2-api-tools-1.3-30349/
export PATH=$PATH:$EC2_HOME/bin
export EC2_PRIVATE_KEY=~/.ec2/pk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.pem
export EC2_CERT=~/.ec2/cert-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.pem

JDKの導入

ec2-api-toolsでは、JDKを使うので未導入の場合はセットアップする。

Linux(CentOS5)にJavaのJDKをインストールしてHelloWorldまで
あたりを参考に
SUNのダウンロードサイトからjdk-6u7-linux-i586-rpm.binをダウンロードして、実行権限を設定し、実行する。

# chmod +x jdk-6u11-linux-i586-rpm.bin
# ./jdk-6u11-linux-i586-rpm.bin
Do you agree to the above license terms? [yes or no]
と聞かれたら、内容を確認して、yseとタイプ

JAVA関連の環境変数設定

最終行の後ろに以下のとおり3行を追加する

# vi /etc/profile
export JAVA_HOME=/usr/java/default
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar

(4)Amazon EC2 AMI Toolsをセットアップ

Amazon EC2 AMI Toolsから ec2-ami-tools.noarch.rpm をダウンロードしてセットアップする。
# wget https://s3.amazonaws.com/ec2-downloads/ec2-ami-tools.noarch.rpm
# rpm -i ec2-ami-tools.noarch.rpm

Rubyやcurlが未導入の場合は、rpmコマンドがエラーになるので、導入してから、再実行する。
# yum -y install curl ruby
# rpm -i ec2-ami-tools.noarch.rpm

次は、Centos5のディスクイメージを作成する。

Leave a Reply