VPSでのマルチGPUセットアップにおけるNVLinkの設定方法

人気
サーバー設定をレベルアップ! AVAを適用 そして、開始する 15% 割引
プロモーションを使用:

VPSでのマルチGPUセットアップにおけるNVLinkの設定

NVLinkは、NVIDIAの高帯域幅GPUインターコネクトであり、PCIeの制限をはるかに超えて迅速なメモリ共有とデータ転送を可能にすることで、マルチGPUワークロードを革新します。データサイエンティスト、MLエンジニア、またはHPCユーザーにとって、NVLinkは深層学習モデルのトレーニングや大規模シミュレーションなどのタスクを加速できます。たとえば、デュアルA100 GPUを使用してGPUメモリをプールすることで、大規模な言語モデルをより早くトレーニングすることができます。しかし、仮想化環境でのNVLinkの設定は複雑で、特定のハードウェアとセットアップが必要です。このガイドでは、NVLink、そのVPSにおける制限、および最適なパフォーマンスのための設定方法について説明します。

制限事項と注意点

  • すべてのVPSプロバイダーがNVLinkセットアップをサポートしているわけではありません。

  • NVLinkが機能するのは、 ベアメタルベースのVPSまたは専用GPU仮想マシンで、直接パススルーが必要です。

  • Dockerのようなコンテナ化された環境では、ホストで直接実行しない限りNVLinkはサポートされません。

NVLinkとは何ですか?

NVLinkは、2つ以上の互換性のあるNVIDIA GPUが以下を行うことを可能にします:

  • 大規模データセットのためにGPU間でメモリを共有する

  • 合計600 GB/sの帯域幅でデータを交換する

  • CPUの関与なしでより迅速なマルチGPUトレーニングを実行する

サポートされているGPUには以下が含まれます:

  • NVIDIA A100、V100、RTX 3090、4090、A6000など。

  • 通常は物理的なNVLinkブリッジが必要です。

VPSにおけるNVLink:前提条件

VPSでNVLinkを設定する前に、以下を確認してください:

ホストハードウェア

  • 物理サーバーには以下が必要です:

    • 少なくとも2つのNVLink互換GPU

    • NVLinkブリッジがインストールされていること

    • NVLinkをサポートするBIOSおよびファームウェア

  • 一般的な互換性のあるセットアップには、NVLinkブリッジを使用したデュアルA100またはRTX 3090が含まれます。

VPSの設定

  • VPSは、以下のようなGPUパススルーをサポートするハイパーバイザー上にプロビジョニングされる必要があります:

    • KVM/QEMUとVFIO(PCIパススルー)

    • VMware ESXiとDirectPath I/O

    • Proxmox VEとGPUパススルー

⚠️ 注意:NVLinkは仮想化デバイス間では機能しません両方のGPUが同じVMに完全なPCIeデバイスとしてパススルーされる必要があります。

ステップバイステップ:VPSでのNVLinkの設定方法

ステップ1:GPUのパススルーを確認する

ホストは両方の物理GPUを直接VPSにパススルーする必要があります。

KVM/QEMUとVFIOの場合:

# vfio-pciを介して2つのGPUを割り当てる例
echo "vendor_id device_id" > /sys/bus/pci/devices/0000:65:00.0/driver/unbind
echo "vendor_id device_id" > /sys/bus/pci/devices/0000:66:00.0/driver/unbind
echo "vendor_id device_id" > /sys/bus/pci/drivers/vfio-pci/new_id

両方のGPUをパススルーするためにlibvirt またはqemu のXMLを更新します。

ステップ2:NVIDIAドライバーをインストールする

VPS(ゲストOS)内で、最新のNVIDIAドライバーをインストールします:

sudo apt update
sudo apt install -y nvidia-driver-535

インストール後に再起動します。

ステップ3:NVLinkトポロジーを確認する

ゲストOS内に入ったら:

nvidia-smi topo -m

次のように表示されるはずです:

GPU0GPU1CPUアフィニティ
GPU0XNV10-15
GPU1NV1X0-15

ここでNV1はGPU0とGPU1の間でNVLinkがアクティブであることを意味します。

ステップ4:ピアツーピアアクセスを有効にする(オプションですが推奨)

nvidia-smi p2p

ピアツーピアアクセスの両方が有効としてマークされていることを確認してください。

セキュリティに関する考慮事項

  • 隔離されたアクセス:フルGPUパススルーを使用する際は、VPSがオーバーサブスクリプションされていないこと、または他のユーザーと共存していないことを確認してください。

  • 共有メモリの漏洩なし:NVLinkは共有メモリ空間を作成します—信頼できる環境へのアクセスを制限してください。

  • /dev/nvidiaデバイスへのアクセスを監査する*。

NVLinkの問題のトラブルシューティング

 

症状考えられる原因修正
nvidia-smiにNVLinkが表示されないGPUが適切にブリッジされていないホストの電源を切り、物理NVLinkブリッジを再インストールします
1つのGPUのみが表示されるパススルーの誤設定VMのXML/デバイスパススルー設定を確認します
ピアツーピアが無効ドライバーの不一致またはBIOS設定ドライバーをアップグレードし、BIOSでNVLinkサポートを確認します
帯域幅が低いNVLinkレーンが過小利用されているnvidia-smi nvlink –statusを使用してレーンを確認します

 

NVLinkはGPU集約型ワークロードにとってゲームチェンジャーであり、適切に設定されていれば、仮想環境でも巨大なパフォーマンスの利点を提供します。直接GPUパススルーと慎重なセットアップを行うことで、VPS上でマルチGPUインターコネクトの力を活用し、要求の厳しいアプリケーションのための高性能コンピューティングノードに変えることができます。

Windowsサーバーにログインするためのリモートデスクトッププロトコル(RDP)の使用

リモートデスクトッププロトコル(RDP)は、ユーザーが安全なネットワーク接続を介してWindowsサーバーにリモートでアクセスし、管理することを可能にする強力で広く使用されているツールです。クラウドベースのインフラストラクチャを管理する場合や、専用サーバーを管理する場合、または単にWindows環境にリモートアクセスが必要な場合でも、RDPはサーバーとの完全なグラフィカルインタラクションのためのネイティブで効率的な方法を提供します。

🧩 リモートデスクトッププロトコルとは?

RDPは、Microsoftによって開発された独自のプロトコルで、別のコンピュータへのリモート接続を容易にします。これにより、計算やプロセスがサーバー上で行われる間、クライアントシステムにグラフィカルユーザーインターフェース(GUI)が表示されます。これにより、Windowsベースのシステムを管理するシステム管理者やIT専門家にとって理想的なツールとなります。

📋 RDPを使用するための前提条件

WindowsサーバーへのRDP接続を確立する前に、以下の条件を満たしていることを確認してください:

  • Windowsサーバーリモートデスクトップが有効であること

  • ✅ ローカルマシン(クライアント)にリモートデスクトップクライアントがインストールされていること(Windowsに標準搭載)

  • ✅ サーバーには静的パブリックIPまたはIPに解決されるドメイン名が必要

  • ✅ ファイアウォールおよび/またはセキュリティグループがTCPポート3389を許可していること

  • ✅ サーバーに管理者権限を持つユーザーアカウントがあること

WindowsサーバーでRDPを有効にする方法

サーバーへのRDPアクセスを許可するには:

  1. コンソールまたは初期アクセスパネルを介してサーバーにログインします。

  2. 強調表示されたサーバーマネージャーを開き、ローカルサーバーをクリックします。

  3. 右側のパネルでリモートデスクトップを見つけて、「無効」をクリックします。

  4. システムのプロパティ」ウィンドウで、次を選択します:

    • 「このコンピューターへのリモート接続を許可する」

    • 「リモートデスクトップを使用してネットワークレベル認証を実行しているコンピューターからの接続のみを許可する」のチェックを外して、互換性を広げます(オプション)。

  5. 適用」をクリックし、次に「OK」をクリックします。

⚠️ ファイアウォールルールを追加することを忘れないでください。ポート3389での受信TCPトラフィックを許可します。

リモートデスクトップを使用して接続する方法(Windowsクライアント)

  1. Win + Rを押し、mstscと入力してEnterを押します。これにより、リモートデスクトップ接続ツールが開きます。

  2. 「コンピューター」フィールドに、サーバーのIPアドレスまたはドメインを入力します。

  3. オプションを表示」をクリックして:

    • あなたのユーザー名を入力します

    • 必要に応じて資格情報を保存します

    • 表示、ローカルデバイス、およびクリップボード設定を構成します

  4. 接続」をクリックします

  5. プロンプトが表示されたら、あなたのパスワードを入力し、オプションで証明書の警告を受け入れます。

高度なヒントとベストプラクティス

🔐 1. 強力な認証を使用する

可能な限りデフォルトのAdministratorアカウントを使用しないでください。強力なパスワードを持つ名前付きユーザーアカウントを作成し、ファイアウォールまたはVPNを介してRDPアクセスを制限します。

🛡 2. NLAおよび2FAでRDPを保護する

  • ユーザーがセッションを作成する前に認証を要求するために、ネットワークレベル認証(NLA)を有効にします。

  • 追加のセキュリティのために、Duo SecurityやAzure MFAを使用したRD Gatewayなどのサードパーティツールを使用して二要素認証(2FA)を構成します。

🌐 3. IPアクセスを制限する

Windowsファイアウォールまたはクラウドプロバイダーのセキュリティグループ設定を使用して、RDPを介して接続できる特定のIPをホワイトリストに登録します。これにより、ブルートフォース攻撃を防ぐのに役立ちます。

🧰 4. RDPログと監査を有効にする

疑わしい活動を監視するために:

  • グループポリシーを介してログオン監査を有効にします。

  • イベントビューアー → Windowsログ → セキュリティ」でログを確認します。

📦 5. RDPセッションシャドウイングを使用する

企業環境では、セッションシャドウイングにより、管理者が他のユーザーのRDPセッションを切断せずに表示または制御できます。

一般的なRDPの問題のトラブルシューティング

問題原因解決策
接続できないポート3389がブロックされているファイアウォールを確認し、ポートを開きます
ブラックスクリーンGPUドライバーまたはセッションの問題ドライバーを更新するか、セッションを再起動します
「ネットワークエラー」IPまたはDNSの設定ミスサーバーのIPまたはドメインを確認します
RDPが切断されるアイドルタイムアウトまたはリソース制限グループポリシーでセッションタイムアウトを調整します

 

RDPは、Windowsサーバーをリモートで管理するためのシステム管理者のツールキットにおいて重要なツールであり、適切に構成され、ベストプラクティスで保護されている場合、信頼性が高く高性能なリモートアクセス体験を提供します。生産サーバーや開発環境を管理する際には、RDPを使用し保護する方法を理解することが、インフラストラクチャの制御とセキュリティを維持するための鍵となります。