使用Terraform在专用网络上部署Azure Synapse时出错

rks48beu  于 2023-10-22  发布在  其他
关注(0)|答案(1)|浏览(126)

我正在使用Terraform部署Synapse,每当我想通过Terraform和Azure门户部署Synapse资源时,都会收到一个错误。
我正在部署到一个私有资源组,在该组中,我已被允许部署具有Internet访问权限的资源。由于安全规定,公司有一项政策,即不能通过访问Internet创建资源。
此标签:”managed_resource_group_name:- (可选)工作区管理的资源组。更改此设置将强制创建新资源。https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/synapse_workspace
是否有方法阻止Azure自动创建此管理资源组?我无法部署它,因为我无法指向Internet的Azure策略指令跳过。
我曾试图把相同的名称作为资源组与豁免或评论选项,但这是不可能的,它会自动创建一个随机名称的资源组。
谢谢
我所希望的是找到一种方法来创建Synapse,而不必创建管理资源池,或者将其放置在同一个资源池中,允许我通过互联网访问部署资源。

8i9zcol2

8i9zcol21#

找到一种无需创建管理资源池即可创建Synapse的方法:
如果不创建管理资源组,则无法部署Synapse资源。
创建Synapse工作区时,将自动创建管理资源组,用于控制与Synapse工作区关联的多个资源。
尝试使用Azure Private Link通过专用网络连接而不是互联网谨慎地使Synapse Workspace可用。
或者,您可以尝试将Synapse Workspace的网络配置为与您组织的虚拟网络集成。因此,它将控制Azure服务之间的通信。
您可以使用文档中给出的resource_group_name参数将synapse工作区部署到特定的资源组中。

  • 我尝试部署一个取自注册表的示例模板,并成功部署在特定的可访问资源组中,如图所示。*
provider "azurerm"{
features{}
}
data "azurerm_resource_group" "example" {
  name     = "caroline"
}

resource "azurerm_storage_account" "example" {
  name                     = "jaanustorageacc"
  resource_group_name      = data.azurerm_resource_group.example.name
  location                 = data.azurerm_resource_group.example.location
  account_tier             = "Standard"
  account_replication_type = "LRS"
  account_kind             = "StorageV2"
  is_hns_enabled           = "true"
}

resource "azurerm_storage_data_lake_gen2_filesystem" "example" {
  name               = "xxxx"
  storage_account_id = azurerm_storage_account.example.id
}

resource "azurerm_synapse_workspace" "example" {
  name                                 = "jaanuexample"
  resource_group_name                  = data.azurerm_resource_group.example.name
  location                             = data.azurerm_resource_group.example.location
  storage_data_lake_gen2_filesystem_id = azurerm_storage_data_lake_gen2_filesystem.example.id
  sql_administrator_login              = "admin"
  sql_administrator_login_password     = "xxx"
  identity {
    type = "SystemAssigned"
  }
}
  • 部署成功:*

  • 注意:* 您需要与组织的Azure管理员合作,如果您有与组织的安全策略相关的特殊限制或要求,则这一点至关重要。

相关问题