Highlighted
Contributor
Contributor

speed difference import-vapp between PowerCLI 6.5 and PowerCLI 11.3

Hi,

When importing an ovf with powercli we see a speed difference between powercli 6.5 and 11.3

In 6.5 we have a speed of 300 Mbps +

in 11.3 we top out at 60 Mbps

And colleagues of mine experienced also timeout error.

We need to go to version 11.3, but this is giving us issues in our deployment process.

Any ideas ?

We are going to test it with the latest powercli version.

Please consider marking this answer "CORRECT" or "Helpful" if you think your question have been answered correctly.
0 Kudos
10 Replies
Highlighted
User Moderator
User Moderator

Is this against the same vSphere version?
What speed do you get when using the ovftool?

Can you try with the API method directly? See Re: Import-VApp Times Out When Run With -RunAsync Parameter


Blog: lucd.info  Twitter: @LucD22  Co-author PowerCLI Reference

0 Kudos
Highlighted
Contributor
Contributor

Hi LucD,

Yes this is against the same vSphere version.

It is a single esxi host, running 6.0 Update 3 build 10719132 (due to hardware limitations we cannot run higher than 6.0)

Because of a deadline we have a shortterm solution.

In the powershell session where we need PowerCLI 11, we load powerCLI 11 explicitly.

Other sessions use the powerCLI 6.5 (by default)

When we have this working, we are focusing on what the bottleneck is with PowrCLI 11

Maybe implement your suggestion as a custom function.

Is it possible, as a workaround to load powercli 11 next to 6.5 ?

Please consider marking this answer "CORRECT" or "Helpful" if you think your question have been answered correctly.
0 Kudos
Highlighted
User Moderator
User Moderator

I'm afraid you can't load different versions of the same module(s) side-by-side.
You could run part of the script as a background job (Start-Job), in which you then explicitly load the desired module version.


Blog: lucd.info  Twitter: @LucD22  Co-author PowerCLI Reference

0 Kudos
Highlighted
Contributor
Contributor

Ok.

Thanks for the clarification.

An alternative is what you suggest.

By default not loading powercli.

And only load it in the script when needed.

Please consider marking this answer "CORRECT" or "Helpful" if you think your question have been answered correctly.
0 Kudos
Highlighted
Contributor
Contributor

So,

The shortterm workaround is working.

I now had time to use OVFtool

It is going full speed, 300 Mbps

Please consider marking this answer "CORRECT" or "Helpful" if you think your question have been answered correctly.
0 Kudos
Highlighted
User Moderator
User Moderator

Did you also try with the script where the API methods are used directly?
That could indicate if it is a PowerCLI issue or not.


Blog: lucd.info  Twitter: @LucD22  Co-author PowerCLI Reference

0 Kudos
Highlighted
Contributor
Contributor

The script version is giving me errors
Going to try tomorrow again.

I can't copy paste it, so maybe I made a typo

But I'm going to test it again tomorrow.

Thank you for your response.

Please consider marking this answer "CORRECT" or "Helpful" if you think your question have been answered correctly.
0 Kudos
Highlighted
Contributor
Contributor

I'm executing your script but get the error

Exception calling write with 3 arguments

I've found a link about this error PowerShell Open Source - Compress-Archive not working. · Issue #2990 · PowerShell/PowerShell · GitHu...

Not sure if this is my issue at the moment.

This is with a ovf of 4.8 GB, But also tried it with a ovf of 1 GB, but i keep getting the same error.

Difference with the original script is

- no vCenter, but only esxi, replaced $cluster with $vmhost  and the following line
     $ispec=$ovfMgr.CreateImportSpec($ovfDescriptor,$rp.extensiondata.moref,$ds.extensiondata.moref,$cisp)

- the url has an asterisk instead of the vmhost addres.... so I changed

  $url = $device.url with

  $url = $device.url.replace("*",$vmhost.name)

Powershell version 5.1.14009.1012

Windows server 2012 R2

ESXi 6.0.0 Update 3

Please consider marking this answer "CORRECT" or "Helpful" if you think your question have been answered correctly.
0 Kudos
Highlighted
User Moderator
User Moderator

When you are connected to an ESXi node instead of a vCenter, you get the asterisk.

I only discovered this recently and had to update my Invoke-VMScriptPlus function for that.

You could use the same test and alternate code for this script.


I don't think that the error is related to that issue in the link you included.
I'll do some testing while connected to an ESXi node.


Btw, are you using an OVF or an OVA?

An OVF is normally a collection of files, while an OVA is a single, compressed file.


Blog: lucd.info  Twitter: @LucD22  Co-author PowerCLI Reference

0 Kudos
Highlighted
Contributor
Contributor

We are using ovf. (collection of files)

Please consider marking this answer "CORRECT" or "Helpful" if you think your question have been answered correctly.
0 Kudos