Я хотел бы подготовить кластер AKS, который подключен к виртуальной сети и имеет внутренний балансировщик нагрузки в Azure. Я использую код из здесь, который выглядит так:
import azureml.core
from azureml.core.compute import AksCompute, ComputeTarget
# Verify that cluster does not exist already
try:
aks_target = AksCompute(workspace=ws, name=aks_cluster_name)
print("Found existing aks cluster")
except:
print("Creating new aks cluster")
# Subnet to use for AKS
subnet_name = "default"
# Create AKS configuration
prov_config=AksCompute.provisioning_configuration(load_balancer_type="InternalLoadBalancer")
# Set info for existing virtual network to create the cluster in
prov_config.vnet_resourcegroup_name = "myvnetresourcegroup"
prov_config.vnet_name = "myvnetname"
prov_config.service_cidr = "10.0.0.0/16"
prov_config.dns_service_ip = "10.0.0.10"
prov_config.subnet_name = subnet_name
prov_config.docker_bridge_cidr = "172.17.0.1/16"
# Create compute target
aks_target = ComputeTarget.create(workspace = ws, name = "myaks", provisioning_configuration = prov_config)
# Wait for the operation to complete
aks_target.wait_for_completion(show_output = True)
Однако я получаю следующую ошибку
K8s failed to assign an IP for Load Balancer after waiting for an hour.
Это потому, что кластер AKS еще не имеет роли «участник сети» для группы ресурсов vnet? Единственный способ заставить это работать - сначала создать AKS вне AMLS, предоставить роль участника сети группе ресурсов vnet, затем подключить кластер AKS к AMLS и затем настроить внутренний балансировщик нагрузки?