azure - 在 terraform 的 azure data explorer 中使用 eventhub 的默认消费者组

标签 azure terraform azure-eventhub azure-data-explorer

我可以在 Azure 仪表板的连接 Azure Data Explorer 集群中使用 $Default 使用者组。但是当我尝试从 terraform 执行相同操作时,出现错误。

获取默认消费组数据

data "azurerm_eventhub_consumer_group" "default" {
  name                = "$Default"
  namespace_name      = azurerm_eventhub_namespace.eh_namespace.name
  eventhub_name       = azurerm_eventhub.eh.name
  resource_group_name = var.resource_group
}

尝试在adx中使用

resource "azurerm_kusto_eventhub_data_connection" "eventhub_connection" {
  name                = var.adx_eh_connection_name
  resource_group_name = var.resource_group
  location            = data.azurerm_resource_group.eh_adx.location
  cluster_name        = azurerm_kusto_cluster.adx.name
  database_name       = azurerm_kusto_database.database.name

  eventhub_id    = azurerm_eventhub.eh.id
  consumer_group = data.azurerm_eventhub_consumer_group.default.name

  table_name        = var.adx_db_table_name
  mapping_rule_name = var.ingestion_mapping_rule_name
  data_format       = var.eh_message_format
}

出现错误

Error: invalid value for consumer_group (The consumer group name can contain only letters,
numbers, periods (.), hyphens (-),and underscores (_), up to 50 characters, and 
it must begin and end with a letter or number.)
  on adx.tf line 25, in resource "azurerm_kusto_eventhub_data_connection" "eventhub_connection":
  25: resource "azurerm_kusto_eventhub_data_connection" "eventhub_connection" {

版本

  • 地形:0.14.6
  • azure :2.53.0

最佳答案

此问题之前曾在此Github issue中报告过。 但该问题已在 azurerm 提供程序版本 2.28.0 中得到解决。如需解决方案,请使用最新的 terraform 版本和 azurerm 版本

我使用 Terraform 版本 1.0.11 和最新的 azurerm 提供程序(即 2.88.1)进行了相同的测试。

data "azurerm_eventhub_consumer_group" "consumer_group" {
  name                = "$Default"
  namespace_name      = azurerm_eventhub_namespace.eventhub_ns.name
  eventhub_name       = azurerm_eventhub.eventhub.name
  resource_group_name = azurerm_resource_group.rg.name
}

resource "azurerm_kusto_eventhub_data_connection" "eventhub_connection" {
  name                = "my-kusto-eventhub-data-connection"
  resource_group_name = azurerm_resource_group.rg.name
  location            = azurerm_resource_group.rg.location
  cluster_name        = azurerm_kusto_cluster.cluster.name
  database_name       = azurerm_kusto_database.database.name

  eventhub_id    = azurerm_eventhub.eventhub.id
  consumer_group = data.azurerm_eventhub_consumer_group.consumer_group.name
}

输出:

enter image description here

关于azure - 在 terraform 的 azure data explorer 中使用 eventhub 的默认消费者组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70226083/

相关文章:

sql-server - Powershell Invoke-Sqlcmd 命中错误的数据库 - 系统,为什么?

json - 逻辑应用 - 数据操作解析 JSON 不解析来自事件中心的内容

Terraform 条件 - 如果变量不存在

list - Terraform 遍历 map 的 map

c# - Azure 事件中心超时

Azure Functions 事件中心触发器绑定(bind)

python - 如何使用python快速发送消息到azure队列存储?

azure - 如何在 Azure 中自动部署机器人 channel 注册?

entity-framework - 发布到 Azure Web App 的 ASP.NET Web API 中出现不可预测的 API 请求延迟峰值

Azure Blob 存储临时文件 URL