12.8. DPF のトラブルシューティング
NVIDIA DPF Operator における DPU のプロビジョニング、ホステッドクラスターの準備状態、ネットワークに関する一般的な問題を診断および解決し、サポート用の診断ログを収集できます。これらの手順は、NVIDIA 公式のデバッグツールおよびガイドを補完するものです。
12.8.1. DPU のプロビジョニングが開始されない リンクのコピーリンクがクリップボードにコピーされました!
管理クラスターにワーカーノードを追加した直後に DPU のプロビジョニングが開始されない場合は、証明書署名要求 (CSR)、コントローラー Pod、Node Feature Discovery (NFD) ラベル、および DPF リソースオブジェクトが正しい状態であることを確認します。
- すべてのワーカー CSR が承認されていることを確認する
管理クラスターで CSR ステータスをリスト表示するには、次のコマンドを実行します。
$ oc get csrワーカーノードのすべての CSR が
Approvedステータスであることを確認します。- すべての DPF コントローラー Pod が実行されていることを確認する
DPF Operator Pod の状態を確認するには、次のコマンドを実行します。
$ oc get pod -n dpf-operator-systemすべての Pod が
Running状態であることを確認します。- ワーカーノードが NFD によって DPU プロビジョニング用にラベル付けされていることを確認する
ワーカーノードに
dpu-enabledラベルが存在することを確認するには、次のコマンドを実行します。$ oc get nodes -l feature.node.kubernetes.io/dpu-enabled=""出力には、NFD が DPU プロビジョニング用にラベル付けしたワーカーノードのリストが表示されます。以下に例を示します。
出力例
NAME STATUS ROLES AGE VERSION host-worker1 NotReady worker,worker-dpu 62s v1.36.3 host-worker2 NotReady worker,worker-dpu 66s v1.36.3- BFB オブジェクトのステータスを確認する
BlueField Bootstream File (BFB) イメージがダウンロードされ、準備が整っていることを確認するには、次のコマンドを実行します。
$ oc describe bfb -n dpf-operator-system bf-bundleダウンロードの進捗状況やエラーメッセージについては、
status.conditionsフィールドを確認してください。- BFB イメージの URL に到達できることを確認する
BFB のダウンロードが失敗する場合は、以下のコマンドを実行してイメージ URL に到達可能であることを確認します。
$BFB_URLはイメージ URL に置き換えてください。$ curl -I $BFB_URLレスポンスが
200 OKステータスコードを返すことを確認します。ダウンロードが失敗した場合は、イメージレジストリーへのネットワークの接続性を確認し、ファイアウォールまたはプロキシーによる制限をチェックするとともに、ノードに十分なディスク容量があることを確認します。- DPU プロビジョニングの進捗状況を監視する
以下のコマンドを実行して、DPU オブジェクトのプロビジョニングの進捗状況を監視します。
$ oc get dpu -n dpf-operator-system -w各 DPU が
PendingからProvisioningを経てReadyに進むまで待ちます。- ワーカーノードで DPU ハードウェアが検出されることを確認する
ワーカーノードでデバッグシェルを開きます。
$ oc debug node/<worker-node-name>デバッグシェル内で、以下のコマンドを実行して、BlueField デバイスが存在することを確認します。
sh-5.1# chroot /hostsh-5.1# lspci | grep -i mellanoxDPU がリストに表示されない場合は、PCIe スロットに正しく装着されていること、およびサーバーの BIOS で無効化されていないことを確認します。
- DPU ファームウェアとソフトウェアの互換性を確認する
デバッグシェル内で、以下のコマンドを実行して、DPU ファームウェアのバージョンを確認します。
sh-5.1# mlxfwmanager --queryDPU 上の BlueField ファームウェアと DOCA ソフトウェアのバージョンが、デプロイ済みの DPF Operator のバージョンと互換性があることを確認します。
DPUDeploymentオブジェクトのステータスを確認するDPUDeploymentオブジェクトを調べて、以下のリソースに関する情報を確認します。- BFB オブジェクトの状態
-
DPUServiceTemplateオブジェクトの状態 -
DPUServiceConfigurationオブジェクトの状態
以下のコマンドを実行して、
DPUDeploymentの完全なステータスを表示します。$ oc get dpudeployments -n dpf-operator-system dpudeployment -o yamlまたは、以下の
dpfctlコマンドを実行して、概要ビューを表示します。$ oc -n dpf-operator-system exec deploy/dpf-operator-controller-manager -- /dpfctl describe dpudeployments