4

在将 SQL MI 部署到子网后,NSG 是否可以应用于子网?

https://docs.microsoft.com/en-us/azure/sql-database/sql-database-managed-instance-vnet-configuration

保存时出现以下错误:

“无法保存子网 'managed-sql-dev-corp'。错误:'发现与 NetworkIntentPolicy 冲突。详细信息:子网或虚拟网络不能有与网络意图策略冲突的资源或属性。”</p>

是 Azure 服务创建的“网络意图策略”还是我自己的策略之一?

4

1 回答 1

4

在有效网络/子网中部署托管实例后,它将强制执行一些“意图策略”,以防止您进行一些可能使子网无效的配置。

例如,托管实例只能部署在不包含其他 VM 的子网中。部署托管实例后,它将设置不允许您在此子网中创建虚拟机的意图规则,并使子网在部署后无效。如果没有这些规则,您将能够阻止对托管实例的访问。它无法阻止所有内容,但此意图策略是托管实例用来防止有人重新配置子网的第一道防线。

以下是可在 NSG 中使用的出站规则示例。

在此处输入图像描述

  • 规则 allow_management_inbound 允许管理流量到达实例。
  • 规则 allow_misubnet_inbound 允许构成托管实例集群的虚拟机之间进行通信。
  • 规则 allow_health_probe 允许从虚拟机主机进行健康检查。没有它,服务结构会认为节点不健康并阻止访问。
  • 规则 allow_tds_inbound 是可选的,但没有它,您将无法访问托管实例。建议尽可能缩小其IP范围。

优先级数字不必如图所示,但前 3 个规则的优先级必须高于任何拒绝规则。

为了符合托管实例网络意图策略,NSG 必须具有在图片上编号为列表顶部的 100 和 200 的规则。

在此处输入图像描述

  • 规则 allow_management_outbound 允许管理流量到达托管实例所依赖的服务。
  • 规则 allow_misubnet_outbound 允许构成托管实例集群的虚拟机之间进行通信。

优先级数字不必如图所示,但前 2 条规则的优先级必须高于任何拒绝规则。

托管实例的附加功能可能需要打开其他端口。这将在特定的功能文档中定义。

于 2018-10-29T10:59:34.903 回答