LoginSignup
0
0

More than 1 year has passed since last update.

スパコン ITO のフロントエンドで Jupyter を使う

Last updated at Posted at 2020-04-11

スパコンITO では フロントエンド を利用することで,ログインノードではできない,比較的長時間で大規模な仕事をインタラクティブに実行できます.事前に利用する資源をフロントエンド予約システム(日本語環境英語環境)で予約します.割り当てられた Floating IP を用い,SSHエージェントフォワーディング と X11フォワーディング を利用して,ログインノード経由でフロントエンドノードにログインします.

予約に際しては,ハードウェアと利用形態や契約条件に応じてオプションを選択します.予約可能な最小利用時間は4時間,最大利用時間は7日間です.システムの準備に以前は1,2時間要しましたが,今は割とすぐ使えるようです.Floating IP はIPアドレスでメールで通知されます.

クライアント(Windows 10 Pro)の MobaXterm を利用し,Chrome からフロントエンドの Jupyter (Jupyter Notebook または JupyterLab)に接続する方法を紹介します.公式ガイド の方法2です.

事前の準備:SSHエージェントの有効化

スパコンITOで Miniconda をローカルインストールし,仮想環境においてJupyterlab等の必要なパッケージをインストールしておきます.

MoberXtermSettings -> Configuration -> SSH をクリックします.一番下にある SSH agentsUse internal SSH agent "MobAgent" にチェックを入れ,その下のボックスの右にある + のマークをクリックし,秘密鍵を(拡張子は ppk です)追加して,OKボタンOK button)をクリックします.
加えて,タイムアウトで SSH が切れるのを抑制するため,MobaXterm の Settings -> Configuration -> SSH において,SSH keepalive にチェックを入れておくとよいでしょう.
これらの作業は一度だけ必要です.

毎回の手順

メールで送られてくる,Floating IP は毎回異なりますが,172.18.32.191 のようなIPアドレスです.以下ではこれを Floating_IP と読み替えることにします.

ログインノードからフロントエンドノードにSSHでログイン

ITOのログインノードのターミナルにおいて,フロントエンドノードにログインします.もし,フロントエンドノードにログインするだけでよければ,手順はこれで終わりです.

ssh -A -Y Floating_IP
# Floating_IP はメールで送られてくる,172.18.32.191 のようなIPアドレスに置換します.

フロントエンドノードで Jupyter を起動

ログインしたフロントエンドノードにおいて,ブラウザを立ち上げずに(--no-browser) Jupyter を起動します.

# JupterLab の場合
jupyter lab --ip=127.0.0.1 --port=8888 --no-browser
# Jupyter Notebook の場合
jupyter notebook --ip=127.0.0.1 --port=8888 --no-browser

これにより以下のような表示が最後の方に現れます.この部分を後ほどクライアントのブラウザのURLにコピーペーストします.

[I 2022-04-24 13:39:11.990 ServerApp] http://127.0.0.1:8888/?token=...

ローカルポート転送で,Jupyter へのアクセス経路を構築

MobaXterm のタブ横の + をクリックして,新しいローカルターミナルを開き,以下を実行します.

ssh -o ProxyCommand='ssh -W %h:%p %r@ito.cc.kyushu-u.ac.jp' Floating_IP -l Account -L 8888:localhost:8888
# Floaint_IP はメールで送られてくる,172.18.32.191 のようなIPアドレスで置換します.
# Account は m99999a のようなユーザアカウントで置換します.

スパコンのターミナルが現れるまで,しばらく待ちます.

クライアントのブラウザで先のURLにアクセス

フロントエンドノードで Jupyter を起動した際に現れた URL(http://127.0.0.1:8888/?token=...)をクライアントのブラウザ(例えば,Windows の Chrome)の URL にペーストしてアクセスします.これで,クライアントのブラウザ内で Jupyter が起動します.少し時間がかかります.
注意: MobaXterm で URL をコピーする際は,マウスで URL を選択するだけです.Ctrl-C ではありません.

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0