如何将第二个 ACR 附加到我的 AKS 群集?

How to attach a second ACR to my AKS cluster?

文档介绍了如何将 ACR 附加到现有的 AKS 群集,https://docs.microsoft.com/en-us/azure/aks/cluster-container-registry-integration

附上第一个 ACR:

az account set --subscription acr-subscription
$ACR_ID = $(az acr show --name $ACRName  --resource-group $ACRResourceGroupName --query "id" --output tsv)
az account set --subscription aks-subscription
az aks update --name cluster-name --resource-group cluster-resource --attach-acr $ACR_ID

基于此 Whosebug ,只要您的 ID 格式正确,这应该可以工作

echo $(az acr show --name $name --resource-group $resourcegroup --query "id" --output tsv)

returns 正确的格式和值。

--attach-acr 关联的代码只需使用与 kubernetes 集群关联的 identity_profile ID 将 acrpull IAM 角色添加到 ACR 资源。

https://github.com/Azure/azure-cli/blob/a9fe6167381b53dac19a3007f726adf27b64f28b/src/azure-cli/azure/cli/command_modules/acs/custom.py#L559

代码中没有任何位置可以检查之前是否有另一个 ACR 附加到 AKS 资源。因此,应该可以直接为多个实例设置角色分配。

这应该可以正常工作

az account set --subscription acr-subscription
$ACR_ID = $(az acr show --name $ACRName  --resource-group $ACRResourceGroupName --query "id" --output tsv)

az account set --subscription acr2-subscription
$ACR2_ID = $(az acr show --name $ACR2Name  --resource-group $ACR2ResourceGroupName --query "id" --output tsv)

az account set --subscription aks-subscription
az aks update --name cluster-name --resource-group cluster-resource --attach-acr $ACR_ID
az aks update --name cluster-name --resource-group cluster-resource --attach-acr $ACR2_ID