Take the 2-minute tour ×
Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

On wmware Esxi host, I have the following VMs: vm1 - windows server vm2 - linux

I want the vm1 and vm2 to be able to store their database files in a folder "DataDB".

like this:

/WinServer2008

/SU11

/DataDB

/SourceControl

Anyone knows how to do this?

share|improve this question
    
Maybe you should clarify what you really want to do, because the VMs cannot store any files directly on the data store. Only virtual disks are possible, but (like chopper3 said) they can't be shared without additional overhead. –  touchstone Jan 31 '10 at 21:00
    
Do the VMs need to share the database files? If so do they need concurrent access? Or are you simply trying to put all your DB files in one place that has storage space and perhaps easy backup tracking? –  Shannon Nelson Feb 1 '10 at 9:09

5 Answers 5

Although two or VMs can have a single .vmdk assigned as a virtual disk these are presented as SCSI disks and therefore all VMs seeing a single virtual disk would need to use a common clustered file system to manage the virtual disk or enormous data corruption would occur.

I am not aware of any common clustered files systems that allow for both Windows and Linux OSs/VMs to interoperate.

One option you have is to present the disk to a single Windows VM then to have that VM share the disk our using CIFS/SMB and have the Linux VM mount that. Obviously this would be file-level share only.

If I can find a trustworthy common cluster file system that is appropriate I'll update my answer but I'm not hopeful.

share|improve this answer
1  
+1. "Enormous data corruption" is simply great. –  Massimo Jan 31 '10 at 17:47
    
Does ESXi really allow to simultaneously run two VMs with the same single .vmdk? Does not ESXi lock .vmdk files? –  pabouk Sep 7 '13 at 6:45
1  
@pabouk - yes, that's actually the way vmw recommend you do single-host MSCS clustering's quorum and MSDTC disks. –  Chopper3 Sep 7 '13 at 8:01

Think about gfs... http://en.wikipedia.org/wiki/Global_File_System

share|improve this answer
    
linux only isn't it? –  Chopper3 Jan 31 '10 at 16:22

There is no way to get multiple Windows system's to have [concurrent] native access using NTFS (or one of the FATs) to the same block storage device which is what you are looking for here. It doesn't matter if the underlying device is a VMware vmdk in an ESX\ESXi datastore or a SCSI LUN on a shared SCSI bus or SAN. There is limited support for concurrent access with Hyper-V R2 using CSV volumes but this is only for the purpose of hosting Hyper-V VM files. You may be able to present the same device to two Windows systems simultaneously but if you do then at best you will get access to the device blocked on one system and at worst data corruption. The problem gets even more unlikely to have a solution when you are mixing Operating Systems in the guests, as you require.

The best way to do this natively is to share the specific volume out in one VM (from within Windows or Linux) and map that volume in the other VM. Alternatively you may be able to connect both systems to a NAS that can provide concurrent access to both VM's. However you will still need to be certain that the applications you are using can adequately handle concurrent access to the specific data in question.

share|improve this answer

I see two possibilies here, for system vm-win and system vm-linx. Both will have challenges with at least file/directory permissions issues.

1) Make the data resident on system vm-linx. NFS export the data directory on System vm-linx. On system vm-win, do an NFS mount of the data directory. I believe that Microsoft provides a FREE windows NFS mount client.

2) Configure the SAMBA package on vm-linx. Make the data resident on vm-win. Mount the data directory on vm-linx using a SAMBA mount.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.