CentOS 5.3 への Eucalyptus (1.5.2) のインストール
CentOS 5.3 では、ソースから Eucalyptus をインストールすることも、RPM のバイナリパッケージを使って Eucalyptus をインストールすることもできます。ここでは、RPM を使って Eucalyptus をインストールする手順について説明します。
RPM のダウンロード
Eucalyptus のバイナリパッケージは、クラウドコントローラ用 (-cloud パッケージ)、クラスタコントローラ用 (-cc パッケージ)、およびノードコントローラ用 (-nc パッケージ) のパッケージに分かれています。Eucalyptus チームでは、インストールを簡単にするために、便宜的にすべてを 1 つの tarball にまとめたものを用意しています。この tarball には、Eucalyptus が依存するサードパーティ製パッケージ (Rampart、Axis2C、多くの Java ライブラリ) も含まれています。
http://open.eucalyptus.com/downloads から適切な tarball をダウンロードします。
- 32 ビットマシンの場合は、eucalyptus-1.5.2-centos-i386.tar.gz をダウンロードします。
- 64 ビットマシンの場合は、eucalyptus-1.5.2-centos-x86_64.tar.gz をダウンロードします。
一時的な作業ディレクトリを作成し、そこで tarball を展開します。
tar zxvf eucalyptus-1.5.2-*.tar.gz cd eucalyptus-1.5.2-*
必要なその他の依存関係はすべて、標準のリポジトリにあります。
必要なもの
標準的なインストールを行った CentOS では、次の手順に従って Eucalyptus に必要なものすべてを満たします。
- フロントエンド、ノード、およびクライアントマシンのシステムクロックを NTP を使って同期させます。
yum install -y ntp ntpdate pool.ntp.org
- ノードには Xen を完全にインストールし、Xen の構成を済ませて、ローカルホストから HTTP 経由でハイパーバイザーを管理できるようにします。
yum install -y xen sed --in-place 's/#(xend-http-server no)/(xend-http-server yes)/' /etc/xen/xend-config.sxp sed --in-place 's/#(xend-address localhost)/(xend-address localhost)/' /etc/xen/xend-config.sxp /etc/init.d/xend restart
Xen のサポートを有効にしたカーネルも必要です。
- フロントエンドには Java、Apache ant、および DHCP サーバーをインストールします (適切に構成されている必要はありません。Eucalyptus が適切な構成でバイナリを呼び出します)。
yum install -y java-1.6.0-openjdk ant ant-nodeps dhcp bridge-utils
- ファイアウォール・ルールでは、Eucalyptus コンポーネントが互いに通信できるようにするとともに、クライアントが Eucalyptus と通信できるようにしなければなりません。具体的には、フロントエンドではポート 8443、8773、8774 を使用できるように、ノードではポート 8775 を使用できるようにしなければなりません。Elastic IP やセキュリティ・グループの利用を予定している場合は、ファイアウォールを無効にし、Eucalyptus の機能を使って独自のファイアウォール・ルールを有効にする方がよいでしょう (詳細については、Eucalyptus ネットワークの構成を参照してください)。フロントエンドとノードの両方で、次の操作を行います。
たとえば、テキストコンソールでは次のようにします。
- system-config-securitylevel を実行します。
- Security Level: Disabled を選択します。
- OK を選択します。
X 端末では次のようにします。
- system-config-security-level を実行します。
- 'Firewall' で 'Disabled' を選択します。
- 'SELinux' タブを選択します。
- 'SELinux Setting' で、'Permissive' または 'Disabled' を選択します。
フロントエンドへの RPM のインストール
以下の手順では便宜的に x86_64 をアーキテクチャとして使用しますが、32 ビットマシンではこれを i386 または i586 に置き換えてください。
フロントエンド上で、サードパーティ製の依存するパッケージをインストールします。
cd eucalyptus-1.5.2-rpm-deps-x86_64
rpm -Uvh aoetools-21-1.el4.x86_64.rpm \
euca-axis2c-1.5.0-2.x86_64.rpm \
euca-rampartc-1.2.0-1.x86_64.rpm \
vblade-14-1mdv2008.1.x86_64.rpm
cd ..
フロントエンド上で、-cloud RPM および -cc RPM をインストールします。
rpm -Uvh eucalyptus-1.5.2-1.x86_64.rpm \
eucalyptus-cloud-1.5.2-1.x86_64.rpm \
eucalyptus-gl-1.5.2-1.x86_64.rpm \
eucalyptus-cc-1.5.2-1.x86_64.rpm
ノードへの RPM のインストール
各計算ノード上で、依存するパッケージをインストールします。
cd eucalyptus-1.5.2-rpm-deps-x86_64
rpm -Uvh aoetools-21-1.el4.x86_64.rpm \
euca-axis2c-1.5.0-2.x86_64.rpm \
euca-rampartc-1.2.0-1.x86_64.rpm \
euca-libvirt-1.5-1.x86_64.rpm \
vblade-14-1mdv2008.1.x86_64.rpm
cd ..
各計算ノード上で、依存関係とともにノードコントローラ RPM をインストールします。
rpm -Uvh eucalyptus-1.5.2-1.x86_64.rpm \
eucalyptus-gl-1.5.2-1.x86_64.rpm \
eucalyptus-nc-1.5.2-1.x86_64.rpm
インストール後の手順
インストールの最後の手順では、RPM のインストール時に作成されたユーザー 'Eucalyptus' が、計算ノードのすべてで、libvirt を介してハイパーバイザーを操作できるかどうか確認します。そのための最も簡単な方法は、各ノード上で次のコマンドを実行することです。
su eucalyptus -c "virsh list"
コマンドからの出力にはエラーメッセージ (failed to connect to xend など) が含まれることがありますが、すべてのドメイン (少なくとも Domain-0) のリストが含まれていれば、設定に問題はありません。
次の要領で Eucalyptus のサービスを起動します。
フロントエンド上では、次のようにします。
/etc/init.d/eucalyptus-cloud start /etc/init.d/eucalyptus-cc start
ノード上では、次のようにします。
/etc/init.d/eucalyptus-nc start
以上で、Eucalyptus の構成で説明されている初回時の構成に進む準備が整いました。
構成に関するその他の依存関係
Eucalyptus をコンパイルする場合をはじめ、Eucalyptus で Elastic IPやセキュリティ・グループを利用する場合、さらに Eucalyptus の機能を使い、VLAN タギングを利用して VM ネットワークを分離する場合には、依存関係を追加インストールする必要があります。これらの依存関係は、次のようにすることですべてインストールできます。
yum install -y java-1.6.0-openjdk-devel ant ant-nodeps libvirt-devel curl-devel httpd httpd-devel apr-devel openssl-devel dhcp
