在 java sdk 中配置虚拟机期间的 OS 磁盘类型支持

Posted

技术标签:

【中文标题】在 java sdk 中配置虚拟机期间的 OS 磁盘类型支持【英文标题】:OS disk type support during virtual machine provisioning in java sdk 【发布时间】:2019-01-06 08:48:23 【问题描述】:

Azure 门户允许我们在创建虚拟机时选择操作系统磁盘类型(HDD/SSD)。但是当我尝试使用 java SDK 部署虚拟机时,API 不支持传递磁盘类型。

var linuxVM1 = azure.VirtualMachines
  .Define(linuxVM1Name)
  .WithRegion(Region.USEast)
  .WithNewResourceGroup(rgName)
  .WithNewPrimaryNetwork("10.0.0.0/28")
  .WithPrimaryPrivateIpAddressDynamic()
  .WithNewPrimaryPublicIpAddress(linuxVM1Pip)
  .WithPopularLinuxImage(KnownLinuxVirtualMachineImage.UbuntuServer16_04_Lts)
  .WithRootUsername(“tirekicker”)
  .WithSsh(sshkey)
  .WithNewDataDisk(100)
  .WithSize(VirtualMachineSizeTypes.StandardD3V2)
  .Create();

谁能告诉我如何在虚拟机配置期间设置磁盘类型。

提前致谢

【问题讨论】:

【参考方案1】:

谁能告诉我如何在虚拟机配置期间设置磁盘类型。

如果您想选择操作系统磁盘类型(HDD/SSD),请附加.withOSDiskStorageAccountType(StorageAccountTypes.PREMIUM_LRS)PREMIUM_LRS表示使用SSD盘。如果您想选择 HDD 磁盘,您可以使用StorageAccountTypes.STANDARD_LRS。以下是演示代码。

var linuxVM1 = azure.VirtualMachines
  .Define(linuxVM1Name)
  .withRegion(Region.USEast)
  .withNewResourceGroup(rgName)
  .withNewPrimaryNetwork("10.0.0.0/28")
  .withPrimaryPrivateIpAddressDynamic()
  .withNewPrimaryPublicIpAddress(linuxVM1Pip)
  .withPopularLinuxImage(KnownLinuxVirtualMachineImage.UbuntuServer16_04_Lts)
  .withRootUsername(“tirekicker”)
  .withSsh(sshkey)
  .withOSDiskStorageAccountType(StorageAccountTypes.PREMIUM_LRS) //StorageAccountTypes.STANDARD_LRS
  .withNewDataDisk(100)
  .withSize(VirtualMachineSizeTypes.StandardD3V2)
  .create();

【讨论】:

感谢您的快速帮助。 @Shaan 如果有用,可以标记为答案。

以上是关于在 java sdk 中配置虚拟机期间的 OS 磁盘类型支持的主要内容,如果未能解决你的问题,请参考以下文章

kvm虚拟机静态迁移

kvm_虚拟机迁移

解决OS虚拟机内采用LVS-DR模式请求超时问题

在录制 mac os x sdk 期间检测静音

虚拟机配置与系统安装

LinuxCent OS 虚拟机开机自启动配置