Azure Virtual Desktop でのセッション ホストの更新のトラブルシューティング
重要
Azure Virtual Desktop のセッション ホストの更新プログラムは現在プレビュー段階です。 このプレビューは、欠点を含む現状有姿で提供されるものであり、Microsoft が一般提供の Azure サービスに対して提供するサービス レベル アグリーメント (SLA) や限定的な保証の対象外となります。 制限付きプレビューに登録するには、次のフォームに入力してください: https://forms.office.com/r/ZziQRGR1Lz。
ベータ版、プレビュー版、または一般提供としてまだリリースされていない Azure の機能に適用される法律条項については、「Microsoft Azure プレビューの追加使用条件」を参照してください。
Azure Virtual Desktop でセッション ホストの更新プログラムを使用することで、セッション ホストの構成があるホスト プール内のセッション ホストの仮想マシン (VM) を簡単に更新できます。 この記事は、発生する可能性のあるいくつかの問題のトラブルシューティングに役立ちます。
ホスト プールの作成時にセッション ホストの構成の作成に失敗しました
セッション ホストの構成が作成されると、拡張検証中に構成に指定されたパラメーターがチェックされます。 指定されたパラメーターを使用してセッション ホストを正常に作成できないとサービスが判断した場合、検証が失敗する可能性があります。 Azure リソースはサブスクリプションに格納されるため、他のプロセスによって変更できます。セッション ホストの作成は、この検証チェックが完了した後でも、セッション ホストの構成を使用して失敗する可能性があります。
エラーの例を次に示します。
VM の可用性: VM SKU 名、リージョン、可用性ゾーン、サブスクリプションの組み合わせは使用できません。 結果として発生する可能性のあるエラーには、
VmSkuNotAvailableInRegion
、VmSkuNotAvailableInRegionDueToRestriction
、AvailabilityZoneNotAvailable
があります。 選択したリージョンとサブスクリプション クォータの VM サイズと可用性ゾーンの可用性を確認し、サポートされている組み合わせを提供する必要があります。 PowerShell コマンドレットGet-AzComputeResourceSku
を使用して、VM SKU とリージョンの特定の組み合わせに関する制限を特定します。パラメーターの互換性: VM SKU、ディスク、イメージ、仮想ネットワークの組み合わせには互換性がありません。 結果として発生する可能性のあるエラーには、
ComputeSkuIncompatibleWithImageHyperVGeneration
、ImageDiskTypeIncompatible
、VnetLocationIncompatible
があります。 Azure Virtual Desktop の前提条件を確認し、指定されたパラメーターがセッション ホストの作成の要件を満たしていることを確認します。
ホスト プールの作成時にセッション ホストの構成の作成に失敗した場合、Azure portal を使用してこのホスト プールのセッション ホストの構成を作成することはできません。 PowerShell を使用して、New-AzWvdSessionHostConfiguration
コマンドレットを使用してセッション ホスト構成を作成できます。 または、ホスト プールを削除して再作成することもできます。
エラー:SessionHostConfiguration が存在しません
PowerShell コマンドレットを使用しているときに、エラーError: SessionHostConfiguration が存在しないを取得した場合は、コマンドレットGet-AzWvdSessionHostConfiguration
を使用してセッション ホスト構成をNew-AzWvdSessionHostConfiguration
作成します。
失敗した更新
セッション ホストの更新を使用してセッション ホストを更新すると、個々のセッション ホストが更新に失敗する可能性があります。 この場合、セッション ホストの更新は、そのセッション ホストで更新のロールバックを試みます。 ロールバックの目的は、セッション ホストを強制的に使用できないようにして、ホスト プールの容量を減らすのではなく、このセッション ホストがセッション ホスト構成の以前のバージョンにロールバックされている場合でも、ホスト プール全体の容量を維持することです。 正常に更新されたホスト プール内の他のセッション ホストは、ロールバックされません。 更新を開始しなかったセッション ホストは更新されません。
セッション ホストの更新に失敗すると、セッション ホストの更新は、セッション ホストの現在のバッチの更新を完了し、更新を失敗としてマークします。 このシナリオでは、唯一のオプションは、更新を再試行するかキャンセルすることです。 更新を再試行すると、セッション ホストの更新プログラムによって、失敗したセッション ホストと、以前に試行されなかった残りのセッション ホストの更新が再試行されます。 既存のバッチ サイズが使用されます。
セッション ホストが正常にロールバックできない場合、ホスト セッションでは使用できず、容量が減ります。 セッション ホストは、ホスト プール内の他のセッション ホストと同じではなく、セッション ホスト構成と一致します。 新しい更新をスケジュールする前に、セッション ホストの更新が失敗した理由を調査し、問題を解決する必要があります。 新しい更新プログラムをスケジュールすると、セッション ホストの更新プログラムによって、失敗したセッション ホストを更新してすべてが一致するように試行されます。また、前回の更新の試行で開始されなかったセッション ホストもすべて更新されます。
更新は、次の状態で失敗する可能性があります。
状態 | 説明 |
---|---|
更新の開始に失敗しました | 更新フローが正しくありません。 たとえば、仮想マシン SKU と互換性のないイメージなどです。 更新を再試行することはできません。取り消して、新しい更新をスケジュールする必要があります。 |
更新に失敗しました | 進行中に更新に失敗しました。 更新を再試行すると、以前に停止したセッション ホストで続行します。 |
セッション ホストのロールバックに失敗しました | セッション ホストの更新に失敗した場合、セッション ホストの更新は、そのセッション ホストで更新のロールバックを試みます。 ロールバックが失敗し、更新を再試行すると、以前に停止したセッション ホストで続行されます。 |
更新の進行状況を監視する手順に従って、更新のエラーを取得できます。 Azure PowerShell を使用する場合、変数 $updateProgress
は、次のプロパティにエラーの詳細を含みます。
$updateProgress.PropertiesUpdateStatus
$updateProgress.UpdateProgressError
$updateProgress.UpdateProgressError.FaultText
問題を特定したら、更新を再試行するか、取り消して新しい更新プログラムをスケジュールすることができます。
更新プログラムの開始に失敗しました
セッション ホストの更新プログラムが開始されると、サービスは更新を正常に完了できるかどうかを検証します。 セッション ホストの更新プログラムが開始前に失敗した場合は、更新が終了し、セッション ホストの構成に変更を加えることができます。 Azure リソースはサブスクリプションに格納されるため、他のプロセスによって変更できます。セッション ホストの作成は、この検証チェックが完了した後でも、セッション ホストの構成を使用して失敗する可能性があります。
更新プログラムの開始を妨げるエラーの例を次に示します。
更新するセッション ホストがありません: セッション ホストの更新プログラムの一部として更新するセッション ホストがない場合、エラー
HostpoolHasNoSessionHosts
が返されます。 更新プログラムを開始する前にセッション ホストの構成を変更しなかった場合、このエラーが返されます。容量の問題: 検証では、仮想ネットワーク サブネットと VM コア クォータ内に十分な容量があるかどうかがチェックされます。 このチェックでは、更新中の容量は保証されません。セッション ホストの更新プログラムの外部で他のリソースを作成すると、容量制限に関連するエラーが更新中に発生する可能性があります。 バッチ サイズをサブスクリプションの残りのクォータ内になるように設定します。
現在のセッション ホストとのパラメーターの一貫性: セッション ホストの更新では、セッション ホストのリージョン、サブスクリプション、リソース グループ、またはドメイン参加の種類の変更はサポートされません。 セッション ホストの構成に含まれているこれらのフィールドのプロパティが、ホスト プール内のセッション ホストのプロパティとは異なる場合、更新は開始されません。 構成と矛盾するセッション ホストを削除する必要があります。
更新中のエラー
セッション ホストの更新は、最初のバッチ サイズが 1 で始まり、指定されたセッション ホスト構成によって正常なセッション ホストが生成されることを検証します。 最初の検証バッチ中に発生するエラーは、多くの場合、セッション ホスト構成内のパラメーターが原因であり、通常は更新を再試行しても解決されません。 検証バッチの後に発生するエラーは、多くの場合、断続的なものであり、更新を再試行することで解決できます。
更新中に発生する可能性があるエラーの例を次に示します。
VM の作成エラー: VM の作成は、Azure Virtual Desktop に固有ではないさまざまな理由 (サブスクリプション容量の枯渇や、提供されたイメージの問題など) で失敗する可能性があります。 提供されたエラー メッセージを確認して、適切な修復を決定する必要があります。 さらにサポートが必要な場合は、Azure サポートでサポート ケースを開きます。
エージェントのインストール、ドメイン参加、およびセッション ホストの正常性エラーまたはタイムアウト: 最初の検証バッチで発生するエージェント、ドメイン参加、およびその他のセッション ホストの正常性エラーは、多くの場合、Azure Virtual Desktop の展開とドメイン参加のエラーに対処するためのガイダンスをレビューし、イメージに PowerShell DSC 拡張機能がインストールされていないことを確認することで解決できます。 拡張機能がイメージにインストールされている場合は、イメージからフォルダー
C:\packages\plugin
を削除します。 エラーが断続的で、一部のセッション ホストが正常に更新され、他のセッション ホストではAgentRegistrationFailureGeneric
などのエラーが発生する場合は、多くの場合、更新を再試行することで問題を解決できます。リソースの変更とアクセスのエラー: 更新プログラムで影響を受けるリソースを変更すると、更新中にエラーが発生する可能性があります。 その結果として発生する可能性のあるエラーには、リソースとリソース グループの削除、アクセス許可の変更、電源状態の変更、ドレイン モードの変更などがあります。 さらに、Azure リソースがロックされているか、Azure ポリシーによって Azure Virtual Desktop サービスによるセッション ホストの変更が制限されている場合、更新は失敗します。 関連するエラーが発生した場合は、Azure アクティビティ ログを確認します。 さらにサポートが必要な場合は、Azure サポートでサポート ケースを開きます。
互換性のないパラメーターが New-AzWvdSessionHostConfiguration に渡されました
互換性のないパラメーターを New-AzWvdSessionHostConfiguration
PowerShell コマンドレットに渡している可能性があります。 たとえば、パラメーター DomainInfoJoinType
を AzureActiveDirectory として指定し、Active Directory ドメイン名を持つパラメーター ActiveDirectoryInfoDomainName
も指定した場合、ドメイン名は無視され、エラーは返されません。