New commit detected on ManageIQ/manageiq-content/gaprindashvili: https://github.com/ManageIQ/manageiq-content/commit/99fff66d837394b3eee4bdf639c0bb44b71a7464 commit 99fff66d837394b3eee4bdf639c0bb44b71a7464 Author: Greg McCullough <gmccullo> AuthorDate: Mon Jul 30 13:41:19 2018 -0400 Commit: Greg McCullough <gmccullo> CommitDate: Mon Jul 30 13:41:19 2018 -0400 Merge pull request #379 from fdupont-redhat/v2v_fix_transformation_host_selection Fix transformation host selection (cherry picked from commit b2982c6bc856b5b6ad4af762dfa028cf9df9bb11) https://bugzilla.redhat.com/show_bug.cgi?id=1610054 content/automate/ManageIQ/Transformation/TransformationHosts/Common.class/__methods__/utils.rb | 44 +- content/automate/ManageIQ/Transformation/TransformationHosts/Common.class/__methods__/vmtransform.rb | 2 +- 2 files changed, 31 insertions(+), 15 deletions(-)
I'm failing it on the following environment: CFME 5.9.4.2 RHV 4.2.5.2-0.1.el7ev Fabien also did a check on the evm.log file, and he found that the distribution went wrong on the run. 95% of the task end up on the same host: b02-h23-r620.rhev.openstack.engineering.redhat.com, while they should be equally split between the two hosts: $ grep service_template_transformation_plan_task_ automation.log | awk '{ print $8; }' | sort -u | grep -v automation | cut -d "[" -f2 | cut -d "]" -f1 | while read task ; do grep "${task}" automation.log | grep 'acquiretransformationhost> Transformation Host: ' ; done [----] I, [2018-08-07T16:07:41.589414 #2187:4fef494] INFO -- : Q-task_id([service_template_transformation_plan_task_187]) <AEMethod acquiretransformationhost> Transformation Host: b01-h17-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:07:40.687186 #2179:32f32dc] INFO -- : Q-task_id([service_template_transformation_plan_task_188]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:08:09.753008 #2179:45a6410] INFO -- : Q-task_id([service_template_transformation_plan_task_189]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:08:14.161519 #2187:13d20c4] INFO -- : Q-task_id([service_template_transformation_plan_task_190]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:08:36.205294 #2179:4de9bb8] INFO -- : Q-task_id([service_template_transformation_plan_task_191]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:08:41.128391 #2187:451bd60] INFO -- : Q-task_id([service_template_transformation_plan_task_192]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:09:03.026338 #2179:448f630] INFO -- : Q-task_id([service_template_transformation_plan_task_193]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:09:07.558536 #2187:4fc679c] INFO -- : Q-task_id([service_template_transformation_plan_task_194]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:09:29.818315 #2179:106eb1c] INFO -- : Q-task_id([service_template_transformation_plan_task_195]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:09:34.514493 #2187:10712e0] INFO -- : Q-task_id([service_template_transformation_plan_task_196]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:09:56.853518 #2179:106ea2c] INFO -- : Q-task_id([service_template_transformation_plan_task_197]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:10:01.765281 #2187:10713f8] INFO -- : Q-task_id([service_template_transformation_plan_task_198]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:10:23.999313 #2179:106ea2c] INFO -- : Q-task_id([service_template_transformation_plan_task_199]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:10:28.929544 #2187:10713f8] INFO -- : Q-task_id([service_template_transformation_plan_task_200]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:10:50.888203 #2179:106eb1c] INFO -- : Q-task_id([service_template_transformation_plan_task_201]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:10:55.828331 #2187:10712e0] INFO -- : Q-task_id([service_template_transformation_plan_task_202]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:11:17.774265 #2179:106eb1c] INFO -- : Q-task_id([service_template_transformation_plan_task_203]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:11:22.857803 #2187:10712e0] INFO -- : Q-task_id([service_template_transformation_plan_task_204]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:11:44.905029 #2179:106eb1c] INFO -- : Q-task_id([service_template_transformation_plan_task_205]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:11:50.065942 #2187:10712e0] INFO -- : Q-task_id([service_template_transformation_plan_task_206]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:28:41.082774 #2187:507600c] INFO -- : Q-task_id([service_template_transformation_plan_task_227]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:28:41.816563 #2179:5680a74] INFO -- : Q-task_id([service_template_transformation_plan_task_228]) <AEMethod acquiretransformationhost> Transformation Host: b01-h17-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:29:09.849669 #2187:10712e0] INFO -- : Q-task_id([service_template_transformation_plan_task_229]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:29:14.911800 #2179:106efcc] INFO -- : Q-task_id([service_template_transformation_plan_task_230]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:29:36.875056 #2187:10713f8] INFO -- : Q-task_id([service_template_transformation_plan_task_231]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:29:42.857836 #2179:106efe0] INFO -- : Q-task_id([service_template_transformation_plan_task_232]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:30:05.631546 #2187:10712e0] INFO -- : Q-task_id([service_template_transformation_plan_task_233]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:30:11.390289 #2179:106efe0] INFO -- : Q-task_id([service_template_transformation_plan_task_234]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:30:33.515944 #2187:10712e0] INFO -- : Q-task_id([service_template_transformation_plan_task_235]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:30:39.461398 #2179:106ee8c] INFO -- : Q-task_id([service_template_transformation_plan_task_236]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:31:01.534685 #2187:10713f8] INFO -- : Q-task_id([service_template_transformation_plan_task_237]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:31:07.317003 #2179:106efe0] INFO -- : Q-task_id([service_template_transformation_plan_task_238]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:31:29.746206 #2187:10712e0] INFO -- : Q-task_id([service_template_transformation_plan_task_239]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:31:35.981348 #2179:106efe0] INFO -- : Q-task_id([service_template_transformation_plan_task_240]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:31:58.043836 #2187:10713f8] INFO -- : Q-task_id([service_template_transformation_plan_task_241]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:32:03.995541 #2179:106efe0] INFO -- : Q-task_id([service_template_transformation_plan_task_242]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:32:25.947143 #2187:10713f8] INFO -- : Q-task_id([service_template_transformation_plan_task_243]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:32:32.062706 #2179:106efe0] INFO -- : Q-task_id([service_template_transformation_plan_task_244]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:32:53.725072 #2187:454e97c] INFO -- : Q-task_id([service_template_transformation_plan_task_245]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:32:59.953511 #2179:106ee8c] INFO -- : Q-task_id([service_template_transformation_plan_task_246]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:40:41.989470 #2187:4fd4a18] INFO -- : Q-task_id([service_template_transformation_plan_task_267]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:40:42.402620 #2179:5ca5ddc] INFO -- : Q-task_id([service_template_transformation_plan_task_268]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:41:15.132479 #2187:421a56c] INFO -- : Q-task_id([service_template_transformation_plan_task_269]) <AEMethod acquiretransformationhost> Transformation Host: b01-h17-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:41:15.632362 #2179:4fa018c] INFO -- : Q-task_id([service_template_transformation_plan_task_270]) <AEMethod acquiretransformationhost> Transformation Host: b01-h17-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:41:48.415274 #2187:3b0c568] INFO -- : Q-task_id([service_template_transformation_plan_task_271]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:41:48.777358 #2179:4f95958] INFO -- : Q-task_id([service_template_transformation_plan_task_272]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:42:21.237464 #2179:106efe0] INFO -- : Q-task_id([service_template_transformation_plan_task_273]) <AEMethod acquiretransformationhost> Transformation Host: b01-h17-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:42:21.752712 #2187:45cdb00] INFO -- : Q-task_id([service_template_transformation_plan_task_274]) <AEMethod acquiretransformationhost> Transformation Host: b01-h17-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:42:54.182562 #2179:509d224] INFO -- : Q-task_id([service_template_transformation_plan_task_275]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T16:42:54.918697 #2187:4503d8c] INFO -- : Q-task_id([service_template_transformation_plan_task_276]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T17:18:37.563996 #2179:59e1718] INFO -- : Q-task_id([service_template_transformation_plan_task_277]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T17:18:05.650024 #2179:5beed80] INFO -- : Q-task_id([service_template_transformation_plan_task_278]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T17:20:28.677262 #56714:5e7b6d4] INFO -- : Q-task_id([service_template_transformation_plan_task_279]) <AEMethod acquiretransformationhost> Transformation Host: b01-h17-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T17:15:47.404147 #2187:5befb40] INFO -- : Q-task_id([service_template_transformation_plan_task_280]) <AEMethod acquiretransformationhost> Transformation Host: b01-h17-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T17:18:54.840479 #56714:5704c5c] INFO -- : Q-task_id([service_template_transformation_plan_task_281]) <AEMethod acquiretransformationhost> Transformation Host: b01-h17-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T17:20:56.158912 #2179:475d538] INFO -- : Q-task_id([service_template_transformation_plan_task_282]) <AEMethod acquiretransformationhost> Transformation Host: b01-h17-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T17:50:23.023113 #2179:3ad4960] INFO -- : Q-task_id([service_template_transformation_plan_task_283]) <AEMethod acquiretransformationhost> Transformation Host: b01-h17-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T17:16:48.977591 #2179:45171fc] INFO -- : Q-task_id([service_template_transformation_plan_task_284]) <AEMethod acquiretransformationhost> Transformation Host: b02-h23-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T17:17:10.107579 #56714:56dacf4] INFO -- : Q-task_id([service_template_transformation_plan_task_285]) <AEMethod acquiretransformationhost> Transformation Host: b01-h17-r620.rhev.openstack.engineering.redhat.com. [----] I, [2018-08-07T17:50:53.983058 #56714:5463084] INFO -- : Q-task_id([service_template_transformation_plan_task_286]) <AEMethod acquiretransformationhost> Transformation Host: b01-h17-r620.rhev.openstack.engineering.redhat.com.
Created attachment 1474374 [details] evm and automation logs and time of wrapper calling virt-v2v tool Also included a CSV file with running times of virt-v2v tool on the conversion hosts, taken from the wrapper logs.
@Fabien, any updates on this?
PR https://github.com/ManageIQ/manageiq-content/pull/395
Seems to be working as expected on: CFME 5.9.4.4 RHV 4.2.5.3-0.1.el7ev when running a plan with 40 VMs on 4 migration hosts. Before verifying - I have other two options that I didn't checked yet, @Fabien, maybe you can answer this, and I wonder if those be included in this bug, or in a new RFE/bug. 1. Does the logic takes into consideration CPU or memory usage of the target conversion hosts? 2. I know this one is quite complex and depends on various things, but, does the logic takes into consideration VM disk size? (which can affect conversion time). For example: if you want to convert 4 VMs of 10GB and 1 VM of 1TB, it makes sense to run 3 on one host, and 1 on the second host, assuming both hosts have more or less the same specs and network bandwidth.
@Mor, I don't think we should add these to this bug, as the behavior is as expected. The current balancing algorithm is pretty naive, but has proven sufficient in previous migration projects. More advanced use cases are under design at the moment, and the main item we consider is I/O and network bandwidth, both probably addressed using cgroups. Checking memory and CPU is a good idea too and we will consider it.
Verified: CFME 5.9.4.4 RHV 4.2.5.3-0.1.el7ev