Azure Data Science Virtual Machine に関する問題のトラブルシューティング
この記事では、Azure Data Science Virtual Machine を使用するときに発生する可能性があるエラーまたはエラーを見つけて修正する方法について説明します。
Ubuntu
NVIDIA A100 GPU チップの GPU を修正する - Azure NDasrv4 シリーズ
ND A100 v4 シリーズの仮想マシンは、Azure GPU ファミリの主要な追加機能です。 これは、ハイエンドのディープ ラーニング トレーニングを処理し、HPC ワークロードを密に結合、スケールアップ、スケールアウトします。
独自のアーキテクチャのため、TensorFlow または PyTorch フレームワークを使用した GPU アクセラレーションの恩恵を受けるために、需要の高いワークロード用に異なるセットアップが必要です。
ND A100 マシン GPU のすぐに使用するサポートを構築しています。 一方、NVIDIA Fabric Manager を追加し、ドライバーを更新すると、GPU で Ubuntu を処理できます。 ターミナルで次の手順に従います。
NVIDIA リポジトリを追加してドライバーをインストールまたは更新する - 詳細な手順については、このリソース 参照してください
[省略可能]そのリポジトリから CUDA ドライバーを更新することもできます
NVIDIA Fabric Manager ドライバーをインストールします。
sudo apt-get install cuda-drivers-460 sudo apt-get install cuda-drivers-fabricmanager-460
VM を再起動する (ドライバーを準備するため)
新しくインストールされた NVIDIA Fabric Manager サービスを有効にして起動します。
sudo systemctl enable nvidia-fabricmanager sudo systemctl start nvidia-fabricmanager
GPU とドライバーが動作することを確認するには、次のコード サンプルを実行します。
systemctl status nvidia-fabricmanager.service
このスクリーンショットは、Fabric Manager サービスが実行されているのを示しています。
デスクトップ環境への接続が失敗する
SSH ターミナル経由で DSVM に接続できるが、x2go 経由で接続できない場合、x2go のセッションの種類の設定が間違っている可能性があります。 DSVM デスクトップ環境に接続するには、セッションの種類を x2go/session preferences/session XFCE に設定します。 その他のデスクトップ環境は現在サポートされていません。
x2go を使用して DSVM に接続するとフォントが正しく表示されない
x2go に接続すると、特定の x2go セッション設定によってフォントの一部が間違って見える可能性があります。 DSVM に接続する前に、セッション設定ダイアログの [入力/出力] タブの [表示 DPI の設定] チェック ボックスをオフにします。
不明なパスワードの入力を求めるメッセージ
DSVM 認証の種類 設定を SSH 公開キーに設定できます。 これは、パスワード認証ではなく推奨されます。 SSH 公開キーを使用している場合、パスワードは受け取りません。 ただし、一部のシナリオでは、一部のアプリケーションで引き続きパスワードが要求されます。 sudo passwd <user_name>
を実行して、特定のユーザーの新しいパスワードを作成します。 sudo passwd
を使用すると、ルート ユーザーの新しいパスワードを作成できます。
このコマンドを実行しても SSH 構成は変更されません。許可されるサインイン メカニズムは変わりません。
sudo コマンドを実行するときにパスワードの入力を求められる
Ubuntu マシンで sudo
コマンドを実行すると、ログインユーザーであることを確認するためにパスワードを繰り返し入力する要求が表示されることがあります。 これは、既定の Ubuntu 動作として想定されます。 ただし、場合によっては、認証を繰り返す必要がなく、むしろ迷惑な場合があります。
ほとんどの場合、再認証を無効にするには、ターミナルで次のコマンドを実行します。
echo -e "\n$USER ALL=(ALL) NOPASSWD: ALL\n" | sudo tee -a /etc/sudoers
ターミナルを再起動すると、sudo は別のサインインを要求せず、セッション サインインからの認証は十分と見なされます。
docker を非ルート ユーザーとして使用できない
docker を非ルート ユーザーとして使用するには、ユーザーに docker グループのメンバーシップが必要です。 getent group docker
コマンドは、そのグループに属するユーザーの一覧を返します。 ユーザーを Docker グループに追加するには、sudo usermod -aG docker $USER
を実行します。
Docker コンテナーがネットワーク経由で外部と対話できない
既定では、Docker は、いわゆる "ブリッジ ネットワーク": 172.17.0.0/16
に新しいコンテナーを追加します。 そのブリッジ ネットワークのサブネットは、DSVM のサブネット、またはサブスクリプションに存在する別のプライベート サブネットと重複する可能性があります。 この場合、ホストとコンテナーの間のネットワーク通信は不可能です。 さらに、コンテナー内で実行される Web アプリケーションにアクセスすることはできないため、コンテナーは apt からパッケージを更新できません。
この問題を解決するには、サブスクリプションの他のネットワークと重複しないブリッジ ネットワークの IP アドレス空間を使用するように Docker を再構成する必要があります。 たとえば、〘〘
"default-address-pools": [
{
"base": "10.255.248.0/21",
"size": 21
}
]
を /etc/docker/daemon.json
JSON ファイルに割り当てると、Docker はブリッジ ネットワークに別のサブネットを割り当てます。 たとえば、 sudo nano /etc/docker/daemon.json
を実行して、sudo を使用してファイルを編集する必要があります。
変更後、 service docker restart
を実行して Docker サービスを再起動します。 変更が有効になったかどうかを判断するには、 docker network inspect bridge
実行できます。 IPAM の下の値。Config.Subnet は、前に指定したアドレス プールに対応している必要があります。
Docker コンテナーで GPU を使用できない
DSVM にインストールされている Docker リソースは、既定で GPU をサポートします。 ただし、そのサポートには特定の前提条件が必要です。
- DSVM の VM サイズには、少なくとも 1 つの GPU が含まれている必要があります。
docker run
を使用して Docker コンテナーを起動する場合は、 gpus パラメーター (たとえば、--gpus all
) を追加する必要があります。- NVIDIA A100 GPU を含む VM サイズには、他のソフトウェア パッケージ (特に NVIDIA Fabric Manager がインストールされている必要があります。 これらのパッケージは、イメージにプレインストールされていない可能性があります。
Windows
仮想マシンの第 2 世代 (Gen 2) が動作していない
仮想マシン第 2 世代 (Gen 2) に基づいてデータ サイエンス VM を作成しようとすると、失敗します。
現時点では、Windows 2019 Server に基づくデータ サイエンス仮想マシン (DSVM) のイメージを保持し、提供します(第 1 世代 DSVM のみ)。 Gen 2 はまだサポートされていませんが、近い将来サポートする予定です。
SQL Server へのアクセス
プレインストールされている SQL Server インスタンスに接続しようとすると、"ログインに失敗しました" エラーが発生する可能性があります。 SQL Server インスタンスに正常に接続するには、接続するプログラム (SQL Server Management Studio (SSMS) など) を管理者モードで実行する必要があります。 DSVM の既定の動作では、管理者のみが接続できるため、管理者モードが必要です。
Hyper-V が機能しない
想定どおりの動作では、Hyper-V は最初は Windows では動作しません。 パフォーマンスを最大限に高めるには、一部のサービスを無効にしました。 Hyper-V を有効化するには、次の手順に従います。
- Windows DSVM で検索バーを開きます
- 「サービス」と入力します
- すべての Hyper-V サービスを "手動" に設定します
- "Hyper-V 仮想マシンの管理" を "自動" に設定します
最後の画面は、次のようになります。