cls

clsの利用方法

clsとは?

180台のマシンからなるサーバー群です。主に学生の実験環境、並列演算処理用クラスタを担っています。自分の実行環境やサーバーを構築したいというならpw、並列プログラミングをするというならclsを使うことを推奨します。

sshでログイン

コマンドラインから

# ssh ユーザー名@clsXXX.cs.ie.u-ryukyu.ac.jp

とする。

root権限について

clsの方で、何かインストールしたり、重要な設定を変更したりするにはroot権限が必要です。
普段使っているe0?????のアカウントではOSを管理することはできません。
root権限を使うにはrootアカウントでログインします。

# ssh e0?????@cls???
# sudo su -

ここで自分のパスワードを入力することで、rootになることができます。
また、rootパスワードの方を知りたいという方は、サーバ班に聞いてください。

clsのお問い合わせは sys-admin@ie.u-ryukyu.ac.jp まで

並列プログラミングの際のクラスタの使用方法

はじめに

並列プログラミングを行う際は、cls001〜cls090を使ってください。理由としてはcls101〜cls090は他の使用目的で使っているためです。(詳しくは、pw,clsを参照)

並列プログラミングを行うためには、yumでlam.i386をインストール後、/usr/lib/lam/binをパスに追加する必要があります。

公開鍵の作成

クラスタ間で通信を行う際に他のクラスタにログインするため、実際に実行する際にはパスワードなしで認証をとおらなければならない。よって cls001を親プロセスとするとまずローカル側(親プロセス:cls001)でRSAの公開鍵を作成し、リモート側(子プロセス:cls002)に送 る。

[e055755@cls001 ~] ssh-keygen
[e055755@cls001 ~] scp .ssh/id_rsa.pub cls002.ie.u-ryukyu.ac.jp:~/

ssh-keygen 実行するとEnter passphrase (empty for no passphrase):と聞かれるが記入しない。 公開鍵を作成すると~/.ssh/ に id_rsa.pub と id_rsa というファイルが出来るのでid_rsa.pub を cls002に送る。次にリモート側にローカル側の公開鍵を登録

[e055755@cls002 ~] mkdir .ssh
[e055755@cls002 ~] cat id_rsa.pub >> .ssh/authorized_keys

.ssh/ というディレクトリがない場合は作成する。コピーした公開鍵をリダイレクトで authorized_keys に加えるこれでパスワードなしでログインできるようになる。

hostnameを記述したファイルの作成

次に、プログラムの実行。プログラムはローカル側とリモート側で共通の場所(PATH)にないといけない。
scp or rsync プログラム × 100 するよりはクラスタがマウントしている /net/home/ 以下においた方がいい
とりあえずプログラムを /net/home/student/eXX/eXXXXXX/ におく。プログラムとヘッダーファイルと共に使えるホスト名(ノード名)を記述したファイルを用意する。ホスト名を記述したファイルは以下のように

clsXXX.cs.ie.u-ryukyu.ac.jp <- ノード0
clsXXX.cs.ie.u-ryukyu.ac.jp <- ノード1
clsXXX.cs.ie.u-ryukyu.ac.jp
...

LAM/MPIの使用方法

LAM(並列環境)を実行

lamboot -v lamhosts(ホスト名を記述したファイル)

停止

lamhalt

実行状態の確認

lamnodes

ホストが実行可能かの確認

recon -v lamhosts

プログラムのコンパイル

mpicc -o hoge hoge.c

実行

mpirun -ssi rpi tcp -np 1(実行するノード数) hoge


今後の予定

今後の予定としてはジョブスケジューラを用いて並列プログラミングができるようにします。これは、検証が終わり次第使えるようにします。ですので今は、公開鍵を作成して他のclsXXXに置いたりしてClusterを使用して下さい。

最終更新日: 2012/06/18