WVD - 用于创建主机池、工作区和应用程序池的 az cli 示例

WVD - az cli sample for creating host pool, workspace and application pool

对于 azure WVD 部署,我想通过 az cli 自动创建以下元素:

我找到的唯一可用文档在 https://docs.microsoft.com/en-us/cli/azure/desktopvirtualization?view=azure-cli-latest 中,其中只有一个可用参数列表,没有详细的指导方法和一些 E2E 示例。

有什么建议吗?

您可以参考此 documentation,其中解释了如何使用 PowerShell 执行此操作。仅针对一种资源很痛苦,但仍然可以给您一个想法。

我还建议您第一步是使用 Azure 门户创建您需要的内容。此 article 解释了如何从门户网站执行此操作。

确保记下您要填写的每个字段,包括具有默认值的字段。

创建所有资源后,您现在可以 export an ARM template 您创建的资源,包括所有自定义项。查看资源的 Automation 菜单下,然后单击导出模板。您可以使用此模板来自动化您的部署。

其次,如果您想考虑使用另一种基础架构即代码工具的不同方法,Terraform 支持创建 WVD 对象。如果您熟悉 Terraform,可以查看此 article,其中说明了如何操作。

假设您仍想继续使用 Az Cli。我查看了我的 CloudShell 中的 az desktopvirtualization hostpool create 帮助命令,我可以看到如下免责声明:

Command group 'desktopvirtualization hostpool' is experimental and under development. Reference and support levels: https://aka.ms/CLI_refstatus

这是根命令的图片:

您必须牢记,在产品至少处于预览版之前,您将获得 Microsoft support/Azure 团队和可能的社区其他成员的有限功能和有限支持。我试了一下,并在此处为您提供了代码,只是为了让您继续。

考虑到您的要求,我已尝试创建一些您可以使用的命令。一些参数(ID)有点模糊,我不得不查看 ARM 模板以找出我应该输入什么值。部署步骤应按此顺序。

  1. 创建虚拟机主机池。
az desktopvirtualization hostpool create  --resource-group "myrg"
                                          --host-pool-type "Pooled" 
                                          --load-balancer-type "BreadthFirst" 
                                          --location westus //only available in certain regions
                                          --name "myhostpool" 
                                          --personal-desktop-assignment-type "automatic" 
  1. 创建应用程序组。
az desktopvirtualization applicationgroup create --application-group-type "Desktop"  
                                                 --resource-group "myrg" 
                                                 --host-pool-arm-path "/subscriptions/<provide_subscriptionID_here>/resourceGroups/myrg/providers/Microsoft.DesktopVirtualization/hostpools/myhostpool"  
                                                 --location westus 
                                                 --name "appgroup"
  1. 创建工作区。
az desktopvirtualization workspace create --location westus 
                                          --name "myworkspace"
                                          --resource-group "myrg"
                                          --application-group-references "/subscriptions/<provide_subscriptionID_here>/resourcegroups/myrg/providers/Microsoft.DesktopVirtualization/applicationgroups/appgroup"

总而言之,我可能没有花足够的时间来真正研究它可以自动化多少,但我觉得,除了 ARM 模板,其他选项仍然需要相当多的手动工作.