Installing VMware Server on unRAID Box


Recommended Posts

Thanx musicmann for the great guide you provided.

With your great guide, i could do it.

 

If (when) I upgrade the unRAID, i know i will have to upgrade as well the vmware package to match the new kernel.

Here is my question : when i'll install the onetime package, will it erase all files and folders and with them my virtual machines or will it only replace the vmware files ?

 

Link to comment
  • Replies 333
  • Created
  • Last Reply

Top Posters In This Topic

@juliperman - Unfortunately, I really don't know.  I assume the new package would just overwrite any files that already exist but leave intack files that do not conflict.  I only assume this based on the fact that numerous packages install software into existing directories without affecting what was previously there.  But because of this unknown, I have my VMs in a directory outside of my one-time install directory.  That way, I can make an update, and pretty much the only thing I might lose are the power settings (like auto-startup, auto-shutdown) for my machines.

Link to comment

well, after some tests, i can say that reinstalling the VMware doesn't delete the VM from the virtualmachine's folder.

So, not a worry. :)

 

Can someone point me to a 2.6.28.4 kernel for slackware (tgz) because mirrors.easynews doesn't seems to have them (slack 12.2 = 2.6.27.7 & slack 13.0 or current = 2.6.29.6 in txz not tgz actualy).

That way, i'll be able to use VMware with unRAID 4.5.beta-4 witch works great for me.

:)

Link to comment

A little info for those of us with multi-core systems:

 

I had been fighting a problem with VMware hogging the 1st CPU of my Quad core system, which is the same core unRAID and SMB have also been using.  So if I was running a single VM with only 1 CPU enabled on the VM, the other 3 cores of the CPU were sitting idle 24/7 and I was not getting the full processing power of the single core for the VM.

 

It turns out there is a setting in the VMX file of the Virtual Machine that allows you to dictate which core should be used for processing.  i.e. setting affinity for the process.  Just add the following lines to your VMX file to enable it:

 

processor0.use = "FALSE"

processor1.use = "TRUE"

processor2.use = "FALSE"

processor3.use = "FALSE"

 

This will force Core 2 to be used for the VM instead of Core 1.  If you have multiple CPU's enabled for the VM, just change the FALSE's to TRUE's for where you want the VM to run on.  I tested this with one of the VM's I have using the "top" command in Linux and was able to verify the vmware process was using 100% of a CPU and SMB/unRAID were using some % of another one - something I had not seen previously.

 

Now, my question - Is there a Linux command that I can see the CPU utilization by processor?  The top command seems to just give me a total overall view.

 

 

Link to comment

The top command seems to just give me a total overall view.

 

Press the 1 key and it will show per processor utilization.

There is also another tool called htop which can show the top stats in a different way.

It does not come with unRAID. If you have a dev environment you can compile the source and install it.

Link to comment

Press the 1 key and it will show per processor utilization.

There is also another tool called htop which can show the top stats in a different way.

It does not come with unRAID. If you have a dev environment you can compile the source and install it.

 

That works perfect, thanks WeeboTech!

Link to comment

@ftp222 - Does it confirm that your VMs are now using the designated processors?  Are you running multiple VMs in a way that you're seeing performance improvements from editing the vmx files?

 

Yes, I can confirm it does use the designated processors.  I set up a VM to use CPU's 1 and 3, then ran a stress on the VM.  You can see the CPU usage of the processors in the image below:

 

vmx.jpg

 

The other VM I have running on the system is not set to use a specific processor and it jumps between all CPU's randomly.  I need to restart that VM in order to set the VMX file correctly.  I believe I am seeing some improvement by running the system with specific CPU's, but cannot be 100% sure for another few days while I keep testing.  I'm curious to hear if others see an improvement too.

 

Link to comment

I'm slowly progressing through this (I had 30 minutes the other day to install slack 12.2, download the newer kernel, etc.)

 

Before I proceed, I wanted to ask if it would be better to install this on a Slack 13.0 system. I'm running 4.5-beta6 ?

 

Any big gotchas I need to consider?

 

Thanks,

KermitJr

Link to comment

I don't know if I'd say it would be better, but I am running unRaid 4.5b6 on a Slackware 13 system. I am not running vmWare yet. The md drivers and emHttp function fine. What I find nice with the slackware 13 system is having more up to date versions of the various programs running. It helped out a lot with the X11 drivers for the Intel HD video.

Link to comment

slack 13.0 is kernel 2.6.29.6

unraid 4.5-beta6 is kernel 2.6.29.1

there might be a kernel issue.

 

I run unraid 4.5beta4 (2.6.28.4) and i had to upgrade the slack 12.2 kernel (2.6.27.7) to be able to use vmware on my unraid server.

Otherwise, vmware couldn't start.

 

But can you downgrade ?

 

both kernel must match.

Link to comment

Yes. And as I have said multiple times, 2.6.29.6 works fine. I've been running it since the beginning when I was running under Slackware-Current before it was released as Slackware-13. That was at least 3 months ago. The only important fields that usually need to match are the first 3 digits. The last digit is the patch level -- bug fixes if you like.

Link to comment
  • 4 weeks later...

After an exhausting 2 days, I have VMware 2.0.2 running on unRAID 4.5beta7!  I ran into a few user issues (me), and a few technical problems too.  I did not do a whole step by step write-up that musicman did, but I do have a few links and tips for those looking to try and get it running:

 

1.  I used a VM to create the development environment.  I had to set the hard disk type to IDE (from SCSI) in the VM or I constantly got kernel panics when trying to boot to my unRAID 2.6.30.8 environment.  Once I moved to IDE, everything was smooth.

2.  For those unfamiliar with compiling a Linux kernel from source (I was!), I used the following URL as a guide - http://www.slackbasics.org/html/kernel.html - Don't be scared of compiling your own kernel, it really only takes an hour or so once you have the process down, but it can be confusing the first time.

3.  VMware Server 2.0.2 is out as of October 26th 2009.

4.  VMware Server 2.0.1 and 2.0.2 have problems compiling the vmmon drivers under a 2.6.30.x Kernel. - Here is a link to the thread in the VMware communities - http://communities.vmware.com/thread/215985?start=0&tstart=0

5.  I used this automated install script for VMware, which did all of the patching and launches the install - http://radu.cotescu.com/2009/10/30/how-to-install-vmware-server-2-0-x-on-ubuntu-9-10-karmic-koala/

6.  The makepkg program has changed in the later versions of slackware.  You must now run "makepkg /path/VMware-ONETIME.tgz" instead of "makepkg VMware-ONETIME.tgz" - i.e. you cannot create a package in the current directory, it must be a path to another directory.

 

I just got everything working in my test environment, so I will be rolling this into production tonight.  Hopefully everything goes smoothly.

 

Link to comment

Following up from my previous post.  I installed 4.5beta7 and VMware 2.0.2 on my production system and ran into a minor issue others may also see.  I have to call a sleep command between installing the VMware-REALTIME package and starting the service:

 

installpkg /boot/packages/VMware-server-2.0.2-REALTIME.tgz
sleep 15
rm -r /mnt/cache/.tmp
mv /tmp /mnt/cache/.tmp
ln -s /mnt/cache/.tmp /tmp
/etc/rc.d/init.d/vmware start

 

Other than this, everything else seems to be running fine.

 

Link to comment

Dumb question but since you have already compiled it for 4.5b7 couldn't you just share the compiled version via a torrent or rapidhsare or something so the rest of the community (or maybe just me  ;D) could simply download it and put it in /packages and run it via the go script?

 

I gues what I'm getting at is only one of us should have to go through the pain of compiling it - or do we need a new kernel as well? (since you mentioned having to compile the kernel)

Link to comment

Dumb question but since you have already compiled it for 4.5b7 couldn't you just share the compiled version via a torrent or rapidhsare or something so the rest of the community (or maybe just me  ;D) could simply download it and put it in /packages and run it via the go script?

 

I gues what I'm getting at is only one of us should have to go through the pain of compiling it - or do we need a new kernel as well? (since you mentioned having to compile the kernel)

I asked the same question when I first started this process.  Three things complicate this:

 

1.  There is a serial number that gets entered during the install process that is linked back to whoever downloaded the software.

2.  The EULA is agreed to during the installation process and must be accepted by the user.

3.  It might be possible to force the user to enter their own serial number and accept the EULA; however I am not clear on the redistribution rights of the software and how to go about getting VMware to allow this.

 

I'm pretty sure we could get around #1 and #2 by forcing some type of custom install, but the redistribution is what kills us.  I agree though, it would be great if we all did not have to go through the pain of this for every release when we all end up with the same package in the end.

 

Link to comment

Yikes.  I have issues. 

 

root@tower:/etc/rc.d/init.d# vmware start
VMware Server is installed, but it has not been (correctly) configured
for the running kernel. To (re-)configure it, invoke the
following command: /mnt/cache/.persistent/vmware/usr/bin/vmware-config.pl.

 

I got here because I had issues in a vista vm with the e1000 virtual nic.  I was mucking about with .vmx files trying to force vmxnet and each time i needed to reload the .vmx i'd do a vmware restart.  One of these restarts failed and upon reboot I was left with that error alone.

 

Since then I have removed the REALTIME installpkg from go.  restarted.  reinstalled ONETIME, reinstalled REALTIME but I get the same error.

 

Any ideas?

 

============

 

Problem solved.  I rm -fr /mnt/cache/vmware and reinstalled ONETIME and we're good.

Link to comment

VM Performance?  In general, performance of vm's seems inferior to what i'm used to when running windows guests on windows hosts.  Network performance, even from a file in the vm in a .vmdk to a separate physical spindle /mnt/cache is terrible.  It doesn't even appear to copy in O(n) time as throughput consistently nose dives.

 

core 2 duo E6300 @ 1.8ghz

4gb ram

 

virtual machine is:

1 vcpu forced to use the second core

2.5gb ram

virtual scsi adapter

3 vmdk files - virtual scsi.

hostonly nic

bridged nic

vmvware tools is running

 

I'm pretty sure, based on the modules loaded in config files, that Intel VT-x is being used.

 

I can try e1000 virtual nic but it didn't seem better in a vista VM that i had.

 

Copy a file over the network from unRaid to a physical win7 box over gigE copies data 30+ MB/sec.   

Copy a file over the network from a vm guest on the unrad host to same physical win7 box would be <1 MB/sec (and it'd keep decreasing it seems).

 

Any ideas?

 

 

Link to comment

VM Performance?  In general, performance of vm's seems inferior to what i'm used to when running windows guests on windows hosts.  Network performance, even from a file in the vm in a .vmdk to a separate physical spindle /mnt/cache is terrible.  It doesn't even appear to copy in O(n) time as throughput consistently nose dives.

 

core 2 duo E6300 @ 1.8ghz

4gb ram

 

virtual machine is:

1 vcpu forced to use the second core

2.5gb ram

virtual scsi adapter

3 vmdk files - virtual scsi.

hostonly nic

bridged nic

vmvware tools is running

 

I'm pretty sure, based on the modules loaded in config files, that Intel VT-x is being used.

 

I can try e1000 virtual nic but it didn't seem better in a vista VM that i had.

 

Copy a file over the network from unRaid to a physical win7 box over gigE copies data 30+ MB/sec.   

Copy a file over the network from a vm guest on the unrad host to same physical win7 box would be <1 MB/sec (and it'd keep decreasing it seems).

 

Any ideas?

First question - What version of unRAID are you using?

 

I never ran any tests while running 4.4.2, but performance seemed to run at around 8-10 MB/s while copying from a VM to the server, which was a little slower than copying from another system on the network to the server.  I upgraded to 4.5beta8 hoping to see a huge performance boost, but the effects were actually worse.  I now get 7-8 MB/s copying from a VM to a protected user share, versus 28-30 MB/s while copying from a physical system to a protected user share.

 

With that said, performance of 4.5beta8 with many smaller files while doing several simultaneous read/write streams, the performance is absolutely horrible - your 1 MB/s does not seem out of line with what I am seeing.  I am building a 4.5beta11 system currently as there are several Samba changes/fixes in beta11.  I am hoping to see a big performance improvement, but I won't know until tonight.  If performance is the same as beta8, I may drop back down to 4.4.2 again.

 

Also, try removing the affinity setting for the processor in the vmx file.  I have seen this drag down performance on certain VM's, while increasing performance on others.

 

Edit - I would be happy to see 10 MB/s within a VM, but this seems to be a very common problem with VMware Server.  I have been meaning to tweak the NIC settings, but haven't done so yet - http://arunpc.com/2008/03/01/vmware-server-increasing-speeds-of-vmnets/  Please let me know your results if you try it.  The consensus seems to be that VMware has decided to limit NIC performance on the VMware Server platform in the hopes of selling users on the ESX version.  I run several ESX 4.0 boxes at work and performance is through the roof compared to this version.

 

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.