VMware Cloud Community
Virtually
Enthusiast
Enthusiast

Linux ISO image creation might be failing

Source - Standalone VMX VMs

Target - ESXi

Description of issue:

Although converting a base SuSE 11 VM worked, a Production SuSE VM running a Web application is failing without generating a vmware-converter logfile.

Visually, it looks like the converter performs some superficial checks based largely on the VMX file, then should proceed to create an image of the VMDK file before then transferring the file to the Target machine (I assume that conversion to the target format is done while creating the initial image).

Task Progress says

Creating target virtual machine...

Cloning disk 0...

Error: Unknown error returned by VMware Converter Agent

The source VMDK has just been shrunk using vmware-vdiskmanager

The source VM boots up fine in VMware Workstation 6.5 but displays a warning that it wants to upgrade the v5.5.7 VM.

Any thoughts?

TIA.

Tags (1)
0 Kudos
12 Replies
IamTHEvilONE
Immortal
Immortal

Can you provide the VMware-Converter-#.log from the failed conversion, and the vmx file of the virtual machine you are trying to clone?

Please use the attach feature to put them on your post.

Cheers,


EvilOne

1 - Check the documents

2 - Search the forums

3 - Post Question

And remember to award points to those who assist you.

0 Kudos
Virtually
Enthusiast
Enthusiast

As noted, no vmware-converter log exists for the operation (logs exist for previous operations).

Am curious also why the vmware converter seems to want to be so sensitive to VMX configurations if the image is created using bit-level, my impression is that images created that way in general should be possible without regard to the contents of the disk.

This is the VMX file, have fiddled with minor changes like changing the OS type but little more

.encoding = "windows-1252" config.version = "8" virtualHW.version = "4" scsi0.present = "TRUE" memsize = "512" MemAllowAutoScaleDown = "FALSE" scsi0:0.present = "TRUE" scsi0:0.fileName = "SUSE Linux-cl2.vmdk" ide1:0.present = "TRUE" ide1:0.fileName = "E:\ISO\openSUSE-11.0-DVD-i386-iso\openSUSE-11.0-DVD-i386.iso" ide1:0.deviceType = "cdrom-image" floppy0.present = "FALSE" ethernet0.present = "TRUE" ethernet0.connectionType = "nat" usb.present = "TRUE" sound.present = "TRUE" sound.virtualDev = "es1371" sound.fileName = "-1" sound.autodetect = "TRUE" displayName = "GWK521_SuSE" guestOS = "sles10" nvram = "SUSE Linux.nvram"

scsi0:0.redo = "" ethernet0.addressType = "generated" uuid.location = "56 4d 0e 2d 78 db 7e 02-5e 48 8c 0d 7c 09 ad fb" uuid.bios = "56 4d 70 73 46 62 39 59-8d fd 1f 90 37 22 b1 c5" ethernet0.generatedAddress = "00:0c:29:22:b1:c5" ethernet0.generatedAddressOffset = "0"

checkpoint.vmState = ""

ide1:0.startConnected = "FALSE"

tools.syncTime = "FALSE"

extendedConfigFile = "SUSE Linux.vmxf"

virtualHW.productCompatibility = "hosted" tools.upgrade.policy = "manual"

vmotion.checkpointFBSize = "16777216"

sound.startConnected = "FALSE"

0 Kudos
IamTHEvilONE
Immortal
Immortal

Any recent version of converter will always produce a log file, it's just that the location of said log file may vary depending on edition and situation. That being said, if you are using the StandAlone VMware Converter, then use the "Export Logs" option from the file menu.

the VMDK looks to be ESX complaint as it stands right now, since it came from workstation 5.5.x. If you upload the VMDK to ESX, you could use VMKFSTOOLS -i to convert the disk into the correct format for ESX to use. refer to:

http://kb.vmware.com/kb/900/

I'm not sure how much of that will apply when using ESXi because of the interface changes.



EvilOne

1 - Check the documents

2 - Search the forums

3 - Post Question

And remember to award points to those who assist you.

0 Kudos
Virtually
Enthusiast
Enthusiast

OK, I'll take a look at that.

In the meantime, I located the relevant logfile using the "export logfiles" you suggested

Could the following line in the logifle be critical?

System libeay32.dll library is older than our library (90709F < 9070AF)

0 Kudos
IamTHEvilONE
Immortal
Immortal

Unfortunately, that log is blank Smiley Sad If there was an attempted conversion it would have jobs listed in it. A job is a line that starts with a \[ # 1 ] for a first job.

If you can post the zip file itself, I can sort through it. Otherwise, get the one that was modified around the time of the conversion itself and it should be o bit over 30k in size.

>System libeay32.dll library is older than our library (90709F < 9070AF)

all this means is that we will use an internally provided file.

EvilOne

1 - Check the documents

2 - Search the forums

3 - Post Question

And remember to award points to those who assist you.

0 Kudos
Virtually
Enthusiast
Enthusiast

I thnk I accidentally uploaded the file with restrictive permissions intact. Let's try this one.

0 Kudos
continuum
Immortal
Immortal

May I ask why you waste any time with converter ?

Your guest already uses a scsi-disk so simply use vmware-vdiskmanager and convert the

"SUSE Linux-cl2.vmdk" into monolithicFlat format and upload that vmdk via Fastscp to your ESX.

Create new VM and add existing disk.

___________________________________

description of vmx-parameters:

VMware-liveCD:


________________________________________________
Do you need support with a VMFS recovery problem ? - send a message via skype "sanbarrow"
I do not support Workstation 16 at this time ...

0 Kudos
IamTHEvilONE
Immortal
Immortal

Ulli,

To quote myself in my second response:

>the VMDK looks to be ESX complaint as it stands right now, since it came from workstation 5.5.x. If you upload the VMDK to ESX, you could use VMKFSTOOLS -i to convert the disk into the correct format for ESX to use. refer to:

>http://kb.vmware.com/kb/900/

As far as i know, vdiskmanager doesn't go between formats (ESX vs Workstation/Server). VMKFSTOOLS is needed. If you can elaborate on the syntax for vmware-vdiskmanager to switch between formats, I would be happy to update our documentation.


EvilOne

1 - Check the documents

2 - Search the forums

3 - Post Question

And remember to award points to those who assist you.

0 Kudos
continuum
Immortal
Immortal

vmkfs-tools are NOT required

convert to monolithicFlat with vmware-vdiskmanager

then read

or even simpler - use

this tool I made against the *-flat.vmdk.

Then you upload the descriptor and the flat.vmdk and attach them to a new VM.

&gt; I would be happy to update our documentation.

I don't know how it comes that so many folks use Converter for tasks where it will be no help ... ???

___________________________________

description of vmx-parameters:

VMware-liveCD:


________________________________________________
Do you need support with a VMFS recovery problem ? - send a message via skype "sanbarrow"
I do not support Workstation 16 at this time ...

0 Kudos
Virtually
Enthusiast
Enthusiast

Thx guys. In any case, I'm finding it hard to locate a download link for VMKFSTOOLS. I think I used it a long time ago to do a disk operation of some sort but I can't locate a current link.

I've already gotten a start on using vmware-vdiskmanager and I think I located my problem. Yes, according to the inline documentation there is a -r switch in combination with a specified conversion type and there is an option for ESX (number 4). Also, and it was something I was wondering about before, it looks like when the image is created even at a bit level the image is &lt;not&gt; streamed to the target device so an undocumented disk requirement is that you &lt;must&gt; have sufficient disk space to hold the temporary image before uploading (and I'm still looking for where the temporary image is stored).

This requirement is further exacerbated since an ESX type disk does not support "growable" disks... So, if the current "growable" disk is only 4gb but the full disk size might be.. say, 48gb... Then you need to have &gt;48gb free disk space as well as 48gb on your target machine.

So, vmware converter seems to be sorely lacking in trapping errors... It just quits when at least this situation occurs without explanation.

Will continue working at this, when I get a full solution I'll post the results.

0 Kudos
continuum
Immortal
Immortal

No need to download vmkfs-tools - they come with ESX itself and must be used on ESX.

___________________________________

description of vmx-parameters:

VMware-liveCD:


________________________________________________
Do you need support with a VMFS recovery problem ? - send a message via skype "sanbarrow"
I do not support Workstation 16 at this time ...

0 Kudos
Virtually
Enthusiast
Enthusiast

Well,

I think I've finally addressed the major issues and am now on the final steps, transferring the file. Boy, what a lot of headaches if the vmware converter doesn't work, and although I haven't analyzed conclusively why that didn't work the circumstantial evidence to this point indicates it's because the temporary image is created on the same partition (maybe even the same directory) of the application. That really sucks because typically I care less about reserving enormous amounts of free disk space where my applications are installed and usually reserve more where data is stored. This is more of a concern the larger the diskfile is. Also, re-configuring the OS temp files (on Windows TEMP and TMP) has no effect... The temporary image is not stored there.

So, since vmware converter isn't working for me and I haven't yet located vmkfstools (I think it might be part of the main ESX install and part of the RCLI package), I instead am using the following strategy

  • Convert the VMDK growable file to an ESX compatible flat disk file

  • Copy the file from the source machine to the ESXi datastore.

This procedure is actually quite involved because ESXi has all sorts of access and services turned off, and it took me awhile to determine what the environmental requirements were to run vmware-vdiskmanager (which is included in Workstation). This procedure completely sidesteps any free space requirements on the partition where vmware converter and vmware workstation are installed, you only need to be certain of sufficient free space requirements where you actually create disks.

1. Converting the diskfile to be ESX compatible

  • Open a command prompt and navigate to the Workstation root directory. You can run "vmware-vdiskmanager /?" to see what your switch options are. I found that when source and target paths are not defined then the default is the Workstation root directory. The proper command to convert to an ESX compatible file is

vmware-vdiskmanager -r full sourcepath to sourcefile -t 4 full targetpath with new targetfilename

Remember that if you're converting a growable file you need free space that exceeds the fully grown diskfile. It also looks like the process first creates a fully grown but empty file, then fills the empty file with file contents.

2. Before you actually copy/transfer your disk file, I highly recommend you create an empty VM on ESXi first...

Follow the usual steps but don't configure a diskfile. You can point this machine to a diskfile later. Because you can't specify a directory for your VM when you create it, it's best to allow ESXi to create the VM directory structure &lt;before&gt; you copy your file.

3. Copying the file

A major administrative problem with ESXi is that the GUI console is woefully inadequate and no normal "Internet" applications to access the machine remotely are enabled. I'm not sure what method VMware Converter and Infrastructure Client are using, but it's not the usual methods like SSH, SCP, FTP, TELNET, etc. So, this is what needs to be done...

  • Gain access to the command line console to enable necessary services* At the ESXi default console, press ALT-F1, then type "unsupported" -- After providing root credentials, you will have access to the console* Enable SSH (for remote access) and SCP (for file transfers. I also tried FTP but it doesn't work)* Open with vi /etc/inetd.conf* uncomment out (remove the # sign) from the beginning of lines for SSH and SCP* Since restarting services is insufficient, restart ESXI by exiting command line (ALT-F2), then accessing Shutdown/Restart (F12)* If you're running Windows, install WinSCP, configure to connect to the target using SCP and configure your source directory. Highly recommended is to also configure your target directory (this is where SSH comes in handy and Putty is a good Windows SSH client) your target directory will be a subdirectory of the /vmfs/ directory on ESXi

Whew! That's a heck of a lot of work to do what should really be pretty simple (or so I would think) Converting and transferring these very large files also takes a very long time, depending on your disk subsystems and network bandwidth it can take a very long time. I'm doing this running ESXi in Workstation 6.5, and it'll likely take over 5 hrs to complete a 16GB conversion and transfer even without explorations and experimentations.

References

Enabling SSH

0 Kudos