alan-turing-institute / data-safe-haven

https://data-safe-haven.readthedocs.io
BSD 3-Clause "New" or "Revised" License
57 stars 15 forks source link

Premium disks not supported by all VM SKUs #2067

Closed jemrobinson closed 1 month ago

jemrobinson commented 1 month ago

:white_check_mark: Checklist

:computer: System information

:package: Packages

List of packages ```none acme==2.6.0 annotated-types==0.6.0 appdirs==1.4.4 Arpeggio==2.0.2 attrs==23.2.0 azure-common==1.1.28 azure-core==1.30.1 azure-identity==1.16.1 azure-keyvault-certificates==4.8.0 azure-keyvault-keys==4.9.0 azure-keyvault-secrets==4.8.0 azure-mgmt-automation==1.0.0 azure-mgmt-compute==30.6.0 azure-mgmt-containerinstance==10.1.0 azure-mgmt-core==1.4.0 azure-mgmt-dns==8.1.0 azure-mgmt-keyvault==10.3.0 azure-mgmt-msi==7.0.0 azure-mgmt-network==25.3.0 azure-mgmt-rdbms==10.1.0 azure-mgmt-resource==23.1.1 azure-mgmt-storage==21.1.0 azure-storage-blob==12.20.0 azure-storage-file-datalake==12.15.0 azure-storage-file-share==12.16.0 certifi==2024.2.2 cffi==1.16.0 charset-normalizer==3.3.2 chevron==0.14.0 click==8.1.7 cryptography==42.0.7 -e git+ssh://git@github.com/alan-turing-institute/data-safe-haven.git@6b412ab9f60f491b27e2b4acf5556d71740392d2#egg=data_safe_haven dill==0.3.8 dnspython==2.4.2 fqdn==1.5.1 grpcio==1.60.1 idna==3.7 isodate==0.6.1 josepy==1.14.0 markdown-it-py==3.0.0 mdurl==0.1.2 msal==1.28.0 msal-extensions==1.1.0 msrest==0.7.1 oauthlib==3.2.2 packaging==24.0 parver==0.5 pipdeptree==2.23.0 portalocker==2.8.2 protobuf==4.25.3 psycopg==3.1.19 pulumi==3.115.2 pulumi_azure_native==2.51.0 pulumi_random==4.16.1 pulumi_tls==5.0.4 pycparser==2.22 pydantic==2.7.1 pydantic_core==2.18.2 Pygments==2.18.0 PyJWT==2.8.0 pyOpenSSL==24.1.0 pyRFC3339==1.1 pytz==2023.4 PyYAML==6.0.1 requests==2.31.0 requests-oauthlib==2.0.0 rich==13.7.1 semver==2.13.0 setuptools==69.5.1 shellingham==1.5.4 simple-acme-dns==3.0.0 six==1.16.0 typer==0.12.3 typing_extensions==4.11.0 urllib3==2.2.1 validators==0.22.0 websocket-client==1.8.0 ```

:no_entry_sign: Describe the problem

Some VM SKUs (including Standard_D8_v5 which is used as the TRESA default) do not support Premium disks. We should probably default to standard disks.

:deciduous_tree: Log messages

Relevant log messages ```none + azure-native:compute:VirtualMachine sre_workspaces_vm_workspace_01 creating (12s) error: Code="InvalidParameter" Message="Requested operation cannot be performed because the VM size Standard_D8_v5 does not support the storage account type Premium_LRS of disk 'shm-dshtesting-sre-demosre-vm-workspace-01-osdisk'. Consider updating the VM to a size that supports Premium storage." Target="osDisk.managedDisk.storageAccountType" + azure-native:compute:VirtualMachine sre_workspaces_vm_workspace_01 **creating failed** error: Code="InvalidParameter" Message="Requested operation cannot be performed because the VM size Standard_D8_v5 does not support the storage account type Premium_LRS of disk 'shm-dshtesting-sre-demosre-vm-workspace-01-osdisk'. Consider updating the VM to a size that supports Premium storage." Target="osDisk.managedDisk.storageAccountType" ```

:recycle: To reproduce

JimMadge commented 1 month ago

Given we are using these machines as multi-user workstations, I think premium storage feels justified.

It might be better to advise (or enforce) that VM sizes support premium storage. In this case, Standard_D8s_v5 would work.

jemrobinson commented 1 month ago

Closed by #2111.