luggage baggage

Machine learning, data analysis, web technologies and things around me.

遺伝研スパコンで Visual Studio Code を使う

私は最近、国立遺伝学研究所が運営するスパコンにお世話になっています。特に CPU ヘビーな計算をさせる場合に重宝しています。遺伝研スパコンは、通常、まずゲートウェイノードに SSH した後にログインノードに改めてログインすることで開発作業を進めることができる約束となっています(その後に計算ノードにジョブを投げる)。この記事では、ログインノード上で VSCode を使うための方法を共有します。

なお、この方法をブログ上で公開することは遺伝研スパコン運営側から許可をいただいております。また、ゲートウェイノード上で VSCode を動作させることは許可されておりませんので、ご注意を。

VSCode には Remote-SSH という便利機能があり、SSH 先のファイルを編集できるようになっています。今回は多段 SSH を利用して遺伝研スパコンのログインノード上で vscode-server を動作させることとなります。設定としては、sshconfig に次のように書いておけばほぼ終わりです。

Host nig_vscode
  HostName at137
  User your_username
  IdentityFile ~/.ssh/nig_key
  ProxyCommand ssh -W %h:%p -i ~/.ssh/nig_key -p 22 your_username@gw.ddbj.nig.ac.jp

HostName at137 の at137 は、ゲートウェイノードからアクセスしたことのあるログインノードのホスト名が該当します。一度通常どおりにゲートウェイにアクセスした後 qlogin し、ログインノード上で hostname の出力を記録しておけば問題ありません。あとは、ProxyCommand により多段 SSH をしています。ユーザ名と秘密鍵は遺伝研スパコン利用時に申請しているものを指定すればOKです。

このようにした上で VSCode の "Remote-SSH: Connect to Host..." より nig_vscode を選択するとログインノードにアクセスできるはずです。