Amazon EC2上にCentOS4系のAMIを作成する手順

AWS運用自動化サービス「Cloud Automator」
この記事は1年以上前に書かれたものです。
内容が古い可能性がありますのでご注意ください。

こんにちは!サーバーワークスでインフラを担当しています、柳瀬です。 先日CentOS4系のインスタンスをAWS上で動かしたいとう依頼を受けてEC2のインスタンスを作成した事がありました。 基本的な手順はCentOS5系の場合と同じですが、今回のエントリではその作成手順を記載したいと思います。 AmazonEC2のシンガポールリージョンにEC2インスタンスを起動し、CentOS4系のAMIを作成しました。 CentOS4系のインスタンスには以下のソフトウェアをインストールしておいて下さい。

  • ec2-api-tools
  • ec2-ami-tools
  • ec2-metadata

大まかな作業手順は以下の通りです。

  • 作業環境の準備、CentOS4イメージ作成
  • EBSの準備、CentOS4イメージの流し込み
  • SnapShotからAMIの作成
  • インスタンスのテスト起動

作業環境での準備、CentOS4系イメージ作成

AMI作成の作業ディレクトリを作成します

CentOS4をインストールするディスクイメージを作成

作成したディスクイメージにファイルシステムを作成

CentOSをインストールする準備をします

CentOS4をインストールします

各種設定をします

EC2上でインスタンスを起動する際に実行させるスクリプトを配置します。 ここがCentOS4系で作成する場合のポイントとなります。CentOS4系のcurlはバージョンが7.12.1です。 EC2のインスタンスは起動時にAmazonが提供しているssh公開鍵を設置するスクリプトを実行する必要があります。 しかし、スクリプト内で使用されているcurlのオプションが7.12.1で使用できません。 今回は使用出来なかった“retry”と、“retry-delay”オプションを削除して以下のように修正しています。

作業環境をアンマウントします

作業環境のゾーンを取得する

作業環境のEC2インスタンスIDを取得する

EBSの準備、CentOS4イメージの流し込み

ブートイメージ格納用のEBSボリュームを作成する

EBSボリュームをアタッチする

ddコマンドを使ってイメージをEBSボリュームに戻す

EBSボリュームをデタッチする

SnapShotからAMIの作成

SnapShotを作成

AMIの登録

インスタンスのテスト起動

スタンス起動

おまけ:起動後の初期設定

ローカルストレージのマウント

/dev/sdcのマウントをfstabに記述

アップデート

時刻を日本に変更

cronによる時刻同期

言語サポート

hostsファイルの変更

ちなみにec2-ami-toolsはtarの1.5を必要とするのでCentOS4系標準の状態ではインストールできません。

※今回の手順は弊社が行ったテストした方法となり、AmazonEC2上での動作を保証するものではありません

AWS運用自動化サービス「Cloud Automator」