1. MPIクラスターを作ろう! on IDCFクラウド
IDCFクラウドのアドカレがガラ空きだな、クリスマスも終わったし私物化してやろう。
ネタはそうだな、
自分専用スパコンを作ろう!
んー、スパコンは言い過ぎだな。
PCクラスタを作ろう!
んー、クラウド上で作るからPCじゃないしな。
ベオウルフ型クラスターを作ろう!
んー、古臭い言い方だな。
並列計算機を作ろう!
んー、これも古いかな。
MPIクラスターを作ろう!
ということで、MPIクラスターをIDCFクラウド上に作る話を連載していきます。
MPI (Message Passing Interface) について触れるつもりはないのですが、
プロセス間のデータのやりとりの仕方です、並列計算時のノード間の通信に用いられます、
つまり、スパコンとかクラスタ型の計算機のよくある実装ですね。
詳細はウィキペディアとかどうぞ。
Message Passing Interface - Wikipedia
さて、では第1回目の本題ですが、なぜMPIクラスタ環境をIDCFクラウド上で作るのか、です。
それは多くのメリットがあるからなので紹介していきます。
1) 時間従量課金で使える
クラウドだとだいたいそうですね。メジャーどころのクラウドだと今時は秒課金ですしね。
ときどきある並列計算したいなとか、並列計算用の開発時のテストなんてのは、常に動かす必要ないので、使いたいときに使った分だけの課金は用途にピッタリです(というモチベーションでこの後の話は続いていきます)。
2) 1番安いタイプで月額500円
CPUが1コア、メモリが1GB、ディスクが15GBのマシンタイプで、1時間1円、1ヶ月だと500円。
64bit OS動かすなら最低でもメモリ1GBは欲しいけど、500円で使えるクラウドってあんまりないんだよね。
3) ディスクI/Oが速い
500円のマシンでもオールフラッシュの環境でIOPS制限なく利用できるのでI/Oはかなり速いというか、IDCFクラウドの1番のウリ。
4) ネットワークが速い
500円のマシンでも2Gbpsのネットワーク帯域に、超低レイテンシーかつ安定した内部L2ネットワーク。レイテンシーの低さはIDCFクラウドの隠れたウリの1つ。
ノード間の通信が多いとこのあたりが効いてくるけど、イーサーなのでもちろんInfinibandにはかなわないけども、自宅で安鯖を1000BASE-Tで並べるのと比べたときの優位点はココだね。
5) テンプレート化でスケールアウトが楽
1台だけMPI環境を作ってしまえば、あとはそいつをテンプレート化して複製していくだけなので、複数ノードの構築が楽です。
しかもVMware環境になっていて、テンプレートのエクスポート/インポートもできるので、手元のVMware環境と使いまわしが効く。
6) 名前解決付きのDHCP
IPアドレスはDHCPで振られて、しかも作成した時の仮想マシン名でDNSホスト名も引けるので、ネットワークの設定の手間が不要です。
IPアドレスを1台づつ設定するのは不要だし、ホストファイル作るのだって仮想マシン名を並べるだけで簡単です。
7) スケールアップも
500円のマシンだと1コアなので、ノード内並列も試したいというときは一時的にマルチコアのタイプに変更ももちろんできます。
仮想マシンを起動したままリサイズするダイナミックスケールの機能もありますが、Lightタイプから他のタイプには変更できないので注意です。
8) 無料のファイアウォール
ファイアウォール配下のマシンが並ぶかたちになりますので、自分しか使わないならIPアドレスで絞ってしまえばあとは安心。
VPS環境でマシン並べるとなると手間なところが省略できます。
9) 課金アラート
マシンの消し忘れ止め忘れ使い過ぎなどあると課金額が恐いですが、メールによるアラート機能がありますので安心です。
10個くらい並べようかなと思いましたが、最後良いのが思いつかなかったのでこのままにしておきます。
ゴールは、自分専用のMPIクラスタをIDCFクラウド上に構築し、HPLなどのベンチマークコードをビルドし実行するところまでです。
それでは、次回につづく。