OrangePi OPi-clster 一部で流行りのクラスタを作るプロジェクト

 2016-09-23
RaspberryPiでクラスタを作るのは一部で流行りですが、私は財政的な理由からあまり数を揃えられず、ちょっと離れて眺めていましたが、ここへ来てOrangePiを味見してしまいました。
OrangePiはいわゆるナントカPiの中華版なのですが、とにかく安い。手頃でコストパフォーマンスに優れているOrangePi PCは1枚15ドルと格安ですがRaspberryPi2B以上の計算能力があります。(UnixBenchの記事参照)
というわけで、ビンボーな私はOrangePiを束ねてクラスタを作ってみる事にしました。
 

目指す姿 目標仕様

趣味で作るモノなので、飽きたときに分解して個別のシステムとして使ったり、あるいはまた戻したり…と、流動的な使い方を許容できる仕組みにしたいと思います。
また、OrangePiは中華なボードなので今後のサポートも多少の心配があります。セキュリティ的なパッチも供給されるかどうか分かりません・・。なのでOrangePiを沢山ネットワークにぶら下げて好きに通信させるのはなんだかキモチガワルイです。
・・など、なんとなく妄想を膨らませつつ、下記の要件を定義しました。
  • 疎結合Clusterとする。
    密結合はメンテが面倒だから。(個人の感想です たぶんコツを得ればそんな事無いんでしょうけども。。)
    密結合・疎結合と言うとちょっと言葉の意味がアレだけど、まぁクラスターの様に見える単なる集合体ってことです。
  • Clusterの計算ノード間のネットワークは独自の物理層を持つものとする。
    いろいろと分離したいから。
  • Clusterにアクセスするためのゲートウェイを置き通信は必要なものだけ通す。
    あんまり信用していないから。
  • ゲートウェイにはRaspberryPiを使用する。
    (ある程度)信用できる仕事を期待したいから。
  • 計算ノードをコントロールするノード(以下、MASTERノードという)には上記のRaspberryPiを使用する。つまり兼任してもらう。
    理由は同じ。
  • MASTERノードとメインのネットワークへは無線LANを使用する。
    これは趣味。 OPi-Clusterの塊を容易に移動できるよう、無線で切り離したい。

というわけで、数が沢山必要な計算ノードにはOrangePiを、多少はセキュリティ的な信頼性も欲しいなぁと思うゲートウェイにはRaspberryPiを用いる事にします。


このページは目次のようなもの

opiclst.jpg ここでOPi-clsterと言っているクラスタは・・・実はもう組み上がっています。
 連続稼働で変な事が起こらないか、ひたすらlibx264で動画のエンコードを回し続ける負荷試験中です。
 なのでこのブログには作業記録として残すものとして書いています。ただ、ちょっと分量が多いので、細かく記事を分けて書いていこうと思います。(私が長文書くと意味が分からなくなるので)
 今後、このページにリンクする形で記事を追加していく予定です。最後には、このページから全ての作業を振り返る事が出来る様にするつもりです。なので、このページは目次のような役割です。

[2016/11/09 追記]
思ったよりも面白かったのでカテゴリ分けました。こちらもリスト状ですがポインターとしては使えるはず。



ハードウェア

※随時追加予定


ソフトウェア

※随時追加予定


計算能力

今現在、7台(OPi)+1台(RPi/Master)構成で負荷を掛けてテスト中です。 720Pのx264(crf=18),aacの動画を約110GB程(再生時間にして33時間と37分程度)用意して、それをひたすらx264のcrf=24で再エンコードさせています。
動画は古いDVカメラからキャプチャしたホームビデオなのでなにやら小学校の運動会やら音楽発表会やらが含まれており、動きの激しいものから殆ど動かないモノまでいろいろ混じってます。
60時間程経過した段階で、残り42GBになりました。24時間あたり、27GB分を処理するスループットという感じですかね。うーん、苦労した割にはあんまり早くも遅くも無い??? 消費電力もよく分からんし・・今度計ってみたいと思います。

[2016/09/25 追記]
2016/09/20 07:30開始、2016/09/24 21:20に全ノードの処理が終了。約110時間かかりました。
元動画の再生時間が約33.5時間なので、実時間に対する変換速度は0.3045倍って所ですね。あんまり早くはないですねぇ。
ノード数を3倍の20数台規模にしてようやく実時間と同等って感じですか。。



消費電力 [2016/09/25 追記]


消費電力を計測してみました。測定に使ったのは市販のエコチェッカーと言われるモノ。ET30Dです。(Amazonで安かったから)
測定範囲は5W以上1500W以下、測定精度は±5%だそうです。

待機電力 (7台(OPi)+1台(RPi/Master)構成)

OS起動して待機中の消費電力は21Wでした。12cmファンを2つ駆動していますが、このファンを止めると15W程度でした・・・。ファンだけで5Wですか。。
opiclst_21w.jpg

負荷時電力 (7台(OPi)+1台(RPi/Master)構成)

全ノードでlibx264の動画エンコード作業をさせた際の消費電力は35Wでした。待機からの差分である+14Wがエンコード作業に費やされている感じでしょうかね。こちらもファンを止めると5W下がりますが、システムとしては必要なファンなので止めるわけにはいきません。。
opiclst_35w.jpg



コスト (7台(OPi)+1台(RPi/Master)構成)

趣味でやってることなのであまり重視はしていませんが、でも私のお小遣いから出せる程度で頑張って妥協点を探っています・・・
物品単価個数費用備考
RaspberryPi 2B$42.231$42.23RaspberryPi2Bをaliexpressにて購入
OrangePi PC$157$105OrangePiPCをaliexpressにて購入
放熱器(16PB017)40円8320円PB16017(P-05053)を秋月電子で購入
熱伝導両面テープ858円1858円AINEX PA069BをAmazonで購入
電源(DC5V/2A)650円85,200円GF12-US0520(M-01801)を秋月電子で購入
電源コネクタ類30円8240+100円2.1mm標準DCジャックユニバーサル基板取り付けよう(C-09408)、
分割ロングピンソケット2x42(C-05780)を秋月電子で購入
その他基板等は手持ちを使用
電源タップ(9口)1,227円11,227円TAP-B40BKをAmazonで購入
LANハブ(8ポート)1,443円11,443円EHC-F08PA-BをAmazonで購入
LANケーブル200円81,600円BSLS6AFU05BKをAmazonで購入
無線LANアダプタ1,310円11,310円WN-G300UAをAmazonで購入
MicroSDカード(16GB)680円85,440円TS16GUSDU1PEをAmazonで購入
USBフラッシュメモリ(16GB)1,080円77,560円TS16GJF510SをAmazonで購入
USBフラッシュメモリ(32GB)1,480円11,480円TS32GJF510SをAmazonで購入
30mmスペーサ50円321,600円MB3-30(P-07322)を秋月電子で購入
10mmスペーサ20円480円MB3-10-4(P-08164)を秋月電子で購入
冷却用ファン1,809円11,809円BIGFAN120U-STEREOをAmazonで購入

細かいモノは省いているのですが大まかには上記な感じです。合計金額は・・・\28,967円+$147.23ドルで、ドル円レートを100円/ドルだとしても、43,690円ですかね。
これならCorei7の中古ノートPCが買えちゃいそうですね。ひぇ~。 いくつか省いたり小容量のものに変更するなどしてコストをもう少しだけ削れそうですが、大きく変える事は難しそうです。

本体が$15でも、電源類+SDカード+USBフラッシュメモリ+LANケーブルを加えると1台あたり約4,140円しますからね。これが7台で28,980円・・・。ふぇぇ。

趣味ですねー。
 
コメント












管理者にだけ表示を許可する
トラックバック
トラックバックURL:
http://wbbwbb.blog83.fc2.com/tb.php/245-7c0b1e6a
≪ トップページへこのページの先頭へ  ≫