VSCodeでインスタンスに接続
本記事ではVSCodeを使用してGPUSOROBANインスタンスに接続する手順を紹介します。
GPUSOROBANは高性能なGPUインスタンスが低コストで使えるクラウドサービスです。
サービスについて詳しく知りたい方は、GPUSOROBANの公式サイトを御覧ください。
目次[非表示]
VSCodeのインストール
下記のリンクをブラウザで開きVSCodeをダウンロードします。
https://code.visualstudio.com/
ご自身に合ったタイプのOSを選択します。
※本記事ではOSのタイプWindowsを選択しています
赤枠のプルダウンから「開く」を押下します。
マイクロソフト ソフトウェア ライセンス条項を確認した後に「同意する」を選択し、「次へ」を押下します。
実行する追加タスクを選択した後に「次へ」を押下します。
※本記事では「デスクトップ上にアイコンを作成する」を選択しています
インストール準備完了画面にて、「インストール」を押下します。
セットアップが完了するまで待機します。
Visual Studio Code セットアップウィザードの完了画面にて、「完了」を押下します。
VSCodeによるインスタンスへのSSH接続
VSCCodeからインスタンスに接続する前に、アクセスサーバー用秘密鍵とインスタンス用秘密鍵を接続元PCの.sshフォルダに格納していることを確認してください。秘密鍵の設置方法はこちらの記事をご参照ください。
検索窓にて、VSCodeを検索して開きます。
サイドバーの「拡張機能のアイコン」をクリックし、拡張機能の検索窓を開きます。検索窓に”remote ssh”と入力し、「Remote - SSH 」が表示されたら、「インストール」ボタンを押下します。
Remote-SSHのインストールが完了するとサイドバーに「リモートエクスプローラーのアイコン」が追加されます。
リモートエクスプローラーをクリックした後に、SSHの横にある「歯車アイコン」をクリックします。
歯車アイコンをクリックするとコマンドパレットが表示されるので「C:\User\ユーザー名.ssh\config」をクリックします。
コマンドパレットの「C:\User\ユーザー名.ssh\config」をクリックした後に、confgファイルが開かれますので、下記の内容を貼り付けます。
貼り付けが完了したらCtrl + Sで保存をします。
※"~/.ssh/mykey.txt"はインスタンス用秘密鍵のファイルパスです。
※".ssh\ackey.txt "アクセスサーバー用秘密鍵のファイルパスです。
※インスタンス再起動時は、IPアドレスが変更になりますのでご注意ください。
インスタンスのIPアドレスは、[GPUSOROBANコンパネ]の[インスタンス管理]、[インスタンス一覧]からコピーします。
Ctrl + Shift + Pでコマンドパレットを表示し、検索窓に"reload window"を入力すると、「Developer:Reload Window」が表示されるので、これをクリックしてリロードします。
サイドバーから「リモートエクスプローラーのアイコン」をクリックし、「SSHのタブ」をクリックすると、Configに設定したインスタンスのHost名が表示されます。(本記事ではnvd5-1l22ulのHost名が表示されています。)
Host名の右の矢印ボタンをクリックするとインスタンスへの接続が開始されます。
コマンドパレットに表示されるLinuxをクリックします。
ウインドウの下部にインスタンス名が表示されたら、インスタンスへの接続が完了です。
Jupyter Labを使う場合
インスタンスでJupyter Labを使う場合は、Configファイルに"LocalForward 8888 localhost:8888"を追記します。
※"~/.ssh/mykey.txt"はインスタンス用秘密鍵のファイルパスです。
※".ssh\ackey.txt "アクセスサーバー用秘密鍵のファイルパスです。
※インスタンス再起動時は、IPアドレスが変更になりますのでご注意ください。
インスタンス接続後にJupyter Labを使用するには、インスタンスにJupyter Labをインストールするか、Jupyter Labをプリインストールしたインスタンスを選択する必要があります。
詳しくはJupyter Labのインストール(Ubuntu)の記事を御覧ください。
Stable Diffusion WebUIを使う場合
インスタンスでStable Diffusion WebUIを使う場合は、Configファイルに" LocalForward 7860 localhost:7860 "を追記します。
※"~/.ssh/mykey.txt"はインスタンス用秘密鍵のファイルパスです。
※".ssh\ackey.txt "アクセスサーバー用秘密鍵のファイルパスです。
※インスタンス再起動時は、IPアドレスが変更になりますのでご注意ください。
インスタンス接続後にStable Diffusion WebUIを使用するには、インスタンスにStable Diffusion WebUIをインストールする必要があります。 詳しくはStable Diffusion WebUIのインストール(Ubuntu)の記事を御覧ください。
インスタンスのファイル操作・ファイル転送
インスタンス内のディレクトリにアクセスするには、サイドバーの「Explorerアイコン」をクリックし、「Open Folder」のボタンをクリックします。
「コマンドパレット」からアクセスしたいインスタンス内のディレクトリを選択し、「OKボタン」をクリックします。
警告がポップアップ表示されますので、「Yes, I trust the authors」をクリックします。
選択したインスタンスのディレクトリを確認できました。
ファイルにカーソルをあわせて右クリックすると、ファイル操作の選択をすることができます。
Open:ファイルを開く
Copy:ファイルをコピーする
Download:ファイルを接続元PCにダウンロードする
Rename:ファイルの名前を変更する
Delete Permanently:ファイルを削除する
接続元PCのファイルを選択し、VScodeに表示されているインスタンスのディレクトリへ「ドラッグ&ドロップ」することで、ファイルをインスタンスへアップロードすることができます。
複数インスタンスの設定
インスタンスを複数作成し、利用する場合の設定について説明します。
まずconfigファイルを開きます。
Ctrl + Shift + Pでコマンドパレットを表示し、検索窓に"open ssh"を入力し、「Remote-SSH:Open SSH Configuration File」をクリックします。
コマンドパレットが表示された「C:\User\ユーザー名.ssh\config」をクリックし、configファイルを開きます。
configファイルにインスタンスの情報を追加します。
(本記事では、3つのインスタンス情報を追加しています)
※インスタンス再起動時は、IPアドレスが変更になりますのでご注意ください。
貼り付けが完了したらCtrl + Sで保存をします。
Ctrl + Shift + Pでコマンドパレットを表示し、検索窓に"reload window"を入力すると、「Developer:Reload Window」が表示されるので、これをクリックしてリロードします。
サイドバーから「リモートエクスプローラーのアイコン」をクリックすると、Configに設定した複数インスタンスのHost名が表示されます。
Host名の右の矢印ボタンをクリックするとインスタンスへの接続が開始されます。
複数ターミナルを開く方法
1つのターミナルでプログラムを実行中に、ログの確認など他のコマンドを実行したいときに、複数のターミナルを開いて実行することができます。
サイドバーから「Remote Explorer」をクリックし、接続するインスタンスの「ウインドウアイコン」をクリックすると新しいウインドウでターミナル開くことができます。
以下の例では、右側のターミナルでJupyterを起動し、左側のターミナルでnvidia-smiコマンドを実行して、GPUの状態を確認しています。
接続元PCがMacの場合
接続元PCがMaCの場合は、ProxyCommandの記述が異なりますので、ご注意ください。
「mykey.txt」はインスタンス用秘密鍵のファイル名です。
「ackey.txt」はアクセスサーバー秘密鍵のファイル名です。
※インスタンス再起動時は、IPアドレスが変更になりますのでご注意ください。
SSH接続の切断
SSH接続の切断をする場合は、画面左下の接続先を選択した後に「Close Remote Cnnection」を押下します。
VSCodeからインスタンスに接続する手順の説明は以上になります。
本記事では、GPUSOROBANのインスタンスを使用しました。
GPUSOROBANは高性能なGPUインスタンスが低コストで使えるクラウドサービスです。
サービスについて詳しく知りたい方は、GPUSOROBANの公式サイトを御覧ください。