从脚本获取 AKS 节点资源组中的 Azure 资源

Get Azure Resources in AKS Node Resource Group from Script

部署 AKS 群集时,您将获得 AKS 群集资源本身以及由 AKS 在单独的资源组中控制的一堆单独的资源。 我需要获取在其中创建的 VNET AKS 的名称,以便将其与应用程序网关网络对等。 但是,用于获取有关此资源组中资源的任何信息的所有 Azure PowerShell 或 Azure CLI 命令都会产生空结果。 我什至无法获得此资源组中的资源列表。

我尝试了以下命令

az resource list
Get-AzResource
az network vnet list

但是其中 none 个产生了任何输出。

这也是 this tutorial 在虚拟网络对等互连时失败的原因。

知道为什么会发生这种情况以及如何获取此 VNET 的名称吗?

更新: 虽然我可以在部署后立即在门户中看到该资源组,但它通过脚本可用大约需要一个小时。是否有任何技巧可以在部署后立即访问这些资源,以便我可以根据这些资源的可用性自动执行后续步骤?

nodeResourceGroup=$(az aks show -g AKS_RG -n AKS_NAME -o tsv --query nodeResourceGroup)
az network vnet list -g $nodeResourceGroup -o tsv --query "[0].name"

您也可以预先自行创建 VNET 和子网,然后将 AKS 放置在该网络中。

在我看来,这是更好的解决方案,而不是让 Azure 管理所有这些资源,并且作为好处,您可以更灵活地使用对等等。

我也会 re-commend 为此使用 Terraform 或 Bicep 等 IaC 工具。