Automation で VM 拡張機能ベースの Hybrid Runbook Worker の問題をトラブルシューティングする
この記事では、Azure Automation 拡張機能ベースの Hybrid Runbook Worker に関する問題のトラブルシューティングと解決に関する情報を提供します。 エージェント ベースのワーカーのトラブルシューティングについては、Automation でのエージェント ベースの Hybrid Runbook Worker の問題のトラブルシューティングに関するページを参照してください。 一般情報については、「Hybrid Runbook Worker overview (Hybrid Runbook Worker の概要)」をご覧ください。
一般的なチェックリスト
拡張機能ベースの Hybrid Runbook Worker に関する問題のトラブルシューティングに役立つ確認事項を次に示します。
OS がサポートされていることと、前提条件が満たされていることを確認します。 「前提条件」を参照してください。
システム割り当てマネージド ID が VM 上で有効になっているかどうかを確認します。 Azure Vm と Arc が有効になっている Azure マシンでは、システム割り当てマネージド ID が有効になっている必要があります。
拡張機能が適切な設定で有効になっているかどうかを確認します。 設定ファイルには適切な
AutomationAccountURL
が必要です。 Automation アカウントのプロパティ -AutomationHybridServiceUrl
を使用して、URL をクロスチェックします。- Windows の場合、設定ファイルは次で確認できます。
ヒント
次のパスの
*
を、インストールされている特定のバージョンに置き換えます (わかっている場合)。C:\Packages\Plugins\Microsoft.Azure.Automation.HybridWorker.HybridWorkerForWindows\*\RuntimeSettings
- Linux の場合、設定ファイルは次で確認できます。
/var/lib/waagent/Microsoft.Azure.Automation.HybridWorker.HybridWorkerForLinux/
ハイブリッド worker の拡張の状態と詳細な状態に表示されるエラー メッセージを確認します。 これには、問題を修正するためのエラー メッセージとそれぞれの推奨事項が含まれています。
VM でトラブルシューティング ツールを実行すると、出力ファイルが生成されます。 出力ファイルを開き、トラブルシューティング ツールによって特定されたエラーを確認します。
- Windows の場合、トラブルシューティング ツールは次にあります。
ヒント
次のパスの
*
を、インストールされている特定のバージョンに置き換えます (わかっている場合)。C:\Packages\Plugins\Microsoft.Azure.Automation.HybridWorker.HybridWorkerForWindows\*\bin\troubleshooter\TroubleShootWindowsExtension.ps1
- Linux の場合、トラブルシューティング ツールは次にあります。
ヒント
次のパスの
*
を、インストールされている特定のバージョンに置き換えます (わかっている場合)。/var/lib/waagent/Microsoft.Azure.Automation.HybridWorker.HybridWorkerForLinux-*/Troubleshooter/LinuxTroubleshooter.py
Linux マシンの場合、ハイブリッド worker 拡張機能によって
hweautomation
ユーザーが作成され、そのユーザーの下でハイブリッド worker が起動します。 ユーザーhweautomation
が正しいアクセス許可で設定されているかどうかを確認します。 Runbook がローカル リソースにアクセスしようとしている場合は、hweautomation
がローカル リソースに対する正しいアクセス許可を持っていることを確認します。ハイブリッド worker プロセスが実行されているかどうかを確認します。
- Windows の場合は、
Hybrid Worker Service
("HybridWorkerService") サービスを確認します。 - Linux の場合、
hwd
サービスを確認します。
- Windows の場合は、
ログの収集:
- Windows の場合は、次の場所にあるログ コレクター ツールを実行します。
ヒント
次のパスの
*
を、インストールされている特定のバージョンに置き換えます (わかっている場合)。C:\Packages\Plugins\Microsoft.Azure.Automation.HybridWorker.HybridWorkerForWindows\*\bin\troubleshooter\PullLogs.ps1
ログは次の場所にあります。
C:\HybridWorkerExtensionLogs
- Linux の場合、ログは次のフォルダーにあります。
および/var/log/azure/Microsoft.Azure.Automation.HybridWorker.HybridWorkerForLinux
/home/hweautomation
シナリオ: ユーザー アカウント制御 (UAC) が有効になっているサーバーでカスタム アカウントを使用すると、Runbook が Hybrid Runbook Worker で中断状態になる
問題点
ジョブが失敗し、Hybrid Runbook Worker で中断状態になります。 Microsoft-SMA イベント ログは Win32 Process Exited with code [2148734720]
を示します。Runbook が実行を試行するときに記録されるアプリケーション ログ内の対応するエラーは .NET Runtime version : 4.0.30319.0
で、アプリケーションが開始されなかったことが示されます。
原因
システムで UAC/LUA が有効になっている場合は、アクセス許可をグループ メンバーシップ経由ではなく直接付与する必要があります。ユーザーがアクセス許可を昇格する必要がある場合、ジョブは失敗し始めます。
解決方法
Hybrid Runbook Worker のカスタム ユーザーの場合は、次のフォルダーのアクセス許可を更新します。
Folder | アクセス許可 |
---|---|
C:\ProgramData\AzureConnectedMachineAgent\Tokens |
読み込み |
C:\Packages\Plugins\Microsoft.Azure.Automation.HybridWorker.HybridWorkerForWindows |
読み取りと実行 |
シナリオ: スケジュールされたジョブの開始時にハイブリッド worker が使用できなかったので、ジョブの開始に失敗しました
問題点
ジョブがハイブリッド worker で開始できず、次のエラーが表示されます。
スケジュールされたジョブの開始時にハイブリッド worker を使用できなかったので、開始に失敗しました。ハイブリッド worker は最後に mm/dd/yyyy でアクティブになりました。
原因
このエラーは、次の理由で発生する可能性があります:
- そのマシンは存在しません。
- マシンの電源が切れているので、アクセスできません。
- マシンにネットワーク接続の問題があります。
- Hybrid Runbook Worker 拡張機能がコンピューターからアンインストールされました。
解決方法
- マシンが存在し、Hybrid Runbook Worker 拡張機能がインストールされていることを確認します。 Hybrid Worker は正常であり、ハートビートを提供する必要があります。 このジョブを実行しようとした Hybrid Runbook Worker グループの Worker で Microsoft-SMA イベント ログを確認して、ネットワークの問題のトラブルシューティングを行います。
- Hybrid Worker からの ping の数を提供し、ping 関連の問題を確認するのに役立つ HybridWorkerPing メトリックを監視することもできます。
シナリオ: ジョブが Hybrid Worker のジョブ制限を超えたため中断されました
問題
ジョブが中断され、次のエラー メッセージが表示されます:
ジョブが Hybrid Worker のジョブ制限を超えたため、中断されました。 この問題を解決するには、Hybrid Worker グループに Hybrid Worker をさらに追加します。
原因
ジョブは、次のいずれかの理由により中断される可能性があります:
- グループ内のアクティブな各ハイブリッド worker は、30 秒ごとにジョブをポーリングして、使用可能なジョブがあるかどうかを確認します。 Worker は、先着順でジョブを選択します。 ジョブがプッシュされたタイミングに応じて、Hybrid Worker グループ内の Hybrid Worker が最初に Automation サービスに ping を実行します。 通常、1 つのハイブリッド worker で取得できるジョブは、ping ごと (つまり、30秒ごと) に 4 つです。 ジョブのプッシュ率が 30 秒あたり 4 より高く、他の Worker がジョブを取得しなかった場合、ジョブが中断される可能性があります。
- Hybrid Worker は、30 秒ごとに予想どおりにポーリングされない場合があります。 これは、worker が正常でない場合、またはネットワークの問題がある場合に発生する可能性があります。
解決方法
- Hybrid Worker のジョブ制限が 30 秒あたり 4 つのジョブを超える場合は、Hybrid Worker グループにさらに Hybrid Worker を追加して、高可用性と負荷分散を実現できます。 また、30 秒あたり 4 つのジョブの制限を超えないようにジョブをスケジュールすることもできます。 ジョブ キューの処理時間は、Hybrid Worker のハードウェア プロファイルと負荷によって異なります。 Hybrid Worker が正常であり、ハートビートを提供していることを確認します。
- このジョブを実行しようとした Hybrid Runbook Worker グループの Worker で Microsoft-SMA イベント ログを確認して、ネットワークの問題のトラブルシューティングを行います。
- Hybrid Worker からの ping の数を提供する HybridWorkerPing メトリックを監視することもでき、ping 関連の問題を確認するのに役立ちます。
シナリオ: Hybrid Worker のデプロイが失敗し、Private Link エラーが発生する
問題
拡張機能ベースの Hybrid Runbook Worker を VM にデプロイしていて、「プライベート リンクの認証に失敗しました」というエラーで失敗しました。
原因
VM の仮想ネットワークは、Azure Automation アカウント、、または のプライベート エンドポイントとは異なるか、接続されていません。
解決方法
Azure Automation アカウントのプライベート エンドポイントが、VM が接続されているのと同じ Virtual Network に接続されていることを確認します。 「ネットワークに基づく計画」で説明されている手順に従って、プライベート エンドポイントに接続します。 また、パブリック ネットワーク アクセス フラグを設定して、すべてのパブリック構成を拒否し、プライベート エンドポイント経由の接続のみを許可するように Automation アカウントを構成します。 プライベート エンドポイントの DNS 設定を構成する方法の詳細については、「DNS 構成」を参照してください
シナリオ: 指定された Hybrid Worker グループが存在しない場合、Hybrid Worker のデプロイが失敗する
問題
拡張機能ベースの Hybrid Runbook Worker を VM にデプロイしていて、「指定したアカウント/グループが存在しません」というエラーで失敗しました。
原因
Hybrid Worker をデプロイする Hybrid Runbook Worker グループは既に削除されています。
解決方法
Hybrid Runbook Worker グループを作成し、そのグループにハイブリッド Worker として VM を追加します。 Azure portal を使用して、「Hybrid Runbook Worker グループを作成する」で説明されている手順に従います。
シナリオ: VM でシステム割り当てマネージド ID が有効になっていない場合、Hybrid Worker のデプロイが失敗する
問題
拡張機能ベースの Hybrid Runbook Worker を VM にデプロイしていて、次のエラーで失敗します。
Azure 以外の VM の IMDS ID エンドポイントを取得できません。 Azure 接続マシン エージェントがインストールされ、システム割り当て ID が有効になっていることを確認します。
原因
拡張機能ベースの Hybrid Worker は、Arc 接続マシン エージェントがインストールされていない Azure 以外の VM にデプロイしています。
解決方法
Azure 以外のマシンでは、拡張機能ベースの Hybrid Runbook worker としてデプロイする前に、Arc 接続マシン エージェントがインストールされている必要があります。 AzureConnectedMachineAgent
をインストールするには、Arc 対応サーバーの場合は Azure portal からハイブリッド マシンを Azure に接続する方法の記事、Arc 対応 VMware VM の場合は VMware 仮想マシン Azure Arc の管理によるゲスト管理の有効化に関する記事を参照してください。
シナリオ: システム割り当て ID が有効になっていないため、Hybrid Worker のデプロイが失敗する
問題
拡張機能ベースの Hybrid Runbook Worker を VM にデプロイしていて、「承認トークンが無効です」というエラーで失敗します。
原因
VM のユーザー割り当てマネージド ID は有効ですが、システム割り当てマネージド ID は有効になっていません。
解決方法
次の手順に従います。
- VM でシステム割り当てマネージド ID を有効にします。
- VM にインストールされている Hybrid Worker 拡張機能を削除します。
- VM にハイブリッド worker 拡張機能を再インストールします。
シナリオ: Windows VM での Hybrid Worker 拡張機能のインストール プロセスが停止する
問題
ポータルから Windows VM に Hybrid Worker 拡張機能をインストールしましたが、プロセスが正常に完了したことを示す通知は表示されません。
原因
インストール プロセスが停止することがあります。
解決方法
次に示す手順に従って、Hybrid Worker 拡張機能をもう一度インストールします。
Powershell コンソールを開きます。
HKLM:\Software\Microsoft\Azure\HybridWorker
が存在する場合、レジストリ キーを削除します。次は、レジストリ キーとその下のサブキーと値を削除する PowerShell コードです。
Get-Item HKLM:\Software\Microsoft\Azure\HybridWorker | Remove-Item -Recurse
HKLM:\Software\Microsoft\HybridRunbookWorkerV2
が存在する場合、レジストリ キーを削除します。次は、レジストリ キーとその下のサブキーと値を削除する PowerShell コードです。
Get-Item HKLM:\Software\Microsoft\HybridRunbookWorkerV2 | Remove-Item -Recurse
ハイブリッド worker 拡張機能のインストール フォルダーに移動します。
ヒント
次のコマンドの
*
を、インストールされている特定のバージョンに置き換えます (わかっている場合)。cd "C:\Packages\Plugins\Microsoft.Azure.Automation.HybridWorker.HybridWorkerForWindows\*"
次で、ハイブリッド worker 拡張機能をインストールします。
.\bin\install.ps1
次で、ハイブリッド worker 拡張機能を有効にします。
.\bin\enable.ps1
シナリオ: Windows VM での Hybrid Worker 拡張機能のアンインストール プロセスが停止する
問題
ポータルから Windows VM に Hybrid Worker 拡張機能をインストールしましたが、プロセスが正常に完了したことを示す通知は表示されません。
原因
アンインストール プロセスが停止することがあります。
解決方法
Powershell コンソールを開きます。
ハイブリッド worker 拡張機能のインストール フォルダーに移動します。
ヒント
次のコマンドの
*
を、インストールされている特定のバージョンに置き換えます (わかっている場合)。cd "C:\Packages\Plugins\Microsoft.Azure.Automation.HybridWorker.HybridWorkerForWindows\*"
次で、ハイブリッド worker 拡張機能を無効にします。
.\bin\disable.cmd
次で、ハイブリッド worker 拡張機能をアンインストールします。
.\bin\uninstall.ps1
HKLM:\Software\Microsoft\Azure\HybridWorker
が存在する場合、レジストリ キーを削除します。次は、レジストリ キーとその下のサブキーと値を削除する PowerShell コードです。
Get-Item HKLM:\Software\Microsoft\Azure\HybridWorker | Remove-Item -Recurse
HKLM:\Software\Microsoft\HybridRunbookWorkerV2
が存在する場合、レジストリ キーを削除します。次は、レジストリ キーとその下のサブキーと値を削除する PowerShell コードです。
Get-Item HKLM:\Software\Microsoft\HybridRunbookWorkerV2 | Remove-Item -Recurse
シナリオ: Linux VM での Hybrid Worker 拡張機能のインストール プロセスが停止する
問題
ポータルから Linux VM に Hybrid Worker 拡張機能をインストールしましたが、プロセスが正常に完了したことを示す通知は表示されません。
原因
アンインストール プロセスが停止することがあります。
解決方法
state
フォルダーを削除します。rm -r /home/hweautomation/state
ハイブリッド worker 拡張機能のインストール フォルダーに移動します。
ヒント
次のコマンドの
*
を、インストールされている特定のバージョンに置き換えます (わかっている場合)。cd /var/lib/waagent/Microsoft.Azure.Automation.HybridWorker.HybridWorkerForLinux-*/
次で、mrseq ファイルを削除します。
rm mrseq
次で、ハイブリッド worker 拡張機能をインストールします。
./extension_shim.sh -c ./HWExtensionHandlers.py -i
次で、ハイブリッド worker 拡張機能を有効にします。
./extension_shim.sh -c ./HWExtensionHandlers.py -e
シナリオ: Linux VM での Hybrid Worker 拡張機能のアンインストール プロセスが停止する
問題
ポータルから Linux VM に Hybrid Worker 拡張機能をアンインストールしましたが、プロセスが正常に完了したことを示す通知は表示されません。
原因
アンインストール プロセスが停止することがあります。
解決方法
次に示す手順に従って、Hybrid Worker 拡張機能を完全にアンインストールします。
- ハイブリッド worker 拡張機能のインストール フォルダーに移動します。
ヒント
次のコマンドの
*
を、インストールされている特定のバージョンに置き換えます (わかっている場合)。cd /var/lib/waagent/Microsoft.Azure.Automation.HybridWorker.HybridWorkerForLinux-*/
- 次で、ハイブリッド worker 拡張機能を無効にします。
./extension_shim.sh -c ./HWExtensionHandlers.py -d
- 次で、ハイブリッド worker 拡張機能をアンインストールします。
./extension_shim.sh -c ./HWExtensionHandlers.py -u
シナリオ: Runbook の実行が失敗する
問題
Runbook の実行が失敗し、次のエラー メッセージを受け取ります。
The job action 'Activate' cannot be run, because the process stopped unexpectedly. The job action was attempted three times.
Runbook は 3 回実行を試みると、短時間中断されます。 Runbook の完了を妨げる可能性がある状況が存在します。 関連するエラー メッセージに追加情報が含まれていない場合があります。
原因
以下の原因が考えられます。
- Runbook がローカル リソースで認証できない。
- Hybrid Worker がプロキシまたはファイアウォールの内側にある。
- Hybrid Runbook Worker を実行するように構成されているコンピューターが、ハードウェアの最小要件を満たしていない。
解決方法
コンピューターがポート 443 で .azure-automation.net に発信アクセスできることを確認します。
Hybrid Runbook Worker を実行するコンピューターは、この機能をホストするようにワーカーを構成する前に、ハードウェアの最小要件を満たしている必要があります。 Runbook とそれらが使用するバックグラウンド プロセスによってシステムが過剰に使用され、それが原因で Runbook ジョブの遅延やタイムアウトが発生する可能性があります。
Hybrid Runbook Worker の機能を実行するコンピューターが最小ハードウェア要件を満たしていることを確認します。 満たしている場合は、CPU とメモリの使用を監視して、Hybrid Runbook Worker プロセスのパフォーマンスと Windows の間の相関関係を調べます。 メモリまたは CPU の負荷は、リソースのアップグレードが必要であることを示している可能性があります。 また、最小要件をサポートする別のコンピューティング リソースを選択し、ワークロードの需要によって増加が必要であることが示された時点でスケーリングすることもできます。
Microsoft-SMA のイベント ログで、Win32 Process Exited with code [4294967295]
という説明のある、対応するイベントを調べます。 このエラーの原因は、Runbook で認証が構成されていないか、または Hybrid Runbook Worker グループの実行資格情報が指定されていないことです。 「Hybrid Runbook Worker での Runbook の実行」で Runbook のアクセス許可を調べ直して、Runbook の認証を正しく構成したことを確認します。
シナリオ: Hybrid Runbook Worker の証明書ストアに証明書が見つかりませんでした
問題
Hybrid Runbook Worker で実行される Runbook が次のエラー メッセージで失敗します。
Connect-AzAccount : No certificate was found in the certificate store with thumbprint 0000000000000000000000000000000000000000
At line:3 char:1
+ Connect-AzAccount -ServicePrincipal -Tenant $Conn.TenantID -Appl ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : CloseError: (:) [Connect-AzAccount],ArgumentException
+ FullyQualifiedErrorId : Microsoft.Azure.Commands.Profile.ConnectAzAccountCommand
原因
このエラーは、Hybrid Runbook Worker 上で実行される Runbook 内で実行アカウントを使用しようとしたが、その実行アカウントの証明書が存在しない場合に発生します。 Hybrid Runbook Workers には、既定では証明書資産はローカルにありません。 実行アカウントでは、この資産が適切に動作していることが要求されます。
解決方法
お使いの Hybrid Runbook Worker が Azure VM である場合は、代わりに、マネージド ID による Runbook 認証を使用できます。 このシナリオでは、実行アカウントの代わりに Azure VM のマネージド ID を使用して Azure リソースへの認証を可能にすることで、認証を簡素化します。 Hybrid Runbook Worker がオンプレミスのコンピューターである場合は、実行アカウント証明書をコンピューターにインストールする必要があります。 証明書をインストールする方法については、「Hybrid Runbook Worker での Runbook の実行」で、PowerShell Runbook の Export-RunAsCertificateToHybridWorker を実行するための手順を参照してください。
シナリオ: ハイブリッド worker グループから Microsoft Azure VM が自動的に削除される
問題
ワーカー マシンが長時間オフになっている場合、Hybrid Runbook Worker または VM が表示されません。
原因
Hybrid Runbook Worker マシンで、Azure Automation に対する ping が 30 日以上行われていません。 その結果、Automation によって Hybrid Runbook Worker グループまたはシステム ワーカー グループが削除されました。
解決方法
ワーカー マシンを起動し、Azure Automation に再登録します。 Runbook 環境をインストールして Azure Automation に接続する方法の手順については、「Windows Hybrid Runbook Worker をデプロイする」を参照してください。
次のステップ
発生している問題がここで見つからないか、またはその問題を解決できない場合は、次のいずれかのチャネルで追加のサポートを受けてみてください。
- Azure フォーラムを通じて Azure エキスパートから回答を得ることができます。
- @AzureSupport (カスタマー エクスペリエンスを向上させるための Microsoft Azure の公式アカウント) に連絡する。 Azure サポートにより、Azure コミュニティの回答、サポート、エキスパートと結び付けられます。
- Azure サポート インシデントを送信する。 Azure サポートのサイトに移動して、[サポートの要求] を選択します。