Eucalyptus環境を使ってみる(その4)

2011.08.02

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

今回はNode Contorollerのセットアップを行います。
まずはOSのインストールから。。。
Node Contorollerの役目を担うマシンへCentOS5.4 64Bit版のインストールから始めます。
ネットワークの設定は

IP:192.168.1.157 (インストール中) 10.100.0.2(インストール後)
IPv6のオプションは外す

としました。(セットアップ環境に応じて変更してください。)

CLC/CC同様にDesktop-Gnomeは本来不要ですが、CUIはめんどくさいのでとりあえず入れました。
今回はNode Controllerなので仮想化(Virtualization)もインストールします。

サーバログインを行いファイアウォールとSELinuxを無効にする設定を行います。
OSの再起動の後、Xenの設定を変更します。

vi /etc/xen/xend-config.sxp

17行目あたりにある
#(xend-http-server no)
のコメントを外し、no を yesにする

(xend-http-server yes)

40行目あたりにある
#(xend-address localhost)
のコメントを外します。

(xend-address localhost)

編集が終わったら保存し、xendを再起動します。

/etc/init.d/xend restart

次にCLC/CCと同様にループバックデバイスを増やす設定をします。

cd /etc/modprobe.d
vi loop

下記の1行をloopファイルに追加

options loop max_loop=256

50-udev.nodesファイルにloop8~loop255を追加する。

cd /tmp
vi add_loop255.sh

ファイルに下記の1行を記述しスクリプトの実行をします。(コマンドラインで直接実行しても可)

for i in `seq 8 255`; do echo loop${i} >> etc/udev/makedev.d/50-udev.nodes; done

chmod +x add_loop255.sh
./add_loop255.sh

サービス停止の設定

chkconfig iptables off
chkconfig ip6tables off
chkconfig libvirtd off	←Node Controllerではこれも停止します。

次に時刻同期(ntp)の設定をCLC/CCと同様に行います。
CentOS5.4のデフォルトインストール状態ではすべてOffとなっているので、自動起動できるように設定します。
まずは現在の状態を確認します。

chkconfig --list ntpd
ntpd 		0:off 	1:off	2:off	3:off	4:off	5:off	6:off

となっていたので、

chkconfig --level 35 ntpd on

として自動起動設定を行い、設定後の状態を確認します。

chkconfig --list ntpd
ntpd 		0:off 	1:off	2:off	3:on	4:off	5:on	6:off

次に/etc/ntp.confをviにて編集します。
CLC/CCでセットアップした際と同様の記述をします。
Eucalyptus環境を使ってみる(その2)を参考
記述は実際の利用環境に応じて変更する必要があります。
記述が終わったら保存します。

ここまで設定できたら一度ntpサーバを再起動して設定を有効にします。

# /etc/init.d/ntpd restart
ntpdを停止中:[ OK ]
ntpdを起動中:[ OK ]

を行い正常に起動できているかを確認します。
(最初は起動していない為、停止で[ 失敗 ]になることもあります)

NTPの動作確認

ntpq –p

のコマンドを入力し、表示されるホストの左端に’*’が表示されていればそのサーバが現在参照中のNTPサーバであることを示しています。

次にEucalyptus Node Controllerのインストールを行います。
まずは必要なパッケージをyumでインストールします。

yum –y install httpd

インストールが終わったら依存パッケージ3つをrpmコマンドでインストールします。

vi inst.sh

viで開いたファイルに下記を記述して保存します。

rpm -Uvh aoetools-21-1.el4.x86_64.rpm \ 
euca-axis2c-1.6.0-1.x86_64.rpm \ 
euca-rampartc-1.3.0-1.x86_64.rpm

保存して、実行権を付与し、スクリプトを実行します。

chmod +x inst.sh
./inst.sh

次にEucalyptusのコンポーネントを、rpmコマンドでインストールします

cd ..
vi inst-euca.sh

viで開いたファイルに下記を記述して保存します。

rpm -Uvh eucalyptus-1.6.2-0.1.rc1.x86_64.rpm \ 
eucalyptus-nc-1.6.2-0.1.rc1.x86_64.rpm \ 
eucalyptus-gl-1.6.2-0.1.rc1.x86_64.rpm

保存して、実行権を付与し、スクリプトを実行します。

chmod +x inst-euca.sh
./inst-euca.sh

Node Controllerのマシンにて以下のコマンドを実行し、eucalyptusユーザーでHypervisorの情報が取得できるかを確認します。

su eucalyptus -c "virsh list" 
Id 名前 状態 
---------------------------------- 
0 Domain-0 実行中

どうやら問題なくHypervisorの情報が取得できているようです。

次回はVNET_MODEの変更手順から行います。