計算ノードでのJupyter Notebookの起動

計算ノードを確保せずにログインノードでJupyter Notebookを動作させることは禁止されています

2020年4月より、TSUBAMEポータル経由でJupyter Labを起動することができるサービスが開始されました。
下記は当該サービスを用いない方法となります。TSUBAMEポータルのサービスが利用できない場合に参考にしてください。

TSUBAMEの計算ノードでJupyter Notebookを利用する場合、SSHのポートフォワーディングの設定が必要となります。
ポートフォワーディングに必要な処理を半自動化するスクリプトを実験的に公開しておりますので、適宜ご利用ください。

(注: 実験的サービスとしての公開であるため、予告なく動作しなくなる・公開終了する可能性があります)

前準備

Jupyter Notebookをインストールします

$ module load python/version
$ pip install --user jupyter

Jupyter Notebookのパスワードを設定します(任意)

$ jupyter notebook password

サーバの起動

$ module load jupyterrun
Loading experimental modules
For more details, please refer https://www.t3.gsic.titech.ac.jp/labs
$ cd path/to/notebook # ノートを保存する場所
$ jupyterrun -l s_core=1 -l h_rt=00:10:00 -g groupname # もしくは ijupyterrun (インタラクティブジョブ専用キュー)
To enable port forwarding, execute this command in another terminal:
ssh -l username -L 8888:r0i1n2:12345 login.t3.gsic.titech.ac.jp
Then, you can connect to http://localhost:8888/

jupyterrun には qrsh (ジョブのインタラクティブ実行) (コンテナの場合) と同じ引数が必要です。
インタラクティブジョブ専用キュー(iqrsh)を利用する場合は、 ijupyterrun を使用してください。

ポートフォワーディング

上記とは別のターミナルで、上記メッセージにあるコマンド(もしくはそれと同等のもの)を実行します
注: パラメータは毎回変わります

$ ssh -l username -L 8888:r0i1n2:12345 login.t3.gsic.titech.ac.jp

ブラウザからの接続

ブラウザで http://localhost:8888/ に接続すると、計算ノード上のJupyter Notebookに接続できます

ジョブの終了

ブラウザでQuitを選択するか、サーバの起動を行ったターミナルで Ctrl-C を2回入力することでジョブが終了します。

(付録) スクリプトで実行している内容

コマンドの存在確認やポートフォワードのメッセージ等を除くと、qrshで下記コマンドを実行しているだけになります。

jupyter notebook --no-browser --ip=0.0.0.0 --port=(ランダムなポート番号)