ホーム > 未分類 > EC2上にCentOS5.3をインストールする

EC2上にCentOS5.3をインストールする

AmazonでCentOSのサーバーを構築する際に、今まではRightScaleさんが作ったイメージを利用していたのですが、やっぱりちょっと気持ちが悪いので、以下のサイトを参考にして自力で構築した。

基本的には上記の手順を踏めば問題なくインストールできたが、ec2-get-console-outputコマンドでコンソールを確認すると以下のようなエラーが出ているのを発見した。

これらのエラーはEC2だけでなくXen上にCentOSを構築する際にも発生するらしい。

エラーその1

 ***************************************************************
  ***************************************************************
  ** WARNING: Currently emulating unsupported memory accesses  **
  **          in /lib/tls glibc libraries. The emulation is    **
  **          slow. To ensure full performance you should      **
  **          install a 'xen-friendly' (nosegneg) version of   **
  **          the library, or disable tls support by executing **
  **          the following as root:                           **
  **          mv /lib/tls /lib/tls.disabled                    **
  ** Offending process: init (pid=1)                           **
  ***************************************************************
  ***************************************************************

エラーその2

INIT: Id "2" respawning too fast: disabled for 5 minutes
INIT: Id "3" respawning too fast: disabled for 5 minutes
INIT: Id "4" respawning too fast: disabled for 5 minutes
INIT: Id "5" respawning too fast: disabled for 5 minutes
INIT: Id "6" respawning too fast: disabled for 5 minutes

エラーその1への対策

このエラーを要約するとインストールされたglibcがXenに対応していないので対応したものに変えてということらしい。(今回はEC2ですが。。。)

あいにく日本語での対処方法はほとんど見つからなかったが、以下のサイトを参考にしてglibcのソースパッケージを再構築することで、メッセージが出なくなった。

administration:xen:howto:glibc [MathWiki]

作業内容は以下の通り。

  1. CentOSのリポジトリから同じバージョンのglibcのソースパッケージを入手。
    (今回は、glibc-2.5-34.src.rpm)
  2. ダウンロードしたパッケージをインストールする。
    (依存関係があればそれらもインストール)
  3. 上記のサイトに記載されている「CentOS Xen glibc RPM HOWTO」通りにglibc.specを修正
  4. rpmbuild -ba glibc.specを実行してRPMパッケージを再構築
  5. できあがったRPMパッケージを全てインストール

以上でエラーが出なくなった。

エラーその2への対策

このエラーについては正直言って意味が分からないのですが、そういものらしいというレベルの理解でよさそうなので。。。(笑)

対策内容は以下の通り。

/etc/inittabの46行目から50行目をコメントアウトする。

変更後(44行目〜50行目を抜粋)

 # Run gettys in standard runlevels
 1:2345:respawn:/sbin/mingetty tty1
 #2:2345:respawn:/sbin/mingetty tty2
 #3:2345:respawn:/sbin/mingetty tty3
 #4:2345:respawn:/sbin/mingetty tty4
 #5:2345:respawn:/sbin/mingetty tty5
 #6:2345:respawn:/sbin/mingetty tty6

他にも。。。

Ec2上でCentOSを構築してもそのままでは停止したときに消えてしまうのでS3にバックアップする必要がある。

S3にバックアップするには、ec2-ami-toolsのインストール及びカーネルモジュールの修正が必要だった。

詳細は割愛しますが、以下のURLを参考にして対処した。

http://developer.amazonwebservices.com/connect/entry.jspa?externalID=798

あーめんどくさかった。。。

カテゴリー: 未分類 タグ: