この記事では、Azure Batch タスクが Running 状態でスタックする問題の原因といくつかの提案について説明します。
現象
Azure Batch タスクは 実行 状態で長時間停止しますが、エラーはありません。
もう一度実行すると、タスクの実行が正常かつ迅速に完了します。 同じノード内の他のタスクも適切に実行されます。
原因
タスクは実行中であり、エラーがないため、ほとんどの場合、アプリケーションの問題です。
推奨される手順
Azure Batch では、タスクによって実行されているアプリケーションは監視されないため、詳細なアプリケーション ログはありません。 タスクがスタックしている場所を理解するには、より詳細なアプリケーション ログを追加し、タスクの実行中に stdout に出力します。
通常のタスクとスタック タスクのログを比較して、ギャップを見つけます。
Azure Batch Insights を実装して、Batch ノードの CPU とメモリの使用状況を監視し、パフォーマンスの問題があるかどうかを特定します。
問題が発生したときにダンプ ファイルをキャプチャして、アプリケーションがスタックしている場所を分析します。
Batch では、タスクの stdout と stderr が自動的にキャプチャされ、タスク ディレクトリ内の stdout.txt ファイルと stderr.txt ファイルに書き込まれます。 タスクが停止したときに stderr または stdout がなく、アプリケーションの問題がないことを確認した場合は、Microsoft サポートにお問い合わせください。
Microsoft サポートに問い合わせる場合は、次の手順を実行する必要があります。
- ノードの Batch ノード エージェント ログ ファイル を収集し、Azure portal、Batch Explorer、または API を使用してアップロードします。
- 可能であれば、スタック タスクを実行する Batch ノードを保持します。
お問い合わせはこちらから
質問がある場合やヘルプが必要な場合は、サポート要求を作成するか、Azure コミュニティ サポートにお問い合わせください。 Azure フィードバック コミュニティに製品フィードバックを送信することもできます。