Azure / MachineLearningNotebooks

Python notebooks with ML and deep learning examples with Azure Machine Learning Python SDK | Microsoft
https://docs.microsoft.com/azure/machine-learning/service/
MIT License
4.1k stars 2.52k forks source link

Cannot create AKS GPU clusters #1675

Open tjprescott opened 2 years ago

tjprescott commented 2 years ago

@icedpanda commented on Wed Jan 26 2022

Describe the bug Following the tutorial from Deploy a deep learning model for inference with GPU but not able to create AKS compute resources (Standard_NC6).

I have doubled checked the availability of NC6 in my region (Australia east) and it's available https://azure.microsoft.com/en-au/pricing/details/virtual-machines/linux/. However, I cannot find standard_nc6 in the error message which shows all available VMs.

I also checked the quotes/limited within my subscription which has 12 cores that are available. nc6

Screenshot 2022-01-27 161718

To Reproduce Steps to reproduce the behavior:

from azureml.core.compute import ComputeTarget, AksCompute
from azureml.exceptions import ComputeTargetException

# Choose a name for your cluster
aks_name = "gpu-nc6"

# Check to see if the cluster already exists
try:
    aks_target = ComputeTarget(workspace=ws, name=aks_name)
    print('Found existing compute target')
except ComputeTargetException:
    print('Creating a new compute target...')
    # Provision AKS cluster with GPU machine
    prov_config = AksCompute.provisioning_configuration(agent_count=1,vm_size="standard_nc6", cluster_purpose='DevTest')

    # Create the cluster
    aks_target = ComputeTarget.create(
        workspace=ws, name=aks_name, provisioning_configuration=prov_config
    )

    aks_target.wait_for_completion(show_output=True)

Error Message


ComputeTargetException:
    Message: Compute object provisioning polling reached non-successful terminal state, current provisioning state: Failed
Provisioning operation error:
{'code': 'BadRequest', 'message': 'Cluster Deployment failed. Service invocation failed!\r\nRequest: PUT https://australiaeast.management.azure.com//subscriptions/12746b62-2d20-4277-859d-d815ba01d54d/resourceGroups/maskhelper-dev/providers/Microsoft.ContainerService/managedClusters/gpu-nc64c86145717ec?api-version=2020-09-01\r\nStatus Code: 400 BadRequest\r\nReason Phrase: Bad Request\r\nResponse Body: {\n  "code": "BadRequest",\n  "message": "The VM size of AgentPoolProfile:agentpool is not allowed in your subscription in location \'australiaeast\'. The available VM sizes are \'standard_a2_v2,standard_a2m_v2,standard_a4_v2,standard_a4m_v2,standard_a8_v2,standard_a8m_v2,standard_b12ms,standard_b16ms,standard_b20ms,standard_b2ms,standard_b2s,standard_b4ms,standard_b8ms,standard_d11_v2,standard_d12_v2,standard_d13_v2,standard_d14_v2,standard_d16_v3,standard_d16_v4,standard_d16_v5,standard_d16a_v4,standard_d16as_v4,standard_d16d_v4,standard_d16d_v5,standard_d16ds_v4,standard_d16ds_v5,standard_d16s_v3,standard_d16s_v4,standard_d16s_v5,standard_d2_v2,standard_d2_v3,standard_d2_v4,standard_d2_v5,standard_d2a_v4,standard_d2as_v4,standard_d2d_v4,standard_d2d_v5,standard_d2ds_v4,standard_d2ds_v5,standard_d2s_v3,standard_d2s_v4,standard_d2s_v5,standard_d32_v3,standard_d32_v4,standard_d32_v5,standard_d32a_v4,standard_d32as_v4,standard_d32d_v4,standard_d32d_v5,standard_d32ds_v4,standard_d32ds_v5,standard_d32s_v3,standard_d32s_v4,standard_d32s_v5,standard_d3_v2,standard_d48_v3,standard_d48_v4,standard_d48_v5,standard_d48a_v4,standard_d48as_v4,standard_d48d_v4,standard_d48d_v5,standard_d48ds_v4,standard_d48ds_v5,standard_d48s_v3,standard_d48s_v4,standard_d48s_v5,standard_d4_v2,standard_d4_v3,standard_d4_v4,standard_d4_v5,standard_d4a_v4,standard_d4as_v4,standard_d4d_v4,standard_d4d_v5,standard_d4ds_v4,standard_d4ds_v5,standard_d4s_v3,standard_d4s_v4,standard_d4s_v5,standard_d5_v2,standard_d64_v3,standard_d64_v4,standard_d64_v5,standard_d64a_v4,standard_d64as_v4,standard_d64d_v4,standard_d64d_v5,standard_d64ds_v4,standard_d64ds_v5,standard_d64s_v3,standard_d64s_v4,standard_d64s_v5,standard_d8_v3,standard_d8_v4,standard_d8_v5,standard_d8a_v4,standard_d8as_v4,standard_d8d_v4,standard_d8d_v5,standard_d8ds_v4,standard_d8ds_v5,standard_d8s_v3,standard_d8s_v4,standard_d8s_v5,standard_d96_v5,standard_d96a_v4,standard_d96as_v4,standard_d96d_v5,standard_d96ds_v5,standard_d96s_v5,standard_dc2s_v2,standard_dc4s_v2,standard_dc8_v2,standard_ds11-1_v2,standard_ds11_v2,standard_ds12-1_v2,standard_ds12-2_v2,standard_ds12_v2,standard_ds13-2_v2,standard_ds13-4_v2,standard_ds13_v2,standard_ds14-4_v2,standard_ds14-8_v2,standard_ds14_v2,standard_ds2_v2,standard_ds3_v2,standard_ds4_v2,standard_ds5_v2,standard_e104i_v5,standard_e104id_v5,standard_e104ids_v5,standard_e104is_v5,standard_e16-4as_v4,standard_e16-4ds_v4,standard_e16-4ds_v5,standard_e16-4s_v3,standard_e16-4s_v4,standard_e16-4s_v5,standard_e16-8as_v4,standard_e16-8ds_v4,standard_e16-8ds_v5,standard_e16-8s_v3,standard_e16-8s_v4,standard_e16-8s_v5,standard_e16_v3,standard_e16_v4,standard_e16_v5,standard_e16a_v4,standard_e16as_v4,standard_e16d_v4,standard_e16d_v5,standard_e16ds_v4,standard_e16ds_v5,standard_e16s_v3,standard_e16s_v4,standard_e16s_v5,standard_e20_v3,standard_e20_v4,standard_e20_v5,standard_e20a_v4,standard_e20as_v4,standard_e20d_v4,standard_e20d_v5,standard_e20ds_v4,standard_e20ds_v5,standard_e20s_v3,standard_e20s_v4,standard_e20s_v5,standard_e2_v3,standard_e2_v4,standard_e2_v5,standard_e2a_v4,standard_e2as_v4,standard_e2d_v4,standard_e2d_v5,standard_e2ds_v4,standard_e2ds_v5,standard_e2s_v3,standard_e2s_v4,standard_e2s_v5,standard_e32-16as_v4,standard_e32-16ds_v4,standard_e32-16ds_v5,standard_e32-16s_v3,standard_e32-16s_v4,standard_e32-16s_v5,standard_e32-8as_v4,standard_e32-8ds_v4,standard_e32-8ds_v5,standard_e32-8s_v3,standard_e32-8s_v4,standard_e32-8s_v5,standard_e32_v3,standard_e32_v4,standard_e32_v5,standard_e32a_v4,standard_e32as_v4,standard_e32d_v4,standard_e32d_v5,standard_e32ds_v4,standard_e32ds_v5,standard_e32s_v3,standard_e32s_v4,standard_e32s_v5,standard_e4-2as_v4,standard_e4-2ds_v4,standard_e4-2ds_v5,standard_e4-2s_v3,standard_e4-2s_v4,standard_e4-2s_v5,standard_e48_v3,standard_e48_v4,standard_e48_v5,standard_e48a_v4,standard_e48as_v4,standard_e48d_v4,standard_e48d_v5,standard_e48ds_v4,standard_e48ds_v5,standard_e48s_v3,standard_e48s_v4,standard_e48s_v5,standard_e4_v3,standard_e4_v4,standard_e4_v5,standard_e4a_v4,standard_e4as_v4,standard_e4d_v4,standard_e4d_v5,standard_e4ds_v4,standard_e4ds_v5,standard_e4s_v3,standard_e4s_v4,standard_e4s_v5,standard_e64-16as_v4,standard_e64-16ds_v4,standard_e64-16ds_v5,standard_e64-16s_v3,standard_e64-16s_v4,standard_e64-16s_v5,standard_e64-32as_v4,standard_e64-32ds_v4,standard_e64-32ds_v5,standard_e64-32s_v3,standard_e64-32s_v4,standard_e64-32s_v5,standard_e64_v3,standard_e64_v4,standard_e64_v5,standard_e64a_v4,standard_e64as_v4,standard_e64d_v4,standard_e64d_v5,standard_e64ds_v4,standard_e64ds_v5,standard_e64i_v3,standard_e64is_v3,standard_e64s_v3,standard_e64s_v4,standard_e64s_v5,standard_e8-2as_v4,standard_e8-2ds_v4,standard_e8-2ds_v5,standard_e8-2s_v3,standard_e8-2s_v4,standard_e8-2s_v5,standard_e8-4as_v4,standard_e8-4ds_v4,standard_e8-4ds_v5,standard_e8-4s_v3,standard_e8-4s_v4,standard_e8-4s_v5,standard_e80ids_v4,standard_e80is_v4,standard_e8_v3,standard_e8_v4,standard_e8_v5,standard_e8a_v4,standard_e8as_v4,standard_e8d_v4,standard_e8d_v5,standard_e8ds_v4,standard_e8ds_v5,standard_e8s_v3,standard_e8s_v4,standard_e8s_v5,standard_e96-24as_v4,standard_e96-24ds_v5,standard_e96-24s_v5,standard_e96-48as_v4,standard_e96-48ds_v5,standard_e96-48s_v5,standard_e96_v5,standard_e96a_v4,standard_e96as_v4,standard_e96d_v5,standard_e96ds_v5,standard_e96ias_v4,standard_e96s_v5,standard_f16,standard_f16s,standard_f16s_v2,standard_f2,standard_f2s,standard_f2s_v2,standard_f32s_v2,standard_f4,standard_f48s_v2,standard_f4s,standard_f4s_v2,standard_f64s_v2,standard_f72s_v2,standard_f8,standard_f8s,standard_f8s_v2,standard_g1,standard_g2,standard_g3,standard_g4,standard_g5,standard_gs1,standard_gs2,standard_gs3,standard_gs4,standard_gs4-4,standard_gs4-8,standard_gs5,standard_gs5-16,standard_gs5-8,standard_hb120rs_v2,standard_hc44-16rs,standard_hc44-32rs,standard_hc44rs,standard_l16s,standard_l16s_v2,standard_l32s,standard_l32s_v2,standard_l48s_v2,standard_l4s,standard_l64s_v2,standard_l80s_v2,standard_l8s,standard_l8s_v2,standard_m128,standard_m128-32ms,standard_m128-64ms,standard_m128dms_v2,standard_m128ds_v2,standard_m128m,standard_m128ms,standard_m128ms_v2,standard_m128s,standard_m128s_v2,standard_m16-4ms,standard_m16-8ms,standard_m16ms,standard_m192idms_v2,standard_m192ids_v2,standard_m192ims_v2,standard_m192is_v2,standard_m208ms_v2,standard_m208s_v2,standard_m32-16ms,standard_m32-8ms,standard_m32dms_v2,standard_m32ls,standard_m32ms,standard_m32ms_v2,standard_m32ts,standard_m416-208ms_v2,standard_m416-208s_v2,standard_m416ms_v2,standard_m416s_v2,standard_m64,standard_m64-16ms,standard_m64-32ms,standard_m64dms_v2,standard_m64ds_v2,standard_m64ls,standard_m64m,standard_m64ms,standard_m64ms_v2,standard_m64s,standard_m64s_v2,standard_m8-2ms,standard_m8-4ms,standard_m8ms\' For more details, please visit https://aka.ms/cpu-quota"\n }'}
    InnerException None
    ErrorResponse 
{
    "error": {
        "message": "Compute object provisioning polling reached non-successful terminal state, current provisioning state: Failed\nProvisioning operation error:\n{'code': 'BadRequest', 'message': 'Cluster Deployment failed. Service invocation failed!\\r\\nRequest: PUT https://australiaeast.management.azure.com//subscriptions/12746b62-2d20-4277-859d-d815ba01d54d/resourceGroups/maskhelper-dev/providers/Microsoft.ContainerService/managedClusters/gpu-nc64c86145717ec?api-version=2020-09-01\\r\\nStatus Code: 400 BadRequest\\r\\nReason Phrase: Bad Request\\r\\nResponse Body: {\\n  \"code\": \"BadRequest\",\\n  \"message\": \"The VM size of AgentPoolProfile:agentpool is not allowed in your subscription in location \\'australiaeast\\'. The available VM sizes are \\'standard_a2_v2,standard_a2m_v2,standard_a4_v2,standard_a4m_v2,standard_a8_v2,standard_a8m_v2,standard_b12ms,standard_b16ms,standard_b20ms,standard_b2ms,standard_b2s,standard_b4ms,standard_b8ms,standard_d11_v2,standard_d12_v2,standard_d13_v2,standard_d14_v2,standard_d16_v3,standard_d16_v4,standard_d16_v5,standard_d16a_v4,standard_d16as_v4,standard_d16d_v4,standard_d16d_v5,standard_d16ds_v4,standard_d16ds_v5,standard_d16s_v3,standard_d16s_v4,standard_d16s_v5,standard_d2_v2,standard_d2_v3,standard_d2_v4,standard_d2_v5,standard_d2a_v4,standard_d2as_v4,standard_d2d_v4,standard_d2d_v5,standard_d2ds_v4,standard_d2ds_v5,standard_d2s_v3,standard_d2s_v4,standard_d2s_v5,standard_d32_v3,standard_d32_v4,standard_d32_v5,standard_d32a_v4,standard_d32as_v4,standard_d32d_v4,standard_d32d_v5,standard_d32ds_v4,standard_d32ds_v5,standard_d32s_v3,standard_d32s_v4,standard_d32s_v5,standard_d3_v2,standard_d48_v3,standard_d48_v4,standard_d48_v5,standard_d48a_v4,standard_d48as_v4,standard_d48d_v4,standard_d48d_v5,standard_d48ds_v4,standard_d48ds_v5,standard_d48s_v3,standard_d48s_v4,standard_d48s_v5,standard_d4_v2,standard_d4_v3,standard_d4_v4,standard_d4_v5,standard_d4a_v4,standard_d4as_v4,standard_d4d_v4,standard_d4d_v5,standard_d4ds_v4,standard_d4ds_v5,standard_d4s_v3,standard_d4s_v4,standard_d4s_v5,standard_d5_v2,standard_d64_v3,standard_d64_v4,standard_d64_v5,standard_d64a_v4,standard_d64as_v4,standard_d64d_v4,standard_d64d_v5,standard_d64ds_v4,standard_d64ds_v5,standard_d64s_v3,standard_d64s_v4,standard_d64s_v5,standard_d8_v3,standard_d8_v4,standard_d8_v5,standard_d8a_v4,standard_d8as_v4,standard_d8d_v4,standard_d8d_v5,standard_d8ds_v4,standard_d8ds_v5,standard_d8s_v3,standard_d8s_v4,standard_d8s_v5,standard_d96_v5,standard_d96a_v4,standard_d96as_v4,standard_d96d_v5,standard_d96ds_v5,standard_d96s_v5,standard_dc2s_v2,standard_dc4s_v2,standard_dc8_v2,standard_ds11-1_v2,standard_ds11_v2,standard_ds12-1_v2,standard_ds12-2_v2,standard_ds12_v2,standard_ds13-2_v2,standard_ds13-4_v2,standard_ds13_v2,standard_ds14-4_v2,standard_ds14-8_v2,standard_ds14_v2,standard_ds2_v2,standard_ds3_v2,standard_ds4_v2,standard_ds5_v2,standard_e104i_v5,standard_e104id_v5,standard_e104ids_v5,standard_e104is_v5,standard_e16-4as_v4,standard_e16-4ds_v4,standard_e16-4ds_v5,standard_e16-4s_v3,standard_e16-4s_v4,standard_e16-4s_v5,standard_e16-8as_v4,standard_e16-8ds_v4,standard_e16-8ds_v5,standard_e16-8s_v3,standard_e16-8s_v4,standard_e16-8s_v5,standard_e16_v3,standard_e16_v4,standard_e16_v5,standard_e16a_v4,standard_e16as_v4,standard_e16d_v4,standard_e16d_v5,standard_e16ds_v4,standard_e16ds_v5,standard_e16s_v3,standard_e16s_v4,standard_e16s_v5,standard_e20_v3,standard_e20_v4,standard_e20_v5,standard_e20a_v4,standard_e20as_v4,standard_e20d_v4,standard_e20d_v5,standard_e20ds_v4,standard_e20ds_v5,standard_e20s_v3,standard_e20s_v4,standard_e20s_v5,standard_e2_v3,standard_e2_v4,standard_e2_v5,standard_e2a_v4,standard_e2as_v4,standard_e2d_v4,standard_e2d_v5,standard_e2ds_v4,standard_e2ds_v5,standard_e2s_v3,standard_e2s_v4,standard_e2s_v5,standard_e32-16as_v4,standard_e32-16ds_v4,standard_e32-16ds_v5,standard_e32-16s_v3,standard_e32-16s_v4,standard_e32-16s_v5,standard_e32-8as_v4,standard_e32-8ds_v4,standard_e32-8ds_v5,standard_e32-8s_v3,standard_e32-8s_v4,standard_e32-8s_v5,standard_e32_v3,standard_e32_v4,standard_e32_v5,standard_e32a_v4,standard_e32as_v4,standard_e32d_v4,standard_e32d_v5,standard_e32ds_v4,standard_e32ds_v5,standard_e32s_v3,standard_e32s_v4,standard_e32s_v5,standard_e4-2as_v4,standard_e4-2ds_v4,standard_e4-2ds_v5,standard_e4-2s_v3,standard_e4-2s_v4,standard_e4-2s_v5,standard_e48_v3,standard_e48_v4,standard_e48_v5,standard_e48a_v4,standard_e48as_v4,standard_e48d_v4,standard_e48d_v5,standard_e48ds_v4,standard_e48ds_v5,standard_e48s_v3,standard_e48s_v4,standard_e48s_v5,standard_e4_v3,standard_e4_v4,standard_e4_v5,standard_e4a_v4,standard_e4as_v4,standard_e4d_v4,standard_e4d_v5,standard_e4ds_v4,standard_e4ds_v5,standard_e4s_v3,standard_e4s_v4,standard_e4s_v5,standard_e64-16as_v4,standard_e64-16ds_v4,standard_e64-16ds_v5,standard_e64-16s_v3,standard_e64-16s_v4,standard_e64-16s_v5,standard_e64-32as_v4,standard_e64-32ds_v4,standard_e64-32ds_v5,standard_e64-32s_v3,standard_e64-32s_v4,standard_e64-32s_v5,standard_e64_v3,standard_e64_v4,standard_e64_v5,standard_e64a_v4,standard_e64as_v4,standard_e64d_v4,standard_e64d_v5,standard_e64ds_v4,standard_e64ds_v5,standard_e64i_v3,standard_e64is_v3,standard_e64s_v3,standard_e64s_v4,standard_e64s_v5,standard_e8-2as_v4,standard_e8-2ds_v4,standard_e8-2ds_v5,standard_e8-2s_v3,standard_e8-2s_v4,standard_e8-2s_v5,standard_e8-4as_v4,standard_e8-4ds_v4,standard_e8-4ds_v5,standard_e8-4s_v3,standard_e8-4s_v4,standard_e8-4s_v5,standard_e80ids_v4,standard_e80is_v4,standard_e8_v3,standard_e8_v4,standard_e8_v5,standard_e8a_v4,standard_e8as_v4,standard_e8d_v4,standard_e8d_v5,standard_e8ds_v4,standard_e8ds_v5,standard_e8s_v3,standard_e8s_v4,standard_e8s_v5,standard_e96-24as_v4,standard_e96-24ds_v5,standard_e96-24s_v5,standard_e96-48as_v4,standard_e96-48ds_v5,standard_e96-48s_v5,standard_e96_v5,standard_e96a_v4,standard_e96as_v4,standard_e96d_v5,standard_e96ds_v5,standard_e96ias_v4,standard_e96s_v5,standard_f16,standard_f16s,standard_f16s_v2,standard_f2,standard_f2s,standard_f2s_v2,standard_f32s_v2,standard_f4,standard_f48s_v2,standard_f4s,standard_f4s_v2,standard_f64s_v2,standard_f72s_v2,standard_f8,standard_f8s,standard_f8s_v2,standard_g1,standard_g2,standard_g3,standard_g4,standard_g5,standard_gs1,standard_gs2,standard_gs3,standard_gs4,standard_gs4-4,standard_gs4-8,standard_gs5,standard_gs5-16,standard_gs5-8,standard_hb120rs_v2,standard_hc44-16rs,standard_hc44-32rs,standard_hc44rs,standard_l16s,standard_l16s_v2,standard_l32s,standard_l32s_v2,standard_l48s_v2,standard_l4s,standard_l64s_v2,standard_l80s_v2,standard_l8s,standard_l8s_v2,standard_m128,standard_m128-32ms,standard_m128-64ms,standard_m128dms_v2,standard_m128ds_v2,standard_m128m,standard_m128ms,standard_m128ms_v2,standard_m128s,standard_m128s_v2,standard_m16-4ms,standard_m16-8ms,standard_m16ms,standard_m192idms_v2,standard_m192ids_v2,standard_m192ims_v2,standard_m192is_v2,standard_m208ms_v2,standard_m208s_v2,standard_m32-16ms,standard_m32-8ms,standard_m32dms_v2,standard_m32ls,standard_m32ms,standard_m32ms_v2,standard_m32ts,standard_m416-208ms_v2,standard_m416-208s_v2,standard_m416ms_v2,standard_m416s_v2,standard_m64,standard_m64-16ms,standard_m64-32ms,standard_m64dms_v2,standard_m64ds_v2,standard_m64ls,standard_m64m,standard_m64ms,standard_m64ms_v2,standard_m64s,standard_m64s_v2,standard_m8-2ms,standard_m8-4ms,standard_m8ms\\' For more details, please visit https://aka.ms/cpu-quota\"\\n }'}"
    }
}
icedpanda commented 2 years ago

NC6 is now available after a support ticket. It's weird that they need to put your subscription on a whitelist even though you have available NC vCores.

mezbot commented 2 years ago

I am having this same issue in the same region. However I do not have an azure technical support plan. How can I get access to AKS GPUs??