首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用版本2而不是版本3的Terraform媒体服务

问使用版本2而不是版本3的Terraform媒体服务
EN

Stack Overflow用户
提问于 2021-10-28 13:18:05
回答 1查看 47关注 0票数 0

我研究了文档,我看到terraform支持media services部署,我想知道如何使用版本2而不是默认的版本2部署:

你能建议我在使用Terraform部署时如何使用特定的版本吗?

我尝试手动创建两个媒体服务,并使用找到API,但不是幸运,因为我找不到任何关于这方面的东西:

以下是导出的模板> this与版本2和版本3相同时的示例

代码语言:javascript
复制
{
    "$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
                    }
                ]
            }
        }
    ]
}

我使用的代码非常简单:

代码语言:javascript
复制
#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"
    }
  }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-10-29 12:22:32

我也使用Terraform和ARM template对此进行了测试,但Enable the Classic API's选项没有类似于门户网站的参数。

​

​

它仅限于从门户网站本身部署,因为Media Service API v2已被弃用。

所以,如果你想使用Media Service V2直到它完全被废弃,即29 February 2024,那么作为一个解决方案,请从门户网站部署它。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69754835

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档