【问题标题】:Adding VNET Rules to PostgreSQL Server via Azure ARM Template通过 Azure ARM 模板将 VNET 规则添加到 PostgreSQL 服务器
【发布时间】:2018-12-17 05:25:07
【问题描述】:

我正在编写一个自动创建 PostgreSQL 数据库的 Azure 资源管理器模板。我已经成功添加了一条防火墙规则:

{
  "type": "firewallRules"
  "apiVersion": "2017-12-01",
  "dependsOn": [
    "[concat('Microsoft.DBforPostgreSQL/servers/', variables('serverName'))]"
    ],
    "location": "[parameters('location')]",
    "name": "[concat(variables('serverName'),'firewall')]",
    "properties": {
      "startIpAddress": "[parameters('firewallStartIpAddress')]",
      "endIpAddress": "[parameters('firewallEndIpAddress')]"
    }
}

但是,如果我想添加 VNET 规则怎么办?文档here 中似乎没有提及这一点。

我对此进行了研究并发现了这个documentation,但它与“Microsoft.Sql”资源有关,而不是“Microsoft.DBforPostgreSQL”资源。

【问题讨论】:

    标签: postgresql azure vnet


    【解决方案1】:

    基于 PostgreSQL 的 API:Virtual Network Rules - Create Or Update,MS 似乎在模板中错过了它。

    我已经尝试过类似下面的sql模板的模板,但它不起作用。

    {
      "name": "string",
      "type": "Microsoft.DBforPostgreSQL/servers/virtualNetworkRules",
      "apiVersion": "2017-12-01",
      "properties": {
        "virtualNetworkSubnetId": "string",
        "ignoreMissingVnetServiceEndpoint": boolean
      }
    }
    

    更新:

    根据我的测试,在门户中设置SQL DB的vnet规则后,我可以通过Azure资源浏览器找到它(您可以在resource.azure.com访问它),请参考截图。

    AFAIK,用于 PostgreSQL 的 azure 数据库支持 API、azure CLI、azure 门户来设置 vnet 规则。

    但在门户中设置后,我找不到在资源浏览器和自动化脚本中找到它。

    所以我认为 postgresql 确实不支持 ARM 模板。如果您想改进 azure db for postgresql,您可以在feedback 中发布您的想法。

    另外,我找到了ARM Template for MySQL 的想法,现在支持了。如果你发布它,我认为它会在未来得到支持。

    【讨论】:

    • 感谢您的回答,但这里没有运气。 'Microsoft.DBforPostgreSQL/servers/virtualNetworkRules' 不被接受
    • @Xenidious 是的,我测试了它,结果和你一样,另外,我在门户中设置了 vnet 规则并在 azure 资源浏览器中检查它,我找不到它。似乎 postpresql 不支持 arm 模板。但是有一个API,很奇怪。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-06-03
    • 1970-01-01
    • 2017-01-16
    • 1970-01-01
    • 2021-08-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多