Azure: как увеличить размер диска для виртуальной машины, которая является частью масштабируемого набора?

Я новичок в Azure и придерживаюсь одного сценария.

У меня зав. который состоит из нескольких наборов шкал, и каждый набор шкал имеет мин. 2-3 экземпляра. Каждый экземпляр состоит из 2 разделов на диск по 50 ГБ каждый. Диски управляемые дисковые.

Сейчас

/ dev / sdd 50 ГБ 45 ГБ 5 ГБ 90% / данные / zk

/ dev / sdc 50 ГБ 25 ГБ 25 ГБ 50% / данные / кафка

После определенного момента размер диска достигает 90%, и мы должны увеличить размер диска. Итак, для 1 раздела мне нужно увеличить размер диска, скажем, на 100 ГБ.

Таким образом, ожидаемый результат должен быть примерно таким (после увеличения размера диска для zk на 100 ГБ)

Ожидается

/ dev / sdd 150 ГБ 45 ГБ 105 ГБ 30% / data / zk

/ dev / sdc 50 ГБ 25 ГБ 25 ГБ 50% / данные / кафка

Я провел небольшое исследование в Интернете, но не нашел способа увеличить размер диска.

Кто-нибудь делал это раньше?


person Sunil Agarwal    schedule 30.04.2018    source источник
comment
Удалось ли вам его расширить? Я тоже пытаюсь сделать то же самое, но безуспешно.   -  person devd    schedule 19.03.2019
comment
в Azure мы должны отсоединить диск, затем развернуть диск и затем снова подключить его. Подход Azure ужасен. Если у вас есть AWS, используйте AWS. В AWS вы можете расширять диск без простоев.   -  person Sunil Agarwal    schedule 20.03.2019
comment
Я уже сделал это в AWS. Где в Azure после отсоединения диска от масштабируемого набора виртуальных машин его можно найти?   -  person devd    schedule 20.03.2019


Ответы (2)


Общий процесс заключался бы в выполнении PUT для модели масштабируемого набора (описанной здесь: https://docs.microsoft.com/en-us/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-upgrade-scale-set), в частности, в свойстве diskSizeGb в определении диска данных:

"storageProfile": { "imageReference": { "sku": "2016-Datacenter", "publisher": "MicrosoftWindowsServer", "version": "latest", "offer": "WindowsServer" }, "osDisk": { "caching": "ReadWrite", "managedDisk": { "storageAccountType": "Standard_LRS" }, "createOption": "FromImage" }, "dataDisks": [ { "diskSizeGB": 1023, "createOption": "Empty", "lun": 0 }, { "diskSizeGB": 1023, "createOption": "Empty", "lun": 1 } ] },

person Neil Sant Gat    schedule 02.05.2018
comment
Я также пытаюсь сделать то же самое с Linux VM Scale Set. Я обновил diskSizeGB: az vmss update -n e4s-ss -g e4s --set virtualMachineProfile.storageProfile.dataDisks[0].diskSizeGb=130 После этого я также обновил масштабный набор Последняя модель az vmss update-instances -n e4s-ss -g e4s --instance-ids 1 .. az vmss update-instances -n e4s-ss -g e4s --instance-ids 2 Но я не могу видеть размер, когда делаю df -h. Я также расширил диск виртуальной машины, и на нем я могу видеть новый увеличенный размер. - person devd; 19.03.2019
comment
это предложение сработало для меня. Обратите внимание, что, как рекомендуется, экземпляры виртуальных машин должны быть освобождены до внесения изменений, в противном случае экземпляры выйдут из строя, если вы попытаетесь освободить их после - person ossentoo; 04.06.2019
comment
Для всех, кто обнаруживает это, но ищет изменения на диске ОС, этот подход не работает. - person volvox; 18.10.2019

Насколько мне известно, возможно, вы можете отсоединить управляемый диск от vmss, затем использовать портал Azure для увеличения размера диска с данными, затем подключить управляемый диск к этому экземпляру VMSS, а затем использовать оболочку для монтирования и расширения его в системе.

C:\Users\jasony>az vmss disk attach -h

Command
    az vmss disk attach: Attach managed data disks to a scale set or its instances.

Arguments
    --caching          : Disk caching policy.  Allowed values: None, ReadOnly, ReadWrite.
    --disk             : Existing disk name or ID to attach or detach from VM instances.
    --lun              : 0-based logical unit number (LUN). Max value depends on the Virtual Machine
                         instance size.
    --size-gb -z       : Size in GB.

Resource Id Arguments
    --ids              : One or more resource IDs (space-delimited). If provided, no other 'Resource
                         Id' arguments should be specified.
    --instance-id      : Scale set VM instance id.
    --name -n          : Scale set name. You can configure the default using `az configure
                         --defaults vmss=<name>`.
    --resource-group -g: Name of resource group. You can configure the default group using `az
                         configure --defaults group=<name>`.

Global Arguments
    --debug            : Increase logging verbosity to show all debug logs.
    --help -h          : Show this help message and exit.
    --output -o        : Output format.  Allowed values: json, jsonc, table, tsv.  Default: json.
    --query            : JMESPath query string. See http://jmespath.org/ for more information and
                         examples.
    --verbose          : Increase logging verbosity. Use --debug for full debug logs.

Примечание: вы должны помнить, какой диск подключен к какому экземпляру VMSS.

person Jason Ye    schedule 01.05.2018
comment
если вы отсоедините диск, ваше приложение / данные на это время не работают. То, что я искал, было похоже на то, насколько легко AWS реализовал логику. вы можете увеличивать размер диска на лету без простоев. Проверено службой поддержки Azure, у них нет этой функции. в любом случае спасибо за помощь. - person Sunil Agarwal; 20.03.2019
comment
Я думаю, что менталитет Azure в отношении масштабируемых наборов заключается в том, что сначала нужно применить измененный шаблон (где новый размер диска будет влиять только на новые экземпляры), затем инициировать один или несколько новых экземпляров, а когда они будут запущены и работают, уменьшите масштаб, чтобы старый экземпляры удалены. - person j5423951; 27.09.2020