AKS与ACR之间的网络访问规则

Network accessing rules between AKS and ACR

我使用 AKS 和 ACR 实例创建了一个新资源组。

我可以在本地访问这两个资源,但是AKS 实例无法访问ACR。玩了一会儿设置后,我发现如果满足以下条件,AKS 就可以访问 ACR:

根据 this document,AKS 不是 受信任的服务。但是AKS节点的IP不是你能控制的。

所以,我的问题是,设置 ACR 网络规则的正确方法是什么,以确保仅

可以访问吗?

更新

经过一些研究,我发现我必须创建一个 专用端点 来连接 AKS 和 ACR。

关于同一主题的另一个 ,但使用 Terraform 来实现它。

感谢 David S 的更新。将您的建议作为答案发布,以帮助遇到相同需求的其他社区成员。

您需要一个专用终结点才能在 AKS 和 ACR 之间建立连接。

By default, ACR is public. Here want to disable its public FQDN and make it accessible only using Private Endpoint (aka PE). Private Endpoint will create a private IP address in a Subnet/VNET. Documentation about private ACR is here.

Private Endpoint will disable NSGs on its host Subnet. We don’t want this to happen to AKS Subnet, so we can create another Subnet in AKS VNET dedicated for Private Endpoints.

建议遵循此 tutorial,将为 AKS 和 ACR 设置私有环境提供指导,只能从 Azure VM 访问并在两者之间建立连接AKS 和 ACR。

注意:Just Ingore VM for the AKS and ACR connection only focus to build the connection for ACR and AKS as provided in above tutorial in part 2 and point number 1 and 3

您也可以参考此document部署和设置 Azure Kubernetes 服务和 Azure 容器注册表之间的私有 link,禁用 public 端点