Azure-sdk-for-java: Définir des IOPS et un débit personnalisés sur une nouvelle création de disque Azure

Créé le 20 févr. 2020  ·  3Commentaires  ·  Source: Azure/azure-sdk-for-java

Requête / Question

  • Je souhaite créer un disque managé à l'aide du SDK Azure.
  • Et je suis capable de le faire.
  • Cependant, je ne trouve aucune méthode ou interface via laquelle je peux définir l'IOPS et le débit sur les disques que je crée _ (je sais qu'ils ne sont pris en charge que pour les disques Ultra) _ .
  • Est-ce quelque chose de possible uniquement via l'API REST et non pris en charge par le SDK Java pour Azure?
  • J'ai également posé la question ici .

Les étapes de définition actuelles que je vois sont:

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);

Pourquoi n'est-ce pas un bogue ou une demande de fonctionnalité?

  • Parce que je pense que c'est quelque chose que je ne peux pas comprendre et peut-être pas nécessairement quelque chose qui est cassé.

Configuration (veuillez compléter les informations suivantes le cas échéant):

  • OS: Mac
  • IDE: IntelliJ
  • Version de la bibliothèque utilisée: 1.31.0

Liste de contrôle des informations
Veuillez vous assurer que vous avez ajouté toutes les informations suivantes ci-dessus et cocher les champs obligatoires, sinon nous traiterons l'émetteur comme un rapport incomplet

  • [x] Requête ajoutée
  • [x] Informations de configuration ajoutées
Storage customer-reported question

Commentaire le plus utile

@Shabirmean L'ensemble de l'API Rest est innerObject, lorsque vous voyez qu'une option n'apparaît pas dans l'API fluide, vous pouvez utiliser l'API interne comme solution de contournement.

Dans cette situation, le code est comme:

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();

Tous les 3 commentaires

Merci d'avoir posé la question sur le SDK Java Storage Management @Shabirmean. @yaohaizh @ChenTanyi pouvez-vous nous aider?

/ cc @ rickle-msft @ gapra-msft

@Shabirmean L'ensemble de l'API Rest est innerObject, lorsque vous voyez qu'une option n'apparaît pas dans l'API fluide, vous pouvez utiliser l'API interne comme solution de contournement.

Dans cette situation, le code est comme:

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 - Cela fonctionne. Merci beaucoup! 🎉

Cette page vous a été utile?
0 / 5 - 0 notes