VCDのGUIからは、VMのHWバージョンを指定したデプロイができない。
しかし、APIを利用することで可能となる。
利用するAPI
POST /vdc/{id}/action/createVm
手順例
1.VCDへアクセス
2.ブラウザの開発ツールを起動
3.VMをデプロイ
4.開発ツールからデプロイのために発行されたAPIを確認
5.デプロイしたVMを削除
6.4にて確認したAPIにおけるHWバージョン箇所のみを変更し、APIにてデプロイ
実行例
curl -k --header "Accept: application/*;version=37.2" --header "Authorization: Bearer xxx" --header "Content-Type: application/*+xml;charset=UTF-8" --request POST https://172.16.23.20/api/vdc/efb8dc82-d242-4607-835b-398aec50b929/action/createVm -d '<root:CreateVmParams xmlns:root="http://www.vmware.com/vcloud/v1.5" xmlns:ns24="http://schemas.dmtf.org/ovf/envelope/1" powerOn="false"> <root:Description /> <root:CreateVm name="vm01"> <root:GuestCustomizationSection> <ns24:Info>Specifies Guest OS Customization Settings</ns24:Info> <root:ComputerName>vm01</root:ComputerName> </root:GuestCustomizationSection> <root:NetworkConnectionSection> <ns24:Info>Network Configuration for VM</ns24:Info> <root:PrimaryNetworkConnectionIndex>0</root:PrimaryNetworkConnectionIndex> <root:NetworkConnection network="none"> <root:NetworkConnectionIndex>0</root:NetworkConnectionIndex> <root:IpAddress>any</root:IpAddress> <root:IsConnected>true</root:IsConnected> <root:IpAddressAllocationMode>NONE</root:IpAddressAllocationMode> <root:NetworkAdapterType>VMXNET3</root:NetworkAdapterType> </root:NetworkConnection> </root:NetworkConnectionSection> <root:VmSpecSection Modified="true"> <ns24:Info>Virtual Machine specification</ns24:Info> <root:OsType>centos8_64Guest</root:OsType> <root:Firmware>bios</root:Firmware> <root:NumCpus>1</root:NumCpus> <root:NumCoresPerSocket>1</root:NumCoresPerSocket> <root:CpuResourceMhz> <root:Configured>0</root:Configured> </root:CpuResourceMhz> <root:MemoryResourceMb> <root:Configured>1024</root:Configured> </root:MemoryResourceMb> <root:DiskSection> <root:DiskSettings> <root:SizeMb>16384</root:SizeMb> <root:UnitNumber>0</root:UnitNumber> <root:BusNumber>0</root:BusNumber> <root:AdapterType>5</root:AdapterType> <root:ThinProvisioned>true</root:ThinProvisioned> <root:overrideVmDefault>false</root:overrideVmDefault> </root:DiskSettings> </root:DiskSection> <root:HardwareVersion>vmx-17</root:HardwareVersion> ←vmx-19からvmx-17へ変更 <root:VirtualCpuType>VM64</root:VirtualCpuType> </root:VmSpecSection> <root:ComputePolicy> <root:VmSizingPolicy href="urn:vcloud:vdcComputePolicy:2b8af3fc-a561-4b53-8ed9-227b97621d14" /> </root:ComputePolicy> <root:BootOptions> <root:EnterBIOSSetup>false</root:EnterBIOSSetup> </root:BootOptions> <root:TrustedPlatformModule> <root:TpmPresent>false</root:TpmPresent> </root:TrustedPlatformModule> </root:CreateVm> </root:CreateVmParams>'
7.HWバージョン17にて作成されていることを確認
※HWバージョンをアップグレードする場合
最新バージョンへアップグレードされる