NTT DATA TECH
🫛

使い捨てできるGPUクラウド Runpodを使おう!

に公開

前置き

はじめまして!株式会社NTTデータグループの技術革新統括本部AI技術部でSmart AI Agent™のエンジニアをしている岸川です。

今回は、GPUクラウドサービス「Runpod」について、実際に研究と仕事で活用してきた経験をもとに紹介します。「ちょっとGPU使いたいだけなのに...」という悩みを持つ方に向けて、Runpodの魅力と具体的な使い方を解説していきます!

はじめに

機械学習の実験や開発をしていると、こんな悩みに直面していませんか?

Google Colabユーザーの悩み

特に大学院生の方は、こんな経験があるのではないでしょうか。

  • Colab Proに課金しているけど、実行時間制限で長時間の学習が中断される...
  • もっと高性能なGPUを使いたいけど、さらに課金するのは躊躇する
  • 研究の締め切り前に限って、リソース制限が厳しくなる気がする...

クラウド初心者の壁

  • Azure・GCP(Google Cloud Platform)・AWS(Amazon Web Services)は高機能すぎて、ちょっとした実験には大げさな気がする
  • 設定が複雑で、GPU環境を立ち上げるまでに時間がかかりすぎる

社内システムの制約

  • 業務でGPU環境が必要だけど、申請・承認プロセスが煩雑に感じられる...
  • 試しに使いたいだけなのに、稟議を通すのに数週間かかる

ハードウェア購入の悩み

  • Kaggleコンペのためだけに30万円のGPU搭載PCを買うのは高すぎる
  • 技術書の実習でローカルLLMを動かしたいけど、自分のPCではスペック不足

私も研究室でこれらの問題に直面していました。研究室には共有GPUサーバーがなく、実験を回したいのに、手元の環境では不可能でした。かといって、大手クラウドは設定が複雑で、学習コストをかけるほどでもない...

そんなあなたにおすすめしたいサービスがあります!!それが「Runpod」です。

Runpodは「使いたい時に、使った分だけ払う」GPUクラウドサービスです。セットアップは10分、料金は時間単位、そして実験が終わったらすぐ削除。まさに「使い捨て」感覚で、高性能なGPU環境を手に入れることができます。

この記事では、実際に研究と仕事でRunpodを活用してきた経験をもとに、その魅力と具体的な使い方を解説します。

Runpodとは?

Runpodは、GPU特化型のクラウドコンピューティングサービスです。2022年3月にアメリカ・ニュージャージー州で創業され、わずか2年で、Intel CapitalやDell Technologies Capitalといった大手企業から総額2,200万ドル(約30億円)の資金調達に成功しており、急成長を遂げています。

Runpodの3つの特徴

1. 圧倒的な手軽さ
アカウント作成からGPU環境の起動まで、10分程度で完了します。複雑な設定やインフラ知識は不要で、Webブラウザだけで完結します。

2. 従量課金制
使った時間分だけの支払いで、月額固定費は不要です。実験が終わったらすぐに停止できるため、無駄なコストが発生しません。

3. 豊富なGPU選択肢
RTX 5090、H200など、用途に応じて様々なGPUを選択可能。最新の高性能GPUも気軽に試せます。

なぜRunpodなのか?

大手クラウド(AWS・GCP・Azure)と比較して、Runpodには以下のメリットがあります:

  • 学習コストが低い: 複雑なネットワーク設定やIAM管理が不要
  • 起動が速い: 数分でGPU環境が使える状態に
  • 機械学習特化: PyTorch、TensorFlow、JupyterLabなどが最初から用意されたテンプレート

この記事を読むとできるようになること

この記事を読み進めることで、以下のスキルが身につきます:

  • Runpodのアカウント作成とクレジット購入
  • 目的に合ったGPU・テンプレートの選択
  • Pod(GPU環境)の起動と停止
  • SSH接続の設定方法
  • VS CodeからRunpodへのリモート接続
  • JupyterLabでの実験環境構築

それでは、実際の画面を見ながら、Runpodの使い方を解説していきます!

Runpodを使ってみよう

それでは、実際にRunpodを使ってGPU環境を構築する手順を見ていきましょう。

ステップ1: アカウント作成

まず、Runpodの公式サイトにアクセスします。

https://www.Runpod.io/

rupodのスタートページ

「Get started」ボタンをクリックして、アカウント作成画面に進みます。

アカウント作成画面、メールアドレス入力

メールアドレスとパスワードを入力してアカウントを作成します。GoogleアカウントやGitHubアカウントでの登録も可能です。

ステップ2: 初期設定

ログインすると、チュートリアルのポップアップが表示されますが、この記事で詳しく説明するので、バツボタンで閉じてしまって大丈夫です。

バツボタンでポップアップのツアー削除

ステップ3: SSH鍵の設定

RunpodにVS Codeから接続するために、SSH鍵を設定します。

画面左のサイドパネルの一番下から「Settings」を選択し、「SSH Public Keys」のセクションに進みます。

sshキーを入れる場所の確認

SSH鍵をまだ持っていない場合は、ローカル環境で以下のコマンドを実行して作成します:

ssh-keygen -t ed25519 -C "your_email@example.com"

sshキーを作成

生成された公開鍵(~/.ssh/id_ed25519.pub)の内容をコピーして、Runpodの設定画面に貼り付けます。

cat ~/.ssh/id_ed25519.pub

sshキーを格納

ステップ4: クレジットの購入

Runpodは従量課金制なので、事前にクレジットを購入する必要があります。

画面左のサイドパネルの「Billing」ボタンをクリックします。

クレジット購入画面

最初は$10〜$20程度購入しておけば、十分試すことができます。クレジットカードやPayPalで支払いが可能です。

ステップ5: GPU Podの作成

いよいよGPU環境を作成します。左メニューから「Pods」を選択します。

5-1. GPU選択

まず、使用するGPUを選択します。

GPU選択

初めての方には、以下のGPUがおすすめです:

  • RTX 4090: コスパが良く、ほとんどの実験に十分な性能($0.6/時間程度)
  • RTX 6000 Ada: 業務用途で安定した性能が必要な場合
  • H100: 大規模モデルの学習や推論に

画面には各GPUの価格($/時間)と利用可能な数が表示されるので、予算と用途に合わせて選択しましょう。

5-2. Pod名の設定

分かりやすい名前を付けておくと、複数のPodを管理しやすくなります。

podの名前設定

5-3. テンプレート選択

Runpodには、すぐに使える環境が用意されたテンプレートが多数用意されています。

テンプレート選択

おすすめのテンプレート:

  • Runpod PyTorch: PyTorchとJupyterLabがプリインストールされた汎用的な機械学習環境
  • Ubuntu: クリーンなUbuntu環境。自分で環境を構築したい場合に
  • Runpod Stable Diffusion: Stable Diffusion向けに最適化された画像生成AI環境
  • ollama template: Ollamaがプリインストールされた、ローカルLLMの実行・実験用環境

今回は「Runpod PyTorch 2.1」を選択します。これには、PyTorch、CUDA、JupyterLabなどが最初から設定されています。

5-4. デプロイ

デプロイ前に、Instance Pricingを選択できます。

Instance Pricingの選択:

  • On-Demand(推奨): 使った分だけ支払う従量課金。中断されることなく、好きな時に起動・停止可能
  • Savings Plan(3ヶ月/6ヶ月/1年): 長期利用を前提に事前予約することで割引。継続的に使う予定がある場合にお得
  • Spot: 最も安価だが、需要が高まると強制終了される可能性がある。中断されても問題ない実験向け

初めて使う場合や、短期的な実験には「On-Demand」を選択することをおすすめします。

設定が完了したら、画面下部の「Deploy On-Demand」ボタンをクリックします。

デプロイボタン押下

デプロイが開始されると、以下のような待機画面が表示されます。

デプロイ待ち画面

通常、1〜3分程度で起動が完了します。

ステップ6: 起動完了

Podが正常に起動すると、以下のような画面が表示されます。

作成された画面

ここから、JupyterLabやSSH接続の情報にアクセスできます。

ステップ7: JupyterLabでの動作確認

まず、JupyterLabで動作確認してみましょう。「JupyterLab」ボタンをクリックします。

ブラウザで新しいタブが開き、見慣れたJupyterLabの画面が表示されます。PyTorchテンプレートを選択した場合、すでに機械学習に必要な環境が整っているため、すぐにコードを実行できます。

試しに入ったjupyter labの画面

VS Codeから接続する

JupyterLabも便利ですが、より本格的な開発にはVS Codeから接続する方法がおすすめです。

ステップ1: Remote Development拡張機能のインストール

VS Codeに「Remote Development」拡張機能をインストールします。

remote dev拡張機能の画像

ステップ2: SSH接続設定

VS Codeで設定ファイルを開きます。以下のいずれかの方法で開けます:

方法1: リモートエクスプローラーから
画面左側のアイコンから「リモートエクスプローラー」(パソコンのアイコン)を開き、「SSH」と書いてある部分の歯車マークをクリックして /Users/ユーザ名/.ssh/config を選択します。

方法2: コマンドパレットから
コマンドパレット(Ctrl+Shift+P / Cmd+Shift+P)を開き、「Remote-SSH: Open SSH Configuration File...」を選択します。

remote sshの設定開くところ

RunpodのPod詳細画面で「Connect」タブを開き、最下部の「Direct TCP Ports」に表示されているSSH接続情報を確認します。

画面には 213.173.110.70:35064 のような形式で表示されています。これは:

  • : の前(213.173.110.70)がIPアドレス(HostName)
  • : の後(35064)がポート番号(Port)

この情報を使って、設定ファイルに以下のように追加します:

Host <Runpod(任意の名前)>
    HostName <IPアドレス>
    User root
    Port <ポート番号>
    IdentityFile ~/.ssh/id_ed25519

設定ファイルを保存したら、以下のいずれかの方法で接続します:

方法1: リモートエクスプローラーから
「リモートエクスプローラー」の上部にある更新ボタン(リフレッシュアイコン)を押して設定を反映させます。表示されたホスト名の右側にある矢印アイコン(フォルダに矢印)をクリックしてSSH接続を開始します。

方法2: コマンドパレットから
コマンドパレット(Ctrl+Shift+P / Cmd+Shift+P)を開き、「Remote-SSH: Connect to Host...」を選択し、先ほど設定したホスト名(例:Runpod-myproject)を選択します。

configファイルの編集が完了し接続ボタンを押すところ

ステップ3: プラットフォームの選択

初回接続時は、リモートマシンのプラットフォームを聞かれるので「Linux」を選択します。

接続するマシンはlinuxと選択するところ

ステップ4: 接続の確認

初回接続時は、ホストの信頼性確認が表示されるので、ターミナルで「yes」と入力します。

ターミナルでyesと答える画面

ステップ5: 接続完了

接続が成功すると、VS CodeがRunpodのGPU環境に接続された状態になります。

Runpodにvscode接続できた画面

これで、ローカルで開発するのと同じ感覚で、高性能GPU環境を使った開発ができます。

動作確認

ターミナルを開いて、GPUが正しく認識されているか確認してみましょう。

nvidia-smi

nvidia-smiをした画面

GPUの情報が表示されれば成功です。また、Pythonのバージョンも確認しておきましょう。

python --version

python -vをした画面

これで、Runpodの基本的な使い方は完了です!

Podの停止と削除

実験が終わったら、必ずPodを停止または削除しましょう。起動したままにしておくと、使っていなくても課金が続きます。

停止(Stop)と削除(Terminate)の違い

  • Stop: Podを一時停止。Pod内のデータは保持されるが、わずかにストレージ料金が発生
  • Terminate: Podを完全に削除。Pod内のデータも消えるが、Pod稼働料金は完全に停止

課金の仕組み

Runpodの課金は、大きく分けて以下の通りです:

1. Pod稼働料金(従量課金)

  • Pod起動中の課金
  • StopまたはTerminateで課金停止
  • GPU種類によって時間単価が異なる

2. ストレージ料金

Pod作成時に、以下2種類のストレージが自動的に設定されます:

  • Container Volume(一時保存領域): 起動中のみ課金($0.10/GB/月)
  • Disk Volume(永続保存領域): 停止中も課金が続く($0.20/GB/月)

例:Disk Volumeを30GB確保している場合、停止中も約$0.008/時間の課金が発生します。

停止の手順

Pod一覧画面から、停止したいPodの「Stop」ボタンをクリックします。

Stopボタンを押す

停止状態のPodは、いつでも再開できます。ただし、停止中もわずかですがストレージの料金が発生するため、長期間使わない場合はTerminateすることをおすすめします。

削除の手順

完全に削除する場合は、「Terminate」ボタンをクリックします。

Terminateボタンを押す

確認ダイアログが表示されるので、内容を確認してから削除を実行してください。

おわりに

この記事では、Runpodの基本的な使い方から実践的な活用例まで紹介しました。

Runpodが特におすすめな人

  • 大学院生・研究者: 研究室にGPUがない、または共有サーバーが混雑している
  • 機械学習初学者: 高額なGPU PCを買う前に、様々なモデルを試したい
  • データサイエンティスト: 業務で一時的にGPU環境が必要
  • Kaggler: コンペ期間中だけ高性能環境を使いたい

Runpodの良い点・注意点

良い点:

  • セットアップが簡単で、すぐに使い始められる
  • 使った分だけの従量課金で、無駄なコストが発生しない
  • VS Codeとの連携で、ローカル開発と同じ感覚で使える
  • 豊富なGPU選択肢で、用途に合わせた最適な環境を選べる

注意点:

  • Podを停止し忘れると課金が続くため、使用後は必ず停止を
  • ストレージも課金対象なので、不要なデータは削除を
  • 人気のGPUは在庫切れの場合があるため、代替案も検討を

次のステップ

まずは少額($10程度)のクレジットを購入して、実際に試してみることをおすすめします。

  1. アカウント作成とSSH鍵の設定
  2. 安価なGPU(RTX 4090など)で基本操作を習得
  3. 実際のプロジェクトで活用

「ちょっとGPU使いたいだけなのに...」という悩みは、Runpodで解決できます。この記事が、皆さんの機械学習ライフをより快適にする一助となれば幸いです!

最後まで読んでいただき、ありがとうございました。

NTT DATA TECH
NTT DATA TECH
設定によりコメント欄が無効化されています