azure - 如何使用 ARM 模板或 terraform 创建多个 Azure RDS 租户?
问题描述
我找到了一种使用 terraform 创建一个 RDS 租户的方法:
resource "null_resource" "createTenant" {
provisioner "local-exec" {
command = <<EOT
Add-RdsAccount -DeploymentUrl https://rdbroker.wvd.microsoft.com
New-RdsTenant -Name ${var.tenant_name} -AadTenantId ${var.aad_tenant_id} -AzureSubscriptionId ${var.subscription_id}
New-RdsRoleAssignment -RoleDefinitionName "RDS Owner" -ApplicationId ${azuread_application.wvd_app.application_id} -TenantName ${var.tenant_name}
New-RdsHostPool -TenantName ${var.tenant_name} -Name ${var.host_pool_name}
EOT
interpreter = ["PowerShell", "-Command"]
}
}
但在这种情况下,“terraform state”不跟踪资源更改
因此它不是实现租户资源创建的可靠方法,也无法使用此实现或创建多个租户......
我们有任何 ARM 模板参考或资源吗????
解决方案
由于 terraformazurerm
提供程序中没有用于此的资源,因此无法在您所指的传统生命周期内轻松管理。
Microsoft 有一个专门用于远程桌面服务模板的存储库,位于:https ://github.com/Azure/RDS-Templates
您可以将它包装在 PowerShell 中,以可重复的方式构建它的多个实例。
或者你可以考虑贡献azurerm
提供者。如果您有兴趣这样做,这里有很好的文档:https ://www.terraform.io/docs/extend/community/contributing.html
您还可以向azurerm
提供者提出问题以请求创建新资源:https ://github.com/terraform-providers/terraform-provider-azurerm/issues
希望这可以帮助!
推荐阅读
- css - Oceanwp 主题的粘滞菜单
- javascript - this.state.query 即使在 this.setState({query:value}) 调用之后也没有设置
- content-management-system - 如何使用 Gravstrap 制作单个站点页面?
- javascript - Javascript 'a' 标签重定向错误
- lambda - lambda 内联编辑器替代
- amazon-web-services - 如何为我的网站设置 DNS?
- python - Python / Pandas:数据框多个过滤器
- machine-learning - 将 sklearn 随机森林 Python 模型导出到 Android
- cython - 在 Cython 中包装 C 库:预期 ')',找到 '*'
- javascript - JS 角色类型错误出错:无法读取未定义的属性“推送”