WEB問題集
Question#1(AZ-140)
Windows 10 Enterprise multi-sessionを実行するAzure Virtual Desktop(AVD)のホストプールがあります。
以下の要件を満たすように、ホストプールの自動スケーリング(Autoscale)を構成する必要があります。
新規ユーザーセッションを、実行中のすべてのセッションホストに分散させる。
同時実行ユーザーセッションが1ホストあたり30ユーザーを超えた場合、新しいセッションホストを自動的に起動する。
解決策に含めるべきものはどれですか?
正解:B
この問題を解くためのポイントは、「負荷分散アルゴリズムの選定」と「スケーリングを実現するコンポーネント」の2点です。 1. 負荷分散アルゴリズムの選択 幅優先(Breadth-first): 新規ユーザーセッションを、ホストプール内の利用可能なすべてのセッションホストに均等に分散させます。これは「セッションをすべてのホストに分散させる」という1つ目の要件に合致しています。 深さ優先(Depth-first): 1台のセッションホストが上限に達するまでセッションを詰め込み、その後次のホストへ移動します。これはコスト最適化には向いていますが、今回の「分散させる」という要件には適しません。 2. 自動スケーリングの仕組み Azure Automation: AVDの「スケーリングプラン(Scaling Plans)」が登場する前、および特定のカスタマイズが必要な構成では、Azure AutomationとLogic Appsなどを使用して、セッション数に基づいたホストの起動・停止を自動化するのが標準的な構成です。 問題文の「1ホストあたり30ユーザーを超えたら自動起動する」というロジックを制御するために必要となります。 Azure Load Balancer(誤答の理由): Azure Load Balancerはネットワークトラフィック(L4)を分散させるものであり、AVDの「ユーザーセッション数」をトリガーにして仮想マシンを起動させる機能は持っていません。AVD独自の負荷分散は、AVDサービス自体(ブローカー)によって管理されます。 結論 「すべてのホストに分散(幅優先)」し、「セッション数に応じて自動起動(Azure Automation等のスケーリングメカニズム)」を組み合わせる必要があるため、選択肢Bが正解となります。Question#2(AZ-140)
Pool1という名前のAzure Virtual Desktopホストプールと、Account1という名前のAzure Automationアカウントがあります。Pool1は、contoso.comという名前のAzure Active Directory Domain Services(Azure AD DS)マネージドドメインと統合されています。
Azure Automationランブックを使用して、Pool1のスケーリングを構成する計画です。ランブックがPool1のスケーリングを管理できるように権限を付与する必要があります。このソリューションは、管理の手間を最小限に抑える必要があります。
何を構成すべきですか?
正解:A
Azure Automationでリソースを操作する際の認証には、現在マネージド IDの使用が推奨されています。 マネージド IDは、Azureが自動的に認証情報を管理するため、パスワードの更新や証明書の管理といった「管理の手間」を最小限に抑えることができます。以前は「実行アカウント(Run As account)」が主流でしたが、これは作成時に自己署名証明書やサービスプリンシパルを手動で管理する必要があり、現在は非推奨(廃止予定)の方向にあるため、最小限の工数で安全に構成するならマネージド IDが最適解となります。なお、gMSAはドメイン内のサービス用であり、Azureリソース操作の認証には適しません。Question#3(AZ-140)
Windows 10 Enterprise multi-sessionホストを実行する、Pool1という名前のAzure Virtual Desktopホストプールがあります。
Pool1への現在のユーザーセッションに影響を与えている「フレーム品質の低下(low frame quality)」の問題をトラブルシューティングするために、パフォーマンスモニターを使用する必要があります。
ユーザーセッションIDを取得するために実行すべきコマンドはどれですか?
正解:B
AVDのトラブルシューティングにおいて、特定のユーザーセッションのパフォーマンスカウンターを計測するには、まずそのユーザーのセッションIDを特定する必要があります。 qwinsta(Query Window Station)コマンドは、リモートデスクトップセッションホスト上のすべてのセッション情報(セッション名、ユーザー名、ID、状態)を一覧表示する標準的なコマンドラインツールです。これにより、対象ユーザーのIDを素早く確認できます。 一方、whoamiは自分自身の情報のみ、Get-LocalUserはローカルアカウントの一覧であり、マルチセッション環境で「現在接続中のセッションID」を特定する目的には適していません。Get-ComputerInfoはシステム全体の情報を取得するものです。Question#4(AZ-140)
Azure Virtual Desktop(AVD)のデプロイメントがあります。
セカンダリの場所に AVD をデプロイし、構成しました。
セカンダリの場所へのテストフェールオーバーを実行する予定ですが、プライマリの場所に既存のユーザーセッションが残っていることがわかりました。
プライマリの場所にあるセッションホストからユーザーをサインアウトさせる必要があります。
実行すべき PowerShell コマンドレットはどれですか?
正解:B
Azure Virtual Desktop の最新のリソースマネージャー(ARM)ベースの環境において、ユーザーセッションを強制的にログオフさせるコマンドレットは Remove-AzWvdUserSession です。 このコマンドを使用することで、ホストプール名、リソースグループ名、および特定のセッションIDを指定して、アクティブなセッションを終了させることができます。フェールオーバー時には、ユーザーを安全かつ確実に移動させるために、旧環境のセッションを切断することが不可欠です。 選択肢 A の Invoke-RdsUserSessionLogoff は、以前のバージョン(非 ARM ベースの WVD 1.0)で使用されていた古いコマンドであり、現在は Az.DesktopVirtualization モジュールに含まれる Remove-AzWvdUserSession を使用するのが標準です。Question#5(AZ-140)
Azure Virtual Desktop(AVD)のデプロイメントがあります。
Azureの「Start/Stop VMs during off-hours(営業時間外のVMの起動/停止)」機能を使用しています。
このソリューションによって決して停止させてはいけない仮想マシンを指定する必要があります。
何を構成すべきですか?
正解:C
Azure Automationを使用した「Start/Stop VMs during off-hours」ソリューションでは、除外したい仮想マシンのリストを Azure Automation アカウントの変数 で管理します。 具体的には、External_ExcludeVMNames という名前の変数に、停止させたくないVM名をカンマ区切りで入力することで、自動実行の対象から外すことが可能です。この仕組みにより、特定の重要なホストを常時稼働させる柔軟な運用が実現します。 他の選択肢について、診断設定(A)はログ出力用、アクショングループ(D)は通知用であり、除外リストの管理には使用しません。Bのタスク自体には除外リストを個別に保持する機能はないため、変数での制御が正解となります。