我研究了文档,我看到terraform支持media services部署,我想知道如何使用版本2而不是默认的版本2部署:
你能建议我在使用Terraform部署时如何使用特定的版本吗?
我尝试手动创建两个媒体服务,并使用找到API,但不是幸运,因为我找不到任何关于这方面的东西:
以下是导出的模板> this与版本2和版本3相同时的示例
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"mediaservices_testversion2_name": {
"defaultValue": "testversion2",
"type": "String"
},
"storageAccounts_sinclairdevamsstracc_externalid": {
"defaultValue": "//////////////////",
"type": "String"
}
},
"variables": {},
"resources": [
{
"type": "Microsoft.Media/mediaservices",
"apiVersion": "2015-10-01",
"name": "[parameters('/////////////')]",
"location": "West US 2",
"properties": {
"storageAccounts": [
{
"id": "[parameters('storageAccounts_//////////_externalid')]",
"isPrimary": true
}
]
}
}
]
}我使用的代码非常简单:
#Azure Provider Configuration
terraform {
required_providers {
azurerm = {
source = "hashicorp/azurerm"
version = "2.82.0"
}
}
}
provider "azurerm" {
subscription_id = var.subscription_id
tenant_id = var.tenant_id
client_id = var.client_id
features {}
}
locals {
StreamingEndpoints = 1
}
#Storage Account Resource
resource "azurerm_storage_account" "stracc" {
name = "${lower(var.customer)}${lower(var.env)}${lower(var.product)}stracc"
resource_group_name = azurerm_resource_group.rg.name
location = var.location
account_tier = "Standard"
account_replication_type = "LRS"
}
#Resource Group
resource "azurerm_resource_group" "rg" {
name = upper("${var.customer}-${var.product}-RG-${var.env}-TEST")
location = var.location
}
resource "azurerm_media_services_account" "media" {
name = "${lower(var.customer)}${lower(var.env)}${lower(var.product)}-media"
location = var.location
resource_group_name = azurerm_resource_group.rg.name
storage_account {
id = azurerm_storage_account.stracc.id
is_primary = true
}
}
resource "azurerm_media_streaming_endpoint" "example" {
count = local.StreamingEndpoints
name = "${lower(var.customer)}${lower(var.env)}${lower(var.product)}-CH0${count.index + 1}"
resource_group_name = azurerm_resource_group.rg.name
location = var.location
media_services_account_name = azurerm_media_services_account.media.name
scale_units = 1
access_control {
ip_allow {
name = "AllowedIP"
address = "192.168.1.1"
}
}
}发布于 2021-10-29 12:22:32
我也使用Terraform和ARM template对此进行了测试,但Enable the Classic API's选项没有类似于门户网站的参数。

它仅限于从门户网站本身部署,因为Media Service API v2已被弃用。
所以,如果你想使用Media Service V2直到它完全被废弃,即29 February 2024,那么作为一个解决方案,请从门户网站部署它。
https://stackoverflow.com/questions/69754835
复制相似问题