vmware: get recommended disk controller only when root or data disk controller is osdefault#5258
vmware: get recommended disk controller only when root or data disk controller is osdefault#5258nvazquez merged 6 commits intoapache:4.15apache/cloudstack:4.15from shapeblue:4.15-vmware-disk-controller-exceptionshapeblue/cloudstack:4.15-vmware-disk-controller-exceptionCopy head branch name to clipboard
Conversation
…ontroller is osdefault
|
@blueorangutan package |
|
@weizhouapache a Jenkins job has been kicked to build packages. I'll keep you posted as I make progress. |
|
Packaging result: ✔️ el7 ✔️ el8 ✔️ debian. SL-JID 706 |
|
@blueorangutan test centos7 vmware-65u2 |
|
@weizhouapache a Trillian-Jenkins test job (centos7 mgmt + vmware-65u2) has been kicked to run smoke tests |
There was a problem hiding this comment.
@weizhouapache I've tested creating 2 templates from a snapshot, set root disk controller to 'pvsci' on both, but selected different OS: one as (1) 'Other SUSE Linux(64-bit)' and the other (2) 'Other Linux (64-bit)'. The first fails and the second works as expected, seems like it still looks for the recommended controller ignoring the one on the template settings:
(1) VM error
2021-07-30 16:35:51,058 INFO [c.c.h.v.r.VmwareResource] (DirectAgent-171:ctx-c2677036 10.0.35.205, job-37/job-39, cmd: StartCommand) (logid:ff2533e1) Executing resource StartCommand: {"vm":{"id":"5","name":"i-2-5-VM","bootloader":"HVM","state":"Starting","type":"User","cpus":"1","minSpeed":"250","maxSpeed":"500","minRam":"(512.00 MB) 536870912","maxRam":"(512.00 MB) 536870912","hostName":"VM-485f84d5-b1fa-408d-bb82-6acdcff7e06c","arch":"x86_64","os":"Other SUSE Linux(64-bit)","platformEmulator":"suse64Guest","bootArgs":"","enableHA":"false","limitCpuUse":"false","enableDynamicallyScaleVm":"false","vncPassword":"h7vmArzQV6qTAH_TwqI2iA","params":{"deployvm":"true","dataDiskController":"osdefault","memoryOvercommitRatio":"1.0","Message.ReservedCapacityFreed.Flag":"false","nestedVirtualizationFlag":"false","cpuOvercommitRatio":"2.0","vmware.reserve.mem":"false","vmware.reserve.cpu":"false","nicAdapter":"E1000","rootDiskController":"pvscsi"},"uuid":"485f84d5-b1fa-408d-bb82-6acdcff7e06c","enterHardwareSetup":"false","disks":[{"data":{"org.apache.cloudstack.storage.to.VolumeObjectTO":{"uuid":"11c59c99-c542-4b2a-bcaa-bd2481caff5b","volumeType":"ROOT","dataStore":{"org.apache.cloudstack.storage.to.PrimaryDataStoreTO":{"uuid":"71920b79-022b-3e4b-9570-3b1cae098b20","id":"2","poolType":"NetworkFilesystem","host":"10.0.32.4","path":"/acs/primary/ref-trl-1420-v-M7-nicolas-vazquez/ref-trl-1420-v-M7-nicolas-vazquez-esxi-pri2","port":"2049","url":"NetworkFilesystem://10.0.32.4/acs/primary/ref-trl-1420-v-M7-nicolas-vazquez/ref-trl-1420-v-M7-nicolas-vazquez-esxi-pri2/?ROLE=Primary&STOREUUID=71920b79-022b-3e4b-9570-3b1cae098b20","isManaged":"false"}},"name":"ROOT-5","size":"(2.00 GB) 2147483648","path":"ROOT-5","volumeId":"5","vmName":"i-2-5-VM","accountId":"2","format":"OVA","provisioningType":"THIN","id":"5","deviceId":"0","bytesReadRate":"(0 bytes) 0","bytesWriteRate":"(0 bytes) 0","iopsReadRate":"(0 bytes) 0","iopsWriteRate":"(0 bytes) 0","hypervisorType":"VMware","directDownload":"false","deployAsIs":"false"}},"diskSeq":"0","path":"ROOT-5","type":"ROOT","_details":{"storageHost":"10.0.32.4","managed":"false","storagePort":"2049","volumeSize":"(2.00 GB) 2147483648"}},{"data":{"org.apache.cloudstack.storage.to.TemplateObjectTO":{"id":"0","format":"ISO","accountId":"0","hvm":"false","bootable":"false","directDownload":"false","deployAsIs":"false"}},"diskSeq":"3","type":"ISO"}],"nics":[{"deviceId":"0","networkRateMbps":"200","defaultNic":"true","pxeDisable":"false","nicUuid":"dc15216b-0e0d-457a-92c7-d3828222cae6","details":{"PromiscuousMode":"false","MacAddressChanges":"true","ForgedTransmits":"true"},"dpdkEnabled":"false","uuid":"092c5bb5-1e73-4acc-b2f2-0e31665e77ed","mac":"02:00:4c:72:00:03","dns1":"10.0.32.1","dns2":"8.8.8.8","broadcastType":"Vlan","type":"Guest","broadcastUri":"vlan://1793","isolationUri":"vlan://1793","isSecurityGroupEnabled":"false","name":"vSwitch1,,vmwaresvs"}],"guestOsDetails":{},"extraConfig":{}},"hostIp":"10.0.35.205","executeInSequence":"false","wait":"0","bypassHostMaintenance":"false"}
2021-07-30 16:35:51,073 DEBUG [c.c.h.v.r.VmwareResource] (DirectAgent-171:ctx-c2677036 10.0.35.205, job-37/job-39, cmd: StartCommand) (logid:ff2533e1) Using mapping name : SUSE_64_GUEST
2021-07-30 16:35:51,082 DEBUG [c.c.h.v.m.HostMO] (DirectAgent-171:ctx-c2677036 10.0.35.205, job-37/job-39, cmd: StartCommand) (logid:ff2533e1) find VM i-2-5-VM on host
2021-07-30 16:35:51,082 INFO [c.c.h.v.m.HostMO] (DirectAgent-171:ctx-c2677036 10.0.35.205, job-37/job-39, cmd: StartCommand) (logid:ff2533e1) VM i-2-5-VM not found in host cache
2021-07-30 16:35:51,082 DEBUG [c.c.h.v.m.HostMO] (DirectAgent-171:ctx-c2677036 10.0.35.205, job-37/job-39, cmd: StartCommand) (logid:ff2533e1) load VM cache on host
2021-07-30 16:35:51,127 INFO [c.c.h.v.m.DatastoreMO] (DirectAgent-171:ctx-c2677036 10.0.35.205, job-37/job-39, cmd: StartCommand) (logid:ff2533e1) Folder i-2-5-VM does not exist on datastore
2021-07-30 16:35:51,130 INFO [c.c.h.v.m.DatastoreMO] (DirectAgent-171:ctx-c2677036 10.0.35.205, job-37/job-39, cmd: StartCommand) (logid:ff2533e1) Search file i-2-5-VM.vmx on [71920b79022b3e4b95703b1cae098b20]
2021-07-30 16:35:51,147 INFO [c.c.h.v.m.DatastoreMO] (DirectAgent-171:ctx-c2677036 10.0.35.205, job-37/job-39, cmd: StartCommand) (logid:ff2533e1) File [71920b79022b3e4b95703b1cae098b20] i-2-5-VM.vmx does not exist on datastore
2021-07-30 16:35:51,147 INFO [c.c.h.v.m.DatastoreMO] (DirectAgent-171:ctx-c2677036 10.0.35.205, job-37/job-39, cmd: StartCommand) (logid:ff2533e1) Searching file i-2-5-VM.vmx in [71920b79022b3e4b95703b1cae098b20]
2021-07-30 16:35:51,168 INFO [c.c.h.v.m.HypervisorHostHelper] (DirectAgent-171:ctx-c2677036 10.0.35.205, job-37/job-39, cmd: StartCommand) (logid:ff2533e1) Create blank VM. cpuCount: 1, cpuSpeed(MHz): 500, mem(Mb): 512
2021-07-30 16:35:51,198 ERROR [c.c.h.v.m.ClusterMO] (DirectAgent-171:ctx-c2677036 10.0.35.205, job-37/job-39, cmd: StartCommand) (logid:ff2533e1) Unable to retrieve recommended disk controller for guest OS : suse64Guest in cluster p1-c1
2021-07-30 16:35:51,201 INFO [c.c.h.v.u.VmwareHelper] (DirectAgent-171:ctx-c2677036 10.0.35.205, job-37/job-39, cmd: StartCommand) (logid:ff2533e1) [ignored]failed to get message for exception: Unable to retrieve recommended disk controller for guest OS : suse64Guest in cluster p1-c1
2021-07-30 16:35:51,201 WARN [c.c.h.v.r.VmwareResource] (DirectAgent-171:ctx-c2677036 10.0.35.205, job-37/job-39, cmd: StartCommand) (logid:ff2533e1) StartCommand failed due to Exception: com.cloud.utils.exception.CloudRuntimeException
Message: Unable to retrieve recommended disk controller for guest OS : suse64Guest in cluster p1-c1
com.cloud.utils.exception.CloudRuntimeException: Unable to retrieve recommended disk controller for guest OS : suse64Guest in cluster p1-c1
at com.cloud.hypervisor.vmware.mo.ClusterMO.getRecommendedDiskController(ClusterMO.java:744)
at com.cloud.hypervisor.vmware.mo.HostMO.getRecommendedDiskController(HostMO.java:1122)
at com.cloud.hypervisor.vmware.mo.HypervisorHostHelper.createBlankVm(HypervisorHostHelper.java:1534)
at com.cloud.hypervisor.vmware.mo.HostMO.createBlankVm(HostMO.java:798)
at com.cloud.hypervisor.vmware.resource.VmwareResource.execute(VmwareResource.java:1906)
at com.cloud.hypervisor.vmware.resource.VmwareResource.executeRequest(VmwareResource.java:545)
at com.cloud.agent.manager.DirectAgentAttache$Task.runInContext(DirectAgentAttache.java:315)
at org.apache.cloudstack.managed.context.ManagedContextRunnable$1.run(ManagedContextRunnable.java:48)
at org.apache.cloudstack.managed.context.impl.DefaultManagedContext$1.call(DefaultManagedContext.java:55)
at org.apache.cloudstack.managed.context.impl.DefaultManagedContext.callWithContext(DefaultManagedContext.java:102)
at org.apache.cloudstack.managed.context.impl.DefaultManagedContext.runWithContext(DefaultManagedContext.java:52)
at org.apache.cloudstack.managed.context.ManagedContextRunnable.run(ManagedContextRunnable.java:45)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:829)
|
Trillian test result (tid-1427)
|
|
@nvazquez the k8 tests are known to fail, but the redundant vpc tests should succeed. I see them fail on different PRs though. Do you know if something changed that could cause this? |
@DaanHoogland no. I will look at it when I have time. |
|
@blueorangutan package |
|
@weizhouapache a Jenkins job has been kicked to build packages. I'll keep you posted as I make progress. |
|
Packaging result: ✔️ el7 ✔️ el8 ✔️ debian. SL-JID 725 |
|
@blueorangutan test centos7 vmware-65u2 |
|
@rhtyd a Trillian-Jenkins test job (centos7 mgmt + vmware-65u2) has been kicked to run smoke tests |
|
The issue in #5100 and NPE mentioned by @nvazquez have been fixed by this PR. Got the following exception it looks like 'suse64Guest' is not a valid guest os descriptor in vmware 6.5. |
|
Thanks @weizhouapache, I can see it listed on the guest OS enum for 6.5 with different description |
@nvazquez good. |
|
@blueorangutan test centos7 vmware-67u3 |
|
@rhtyd a Trillian-Jenkins test job (centos7 mgmt + vmware-67u3) has been kicked to run smoke tests |
|
travis failure is not related and |
Hypervisor tools ISO - vmware-toools.iso, xs-tools.iso are marked as PERHOST in DB. They are active but not downloaded to the secondary storages and hence no template-zone entry. Skips the template-zone check for such templates. Fixes apache#5265 Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
|
@weizhouapache @shwstppr can you fix conflict and repkg+kick tests? |
|
@blueorangutan package |
|
@shwstppr a Jenkins job has been kicked to build packages. I'll keep you posted as I make progress. |
|
Packaging result: ✔️ el7 ✔️ el8 ✔️ debian. SL-JID 804 |
|
@blueorangutan test centos7 vmware-67u3 |
|
@shwstppr a Trillian-Jenkins test job (centos7 mgmt + vmware-67u3) has been kicked to run smoke tests |
|
Trillian Build Failed (tid-1547) |
|
@blueorangutan test centos7 vmware-67u3 |
|
@rhtyd a Trillian-Jenkins test job (centos7 mgmt + vmware-67u3) has been kicked to run smoke tests |
|
Trillian test result (tid-1548)
|
|
@blueorangutan test centos7 vmware-67u3 |
|
@nvazquez a Trillian-Jenkins test job (centos7 mgmt + vmware-67u3) has been kicked to run smoke tests |
|
Trillian test result (tid-1584)
|
|
@blueorangutan test centos7 vmware-67u3 |
|
@blueorangutan test centos7 vmware-67u3 |
|
@nvazquez a Trillian-Jenkins test job (centos7 mgmt + vmware-67u3) has been kicked to run smoke tests |
|
Trillian test result (tid-1630)
|
|
@blueorangutan test centos7 vmware-67u3 |
|
@nvazquez a Trillian-Jenkins test job (centos7 mgmt + vmware-67u3) has been kicked to run smoke tests |
|
Trillian Build Failed (tid-1632) |
|
@blueorangutan test centos7 vmware-67u3 |
|
@nvazquez a Trillian-Jenkins test job (centos7 mgmt + vmware-67u3) has been kicked to run smoke tests |
|
Trillian test result (tid-1638)
|
|
@blueorangutan test centos7 vmware-67u3 |
|
@rhtyd a Trillian-Jenkins test job (centos7 mgmt + vmware-67u3) has been kicked to run smoke tests |
|
Trillian test result (tid-1640)
|

If vm/template has specified non-osdefault disk controller for both root and data disk, we can skip the step to get recommend disk controller (by os descriptor).
Description
This PR fixes #5100
Types of changes
Feature/Enhancement Scale or Bug Severity
Feature/Enhancement Scale
Bug Severity
Screenshots (if appropriate):
How Has This Been Tested?