市場には1 GHzの小さなLinux/AndroidデバイスがいくつかありますARMプロセッサ、512 MByte RAMおよびcca。$ 35〜$ 40で4Gバイトのストレージ。私は5個を購入します。これは約200ドルです。
たとえば、5個から10個があり、基本的な問題を解決したとします。彼らはあまり珍しくない種類のLinuxディストリビューション(Debianなど)を実行しており、ルートアクセスがあり、IPを使用してローカルネットワークに接続されています。だから、すべてがクラスターを作る準備ができています(私は思う)。
標準のLinuxディストリビューションを実行するデスクトップコンピューターまたはノートブック(cca。2 GHz x86プロセッサー、1〜2 GBのRAM、数GBのHDD/SSDスペース)もあります。キーボード、マウス、モニターがあり、クラスターの「フロントエンド」として使用したい。
つまり、問題は、デスクトップコンピュータでいくつかの小さなコンピュータの馬力を利用する最も簡単な方法は何ですか?
デスクトッププログラムはその環境で動作するように設計されていないため、実際のクラスターをセットアップしたくありません。プロジェクトは、デスクトップ/ネットブックコンピューターからいくつかのジョブをプッシュし、小さなジョブ間で可能な限り最適に共有することです。
たとえば、X11を使用して、小型のコンピューターでブラウザーを起動する必要があります。デスクトップマシンのメモリを消費しません。多くのページを開いている場合は、別の小さなマシンで別のページを開始できます。
小さなコンピューターでテキストエディターを起動することもできます。作業しているフォルダーを共有するだけです。これには小さな問題があります。私はGeanyを使用していて、F8キーを押してコンパイラーを起動するので、小さなマシンはデスクトップマシンでコンパイラーを起動するはずです。そのための小さなスクリプトを書かなければならないかどうかは気にしません。
あなたのアドバイスは何ですか、それは飛ぶでしょうか?
私にとってかなりうまくいくアプローチ...
「念のため」に置いてある古いモニターの1つを各小型コンピューター( RaspberryPi など)に接続します。
すべてのコンピューターで、 Puppy Linux のような小さくて高速なRAMベースのO/Sを実行します( 仕組み)を参照 。
すべてのコンピューター間でパスワードなし(事前共有パスワード配布)SSHをセットアップします。
すべてのコンピュータにKVMsoftwarelike Synergy をインストールし、キーボードとマウスを備えたコンピュータ。その他は「クライアント」になります。Synergyはオプションで、SSHを介して実行してセキュリティを強化することもできます。
Fuse [〜#〜] sshfs [〜#〜] (推奨)またはNFSを使用して、ブート時にストレージデバイスをマウントします。
また、ネットワーク(PXEなど)を介したブートのセットアップも必要になる場合があります。
これで、独自のマルチモニターコンソールができました。
目に見えるデスクトップのサイズが劇的に増加し、2.5-7GB RAMおよび6-11 "コア"となるため、複数のブラウザーを実行できます(私は Chromium を見つけました) =リソースを最も使いやすくするため)、コマンドの構文を調べたり、プログラミングや書き込み中に他の調査を行ったりしながら、一度に多くのページを見ることができます。
クラスターに正確に何をしてほしいのか少し混乱しています。プログラムを開始し、別のボックスで実行するだけでよいように思えます。その場合は、SSH/X-forwarding/NFSで問題ありません。
私見これは実際にはクラスタリングとは何の関係もありません。単に異なるマシンをリモート制御するだけです。私は本当に一つだけ質問しなければなりません。なぜこのトラブルメイトすべてがそうなのですか?最近400ドルで、デスクトップアプリケーションを実行するための十分なメモリを備えたPCの獣を構築できます:)
Beowulf-cluster のようなものを探しているようです。
これは、多数の「ボックス」での並列計算のために開発されたクラスターです。