フルOSSクラウド構築レシピ
3.4. レポート・ソフト - Munin
Muninは、性能情報の収集とグラフ化に特化したソフトウエアです。監視対象にインストールしたエージェントから情報を収集し、グラフを作成してくれます。
Muninの選定ポイントとなった特徴は、以下の通りです。
- リソース利用状況のリアルタイム公開
- リソース情報の処理が軽量であり、サーバー数が多い場合にも対応できる
- インスタンスの動的増加に合わせた、収集対象の自動追加
Muninは、シンプルなプロトコルでリソース情報を処理するため、サーバー数が多い場合でも比較的軽量にリソース情報を収集できます。また、プラグイン開発も容易です。
有志によってさまざまなプラグインが提供されているのも、Muninの魅力です。Munin Exchangeのサイト*1では、Muninのプラグインが多数登録されています。Munin Exchangeで公開されているXenのプラグインを利用することで、レポート機能を実現できます。
収集対象を自動的に追加する機能は、クラウド基盤では特に重要です。ユーザーのリクエストに応じてインスタンスが自動的に払い出されるため、レポート機能も自動払い出しに追従できる必要があります。
Muninでは、収集対象を自動的に追加しますが、現在情報を取得可能な項目だけしかグラフ上に表示しません。このため、過去動作していたインスタンスのリソース情報を閲覧可能にするためには、プラグイン内で過去のインスタンス情報を記録するようにする必要があります。
3.5. バックアップ・ソフト - Amanda
Amandaは、データのバックアップとリストアを行うソフトウエアです。
バックアップ間隔と対象ファイルを設定すれば、毎回のバックアップ時間がほぼ均一になるように自動スケジューリングしてくれます。また、バックアップ・データは、tarやcpioなどの標準的なコマンドで展開できるため、緊急時にAmandaが動作していない環境でも、バックアップ・ファイルをリストア可能です。
上記に加え、集中管理できる仕組みや、ディストリビューションに標準で含まれている点を選定ポイントとしています。
クラウド基盤のバックアップにおいては、仮想サーバーのイメージ・ファイルのサイズが大きいことを考慮し、タイムアウト値やバッファ領域のパラメータを調整します。
3.6. 構築、デプロイの自動化ソフト - Clonezilla、Puppet
Clonezillaは、仮想サーバー・イメージをクラウド環境に展開するソフトウエアです。クラウド基盤では多数の同じ構成のサーバー(NCなど)が存在するため、インストール作業を自動化することは、大変効果的です。
Clonezillaは、イメージを複数サーバーに展開するソフトであるため、クラウドの運用を効率化できます。イメージの管理機能や、デプロイが高速に行える点から、Clonezillaを選定しています。
Puppetは、サーバー設定などの構成管理を行うソフトウエアです。各サーバーに対して設定ファイルの書き換えやコマンド実行などを行います。全サーバーに対して一括で実行する方法と、特定のサーバーに対して実行する方法があります。また、設定項目などリソースごとの依存関係を定義することもできます。Clonezillaだけでは個別の設定ができないため、Puppetと組み合わせて個別設定の自動化を行います。
ClonezillaやPuppetを利用する際は、サーバーとMACアドレスを対応付けておくことがポイントとなります。MACアドレスをもとに、IPアドレスやホスト名を自動設定します。サーバー数が多い場合、MACアドレスを調査する作業が大変になりますが、最初に苦労しておくことで、インストール作業を自動化でき、設定作業のミスも防げるようになります。
3.7. まとめ
クラウドを構築するにあたって、ソフトウエアの種類、必要性と選定ポイントを示し、実際にNTTデータ社内で利用しているソフトウエアを紹介しました。
次回は、実際にNTTデータ社内で運用しているクラウドの経験とノウハウ、今後の展望を紹介します。