web-dev-qa-db-ja.com

高性能クラスタに対するセキュリティ上の懸念

これは私の初めてクラスタを作成するので、これは非常に開かれた質問です。私はどんな種類のセキュリティ上の懸念があるかどうか、そしてそれらを防ぐ方法を疑問に思います。

背景情報

内部クラスタのSGE(現在インストールおよびスケジュールが最適)を使用する。

PVM/MPIプログラムは1つまたは他方を使用してPerlプログラムを実行することを可能にします。追加情報。誰かがこれについてコメントしてください)。

クラスタに接続する外部ノードがあり、このノードはインターネット/サーバーから受信したジョブを送信します。

すべてのユーザーは、インターネットを通じてジョブを実行するように要求を送信する必要があります(ローカルに接続されているときにそれらを迂回することを許可しないようにする方法を考えようとしています)。

このプロジェクトの目標:

最終的には、どこからでもインターネットを介した人々を実行して実行すると、プログラムが完了したら通知されます。さらにデータを表示することを許可して、オフライン視聴のためにデータをダウンロードすることもできます。

可能性がありそうもない:私たちのプログラムが不十分なときに彼らのデータを微調整するためにユーザーがプログラムをアップロードできるようにすることさえあります。

1
user36181

(計算ノードから)ローカルにジョブを送信するための簡単な方法、またはリモートシェルセッションを使用することは、ComputeとIOノードのSSHログインを禁止することです。そうすることによってsgeを破る。そうすることによって、どのホストが提出機械として機能するかを制御することができることは言うまでもなく。

主な固定作業は、ログイン/ポータルノードで実行する必要があります。これを適切に文書化し、定義されたインターフェイスは、これらがそこでやることを意図しています。 Globus ToolkitのGrid-FTPのようなものがSSHの上またはその問題の完全な吹き付けPKIでのものがあります。

または、DRMAA APIを使用してPython、Ruby、Javaなどからジョブを送信し、システムからプログラムやデータをアップロード/ダウンロードする方法を提供するWebポータルを準備することもできます。

通常、セキュリティはほとんどのHPCインストールに大きな関心事ではなく、通常のUNIXマルチユーザーセキュリティの原則は完全に適用されます。分散リソース管理は、リソースの乱用やそのようなものから保護するのに役立ちます。

問題のデータ表示部分については、通常、開発とデバッグのようなインタラクティブな作業用に予約されているいくつかのデスクトップノードを実装します。ほとんどの時間にはGPUも含まれており、Trubovnc + VirtualGLを設定して、他のストレージやデスクトップへの長い転送を開始する前に、ローカルにデータをローカルに見ているように設定します(それらはSGEにVNCデスクトップセッションを送信します)。 WANタイプのリンクを超えても、HW Acceled 3Dビジュアライゼーションでセットアップが正しく使用できるようにして、クラスタとVNC上でローカルに留まるようにするのに役立ちます。また、(遅くする)VNCビューアをWeb Portalに埋め込むこともできます。

1
pfo

私たちは1時間に2回実行され、SGEが知らないすべての仕事を殺すハウスキーピングスクリプトを作成しました。これはうまく機能し、何らかの理由でノード上でも実行されたままになっているプロセスを消去します。

0
Jimmy Hedman