クラウド・コンピューティング・テクノロジーは、計算集約的なタスクのために大量のサーバーを迅速に配備することを可能にします。テラバイト単位のデータを変換、フィルタリング、分析する必要がありますか?何千ものメディアファイルを異なるフォーマットに変換する必要がありますか?
このようなビッグデータ集約的なタスクの場合、Amazonクラウド内の大規模なサーバークラスタに大規模なワークロードを分散することでこれを実現するという選択肢があります。このようなサーバー・クラスターの作成と管理は、***困難なタスクになる可能性がありますが、StarClusterオープンソース・ツールを使用すると、Amazon Elastic Cloudの多くの面倒なプロセスを自動化することで、サーバー・クラスターの作成と管理が大幅に簡単になり、時間もかからなくなります。 StarClusterは、GNU Wide General Public Licenceの下でリリースされています。StarClusterはGNU Wide General Public Licenceの下でリリースされています。
StarCluster ソフトウェアを使用すると、簡単なコマンド ライン プログラムを使用してサーバー クラスターを作成できます。サーバー クラスターには、1 台のマスタ サーバー、複数のワーカー サーバー、および弾力性のあるブロック ストレージ ボリュームが含まれます。サーバー クラスターを作成するコマンドを入力すると、StarCluster は次の処理を行います:
- 仮想マシンインスタンスの初期化
- 新しいセキュリティグループの設定
- ユーザーフレンドリーなホスト名の定義
- 管理者以外のユーザーアカウントの作成
- パスワードログイン用SSHの設定
- クラスタ間でのネットワーク・ファイル・システム・ファイル共有の定義
- クロス・サーバ・クラスタ・タスク管理のためのOracle Grid Engine Queuing Systemの設定
Amazon クラウドでの StarCluster の使用
StarCluster は Python で記述されているため、easy_install コマンドを使用して Python Package Index からインストールできます。 Linux および Mac ユーザーはすでに Python がインストールされている可能性がありますが、Windows ユーザーはまず Python 2.7 と Python インストール ツールをインストールする必要があります。Python インストール ツールを最初にインストールする必要があるかもしれません。StarCluster ツールがインストールされたら、サーバー クラスターと Amazon クラウド アカウントに関する基本情報(アクセス ID やキーの場所など)を含む設定ファイルを定義する必要があります。
StarCluster では、サーバー クラスター用の小さなデフォルト構成が使用されますが、マシンの容量、EBS ボリューム、および サーバーの数などのパラメータを、コマンド ラインまたは構成ファイルで指定できます。StarCluster の構成パラメータには、クラスタ サイズ、ワーカー サーバー ノードで実行される Amazon マシン イメージ、ワーカー サーバー ノード インスタンスのタイプ、マスター サーバー ノード AMI、および NFS でサーバー クラスターに接続され共有される EBS ボリュームが含まれます。
サーバークラスタ用にセキュリティグループが作成され、クラスタ全体のファイアウォールルールを作成できるようになります。ファイアウォールルールはEC2のコア機能の一部なので、AWS Management Controllerや設定ファイルで管理できます。
Oracle Grid Engineによる合理化された効率的な管理
Oracle Grid Engineは、クラスタ内のタスク管理を合理的かつ効率的に実行するキューイングシステムです。たとえば、何千ものファイルの変換を申請している場合、Oracle Grid Engineを使用して、これらすべてのファイルのタスクスケジューリングを実行できます。
Oracle Grid Engine を使用するもう 1 つの利点は、サーバークラスタ内のサーバー間でワークロードのバランシングが可能なことです。また、Oracle Grid Engine は、キュー内のタスクとエラーを監視し、サーバクラスタ内のタスクのステータスに関するその他の有用な情報を保持します。
StarCluster 出力データの保存
一般に、クラスタ内で実行されるタスクはデータを生成します。そして、出力データの一部はクラスタがシャットダウンされた後でも利用可能である必要があります。これらのサーバクラスタはAmazon仮想マシンで構成されているため、関連するデータをシンプルストレージサービスまたはEBSボリュームに保存する計画を策定する必要があります。S3 オブジェクト ストレージを使用している場合、タスクは、アプリケーションがサーバー クラスターの外部で実行されているかのように、S3 に対してデータを読み書きできます。クラスターがシャットダウンされた後、これらのボリュームは他の Amazon EC2 インスタンスに接続されるため、クラスター内の EBS ボリュームに書き込まれたデータはすべて、それらのインスタンスで利用できます。
StarCluster は、コマンド ラインからライブ インスタンスに特定のサーバー タイプを指定することで、ワーカー ノードのライブ インスタンスの使用をサポートします。さらに、spo thisory コマンドは、30 日間のインスタンス タイプの現在、****、および平均価格を表示します。
StarClusterは科学計算研究のために特別に開発されたもので、一般的な科学計算ツールの標準コンポーネントとなっています。NumPyのようなPython数値計算ツールキットやATLASのような最適化線形代数ツールキットは、データ解析が得意です。StarClusterのプラグインは、HadoopやMySQLのような汎用ツールをサポートしています。




