Подключите управляемый диск к экземпляру vmss с помощью java

Я использую azure-libraries-for-java (https://github.com/Azure/azure-libraries-for-java/) для обработки некоторых вещей управления azure, и одна из функций, которую я не могу понять, — это горячее подключение управляемого диска к экземпляру vmss.

Это действие можно очень просто выполнить с помощью az cli: az vmss disk attach --disk {diskid} --instance-id 0 --resource-group MyResourceGroup --lun 0

Это также можно сделать несколько более сложным способом, используя остальные API, как описано здесь: https://github.com/Azure/vm-scale-sets/tree/master/preview/disk

Но я не могу понять, как воспроизвести любой из этих методов с помощью java SDK. Надеюсь, кто-то более знаком с этим, чтобы помочь понять, можно ли это сделать и как это сделать!

Спасибо.


person Cesar    schedule 13.06.2019    source источник
comment
Пробуете ли вы интерфейс VirtualMachineScaleSet.UpdateStages.WithManagedDataDisk? Я думаю, это поможет, но, похоже, просто создайте новый диск с данными. Если это поможет, пожалуйста, дайте мне знать.   -  person Charles Xu    schedule 13.06.2019
comment
Да, я видел это, но, как вы сказали, кажется, что его можно использовать только для создания новых/пустых дисков данных, и он будет создавать их для каждого экземпляра виртуальной машины в масштабируемом наборе, а не только для конкретного.   -  person Cesar    schedule 13.06.2019
comment
Кажется, другого интерфейса для этого нет. Возможно, вы можете использовать остальные API в коде Java.   -  person Charles Xu    schedule 13.06.2019


Ответы (1)


Мне удалось решить эту проблему, используя функции inner() в java sdk. Как я теперь понимаю, эти функции/классы автоматически генерируются из остального API, поэтому любая функциональность в остаточном API будет иметь по крайней мере соответствующую функциональность.

Работать с ним немного некрасиво и, по-видимому, существует риск потери обратной совместимости с новыми версиями SDK, но я очень рад, что мне не придется вызывать остальные API вручную: p

person Cesar    schedule 14.06.2019