Azure-sdk-for-java: 在新的Azure磁盘创建上设置自定义IOPS和吞吐量

创建于 2020-02-20  ·  3评论  ·  资料来源: Azure/azure-sdk-for-java

查询/问题

  • 我想使用Azure SDK创建托管磁盘。
  • 而且我能够做到。
  • 但是,我找不到在我创建的磁盘_上设置IOPS和吞吐量的任何方法或接口
  • 是否只能通过REST API进行某些操作,而Java SDK for Azure不支持?
  • 我也在这里问了这个问题。

我看到的当前定义阶段是:

image

// what I have as of now
Azure az = factory.userClient(ctx);
// some stuff

Disk.DefinitionStages.Blank dd = az.disks().define(myDIskModel.getName());
Disk.DefinitionStages.WithGroup ddGroup = dd.withRegion(myDIskModel.getRegion());
Disk.DefinitionStages.WithDiskSource ddSource = ddGroup.withExistingResourceGroup(resourceGroup);
Disk.DefinitionStages.WithDataDiskSource ddData = ddSource.withData();
Disk.DefinitionStages.WithCreate ddCreate = ddData
                .withSizeInGB(Integer.parseInt(myDIskModel.getSizeGb()))
                .withSku(DiskSkuTypes.fromStorageAccountType(DiskStorageAccountTypes.fromString(myDIskModel.getType())))
                .withTag(AzureTags.X, XX)
                .withTag(AzureTags.Y, YY)
                .withTag(AzureTags.Z, ZZ);

Observable<Indexable> asynCreate = ddCreate.createAsync();
Checker checker = new Checker(callerContext, asynCreate, Disk.class);

为什么这不是Bug或功能请求?

  • 因为我认为这是我无法弄清楚的,也许不一定是损坏的东西。

设置(如果适用,请完成以下信息):

  • 操作系统:Mac
  • IDE:IntelliJ
  • 使用的库版本:1.31.0

信息清单
请确保您已添加以上所有以下信息,并选中必填字段,否则我们会将发行人视为不完整的报告

  • [x]查询已添加
  • [x]设置信息已添加
Storage customer-reported question

最有用的评论

@Shabirmean整个Rest API都是innerObject,当您看到一个选项未出现在流畅的API中时,可以使用内部api作为解决方法。

在这种情况下,代码如下:

Disk disk = azure.disks().define()....create();
disk.inner().withDiskIOPSReadWrite(1L);
disk.update().apply();

// Or if the options can only be set in creation
Disk.DefinitionStages.WithCreate diskCreate = azure.disks().define()...
    // .create();
((Disk) diskCreate).inner().withDiskIOPSReadWrite(1L);
diskCreate.create();

所有3条评论

感谢您在Java存储管理SDK @Shabirmean上发布问题。 @yaohaizh @ChenTanyi帮忙吗?

/ cc @ rickle-msft @ gapra-msft

@Shabirmean整个Rest API都是innerObject,当您看到一个选项未出现在流畅的API中时,可以使用内部api作为解决方法。

在这种情况下,代码如下:

Disk disk = azure.disks().define()....create();
disk.inner().withDiskIOPSReadWrite(1L);
disk.update().apply();

// Or if the options can only be set in creation
Disk.DefinitionStages.WithCreate diskCreate = azure.disks().define()...
    // .create();
((Disk) diskCreate).inner().withDiskIOPSReadWrite(1L);
diskCreate.create();

@ChenTanyi-可行。 非常感谢你! 🎉

此页面是否有帮助?
0 / 5 - 0 等级