VMware {code} Community
vab
Contributor
Contributor
Jump to solution

Advanced transport modes

Hi,

I have installed the latest 1.1.1 version of VDDK and written a sample program which initializes the vixDiskLib using vixDiskLib_InitEx and then calls vixDiskLib_ListTransportModes. But I only get nbd, file, nbdssl as the supported modes. I do not get the other advanced modes.

Am I right to understand that the call to vixDiskLib_ListTransportModes will list the modes supported by the version of the vixDiskLib that has been initialized by vixDiskLib_InitEx?

Thanks.

0 Kudos
1 Solution

Accepted Solutions
red0mark
Enthusiast
Enthusiast
Jump to solution

We finally have this working... you need to add the libDir path to VixDiskLib_InitEx() using NULL will not work.

VixDiskLib_InitEx(1, 1, vddksdkLog, vddksdkWarn, vddksdkPanic, "C:\VMware\VMware Virtual Disk Development Kit", "config.vddk:");

Once you do this you should see a a bunch of output like this... to stop remove this you need a vddk config file with the option

vixDiskLib.transport.LogLevel = "2"

Current working directory: C:\VMware\

VMware Virtual Disk Development Kit\bin

Requesting hotadd transport method

Using system libcrypto, version 9070

AF

Vmacore::InitSSL: doVersionCheck = tr

ue, handshakeTimeoutUs = 20000000

SSLVerifyCertAgainstSystemStore:

Subject mismatch: localhost.localdomain vs 192.168.0.3

SSLVerifyCertAgainstSystemStore:

The remote host certificate has these problems:

  • The host name used for the connection does not match the subject name on the h

ost certificate

  • The host certificate chain is not complete.

-Ron

View solution in original post

0 Kudos
14 Replies
red0mark
Enthusiast
Enthusiast
Jump to solution

We are able to get the san mode working but no luck with hotadd. Are there any special setup instructions needed to get hotadd working on a VDDK application/proxy machine.

Thanks,

-Ron

0 Kudos
vab
Contributor
Contributor
Jump to solution

Ron,

Since you were able to get the san mode working, can you pls let me know if you get san as one of the supported modes if you just use the following sequence of APIs:

vixDiskLib_InitEx(1, 1, .....)

vixDiskLib_ListTransportModes()

I never get san (or even hotadd for that case) as a supported mode from a call to vixDiskLib_ListTransportModes(), and what I want to know is whether the support for these modes depends on the version of the VDDK in use (though if we don't have the required san setup, we may not be able to create a san-based connection to a virtual disk).

Thanks.

0 Kudos
red0mark
Enthusiast
Enthusiast
Jump to solution

I've ask our test group to take a new run with tracing on to get the supported modes printed out, maybe I was wrong on the SAN.

I was able to use VCB and the guestvm(VCB-HELPER) system to produce a HotAdd connection ( See this doc... http://www.vmware.com/pdf/vsphere4/r40/vsp_vcb_15_u1_admin_guide.pdf) but this didn't help my VDDK application. Maybe there is a document that describes how to configure HotAdd with the VDDK?

0 Kudos
rahqa
VMware Employee
VMware Employee
Jump to solution

Only information seen AFAIK is at http://www.vmware.com/support/developer/vddk/vddk11_api_programming.pdf

Page number : 38.

0 Kudos
Lakshmi_Gayatri
Enthusiast
Enthusiast
Jump to solution

can you please try with vixdisklibsample.exe? This can print the available trasnport modes.

C:\>vixDiskLibSample.exe -host <host> -user <userid> -password <password> -info -vm "<VMXSPEC>" "<VMDKPATH>"

0 Kudos
vab
Contributor
Contributor
Jump to solution

Thanks, Lakshmi. I tried the sample app, but got the same response.

The Licensing section on Page 42 of the Virtual Disk API Programming Guide says "The advanced transport license for VDDK includes all transport types.". Again, om Page 37, it says "This file transport method is built into the virtual disk library, so it is always available."

So I am wondering what this "advanced transport license for VDDK" is and how do I get it and whether its absence is causing the issue. BTW, I am using an ESX 3.x host for my tests.

0 Kudos
red0mark
Enthusiast
Enthusiast
Jump to solution

We finally have this working... you need to add the libDir path to VixDiskLib_InitEx() using NULL will not work.

VixDiskLib_InitEx(1, 1, vddksdkLog, vddksdkWarn, vddksdkPanic, "C:\VMware\VMware Virtual Disk Development Kit", "config.vddk:");

Once you do this you should see a a bunch of output like this... to stop remove this you need a vddk config file with the option

vixDiskLib.transport.LogLevel = "2"

Current working directory: C:\VMware\

VMware Virtual Disk Development Kit\bin

Requesting hotadd transport method

Using system libcrypto, version 9070

AF

Vmacore::InitSSL: doVersionCheck = tr

ue, handshakeTimeoutUs = 20000000

SSLVerifyCertAgainstSystemStore:

Subject mismatch: localhost.localdomain vs 192.168.0.3

SSLVerifyCertAgainstSystemStore:

The remote host certificate has these problems:

  • The host name used for the connection does not match the subject name on the h

ost certificate

  • The host certificate chain is not complete.

-Ron

0 Kudos
gaya3kl
Contributor
Contributor
Jump to solution

the libdir should be in the PATH and then it will be used by VDDK IntEx.

So if you are using windows, then set the LD_LIBRARY_PATH.

Please refer to Page 14 in the VDDK programming guide.

0 Kudos
vab
Contributor
Contributor
Jump to solution

Thanks, Ron. Your comments were very helpful. It works for me now. (BTW, what other options can be specified in the config file?)

Cheers.

0 Kudos
gaya3kl
Contributor
Contributor
Jump to solution

You can have:

tmpDirectory = "<TempDirectoryForLogging>"

vixDiskLib.transport.LogLevel = "<logLevel>" (the default <logLevel> is 6)

vixDiskLib.nfc.RequestTimeoutMs = "<NfcRequestTimeoutInMilliseconds>"

vixDiskLib.nfc.ReadTimeoutMs = "<NfcReadTimeoutInMilliseconds>"

vixDiskLib.nfc.WriteTimeoutMs = "<NfcWriteTimeoutInMilliseconds>"

vab
Contributor
Contributor
Jump to solution

Thanks, gaya3kl.

0 Kudos
hubs
Contributor
Contributor
Jump to solution

It looks like it requires libexpat.so.0 but it is not part of the libraries distributed with the VDDK. Why ?

Did you guys have that library on your system ?

I had to install it ...

0 Kudos
red0mark
Enthusiast
Enthusiast
Jump to solution

We were testing on Windows so the library was not a factor.

0 Kudos
tos2k
Expert
Expert
Jump to solution

Which linux distro did/do you use?

Tos2k

0 Kudos